Adam Brown
28059ba5af
Add the ability to load PEM certificate chain and private key files
...
This makes using certificates from Let's Encrypt much easier
2026-01-07 00:38:46 -08:00
Adam Brown
4554655345
Add client version check to about
2026-01-06 20:40:43 -08:00
Adam Brown
a3f9a87d5c
New Crowdin updates ( #449 )
...
* New translations strings_desktop.xml (German)
* New translations strings_project_navigation.xml (German)
* New translations strings_project_select_navigation.xml (German)
* New translations strings_projects_list.xml (German)
* New translations messages_en.properties (German)
* New translations strings_timeline.xml (German)
2026-01-06 20:37:27 -08:00
Adam Brown
ee38a2112e
New Crowdin updates ( #439 )
...
* New translations messages_en.properties (French)
* New translations messages_en.properties (Spanish)
* New translations messages_en.properties (German)
* New translations messages_en.properties (Italian)
* New translations messages_en.properties (Ukrainian)
* New translations messages_en.properties (Chinese Simplified)
* New translations strings.xml (French)
* New translations strings.xml (Spanish)
* New translations strings.xml (German)
* New translations strings.xml (Italian)
* New translations strings.xml (Ukrainian)
* New translations strings.xml (Chinese Simplified)
* New translations messages_en.properties (French)
* New translations messages_en.properties (Spanish)
* New translations messages_en.properties (German)
* New translations messages_en.properties (Italian)
* New translations messages_en.properties (Ukrainian)
* New translations messages_en.properties (Chinese Simplified)
* New translations strings.xml (French)
* New translations strings.xml (Spanish)
* New translations strings.xml (German)
* New translations strings.xml (Italian)
* New translations strings.xml (Ukrainian)
* New translations messages_en.properties (Portuguese, Brazilian)
* New translations strings.xml (Portuguese, Brazilian)
* New translations strings_about_app.xml (French)
* New translations strings_about_app.xml (Spanish)
* New translations strings_about_app.xml (German)
* New translations strings_about_app.xml (Italian)
* New translations strings_about_app.xml (Ukrainian)
* New translations strings_about_app.xml (Chinese Simplified)
* New translations strings_about_app.xml (Portuguese, Brazilian)
* New translations strings_account_settings.xml (French)
* New translations strings_account_settings.xml (Spanish)
* New translations strings_account_settings.xml (German)
* New translations strings_account_settings.xml (Italian)
* New translations strings_account_settings.xml (Ukrainian)
* New translations strings_account_settings.xml (Chinese Simplified)
* New translations strings_account_settings.xml (Portuguese, Brazilian)
* New translations strings_desktop.xml (French)
* New translations strings_desktop.xml (Spanish)
* New translations strings_desktop.xml (German)
* New translations strings_desktop.xml (Italian)
* New translations strings_desktop.xml (Ukrainian)
* New translations strings_desktop.xml (Chinese Simplified)
* New translations strings_desktop.xml (Portuguese, Brazilian)
* New translations strings_drafts.xml (French)
* New translations strings_drafts.xml (Spanish)
* New translations strings_drafts.xml (German)
* New translations strings_drafts.xml (Italian)
* New translations strings_drafts.xml (Ukrainian)
* New translations strings_drafts.xml (Chinese Simplified)
* New translations strings_drafts.xml (Portuguese, Brazilian)
* New translations strings_encyclopedia.xml (French)
* New translations strings_encyclopedia.xml (Spanish)
* New translations strings_encyclopedia.xml (German)
* New translations strings_encyclopedia.xml (Italian)
* New translations strings_encyclopedia.xml (Ukrainian)
* New translations strings_encyclopedia.xml (Chinese Simplified)
* New translations strings_encyclopedia.xml (Portuguese, Brazilian)
* New translations strings_notes.xml (French)
* New translations strings_notes.xml (Spanish)
* New translations strings_notes.xml (German)
* New translations strings_notes.xml (Italian)
* New translations strings_notes.xml (Ukrainian)
* New translations strings_notes.xml (Chinese Simplified)
* New translations strings_notes.xml (Portuguese, Brazilian)
* New translations strings_project_home.xml (French)
* New translations strings_project_home.xml (Spanish)
* New translations strings_project_home.xml (German)
* New translations strings_project_home.xml (Italian)
* New translations strings_project_home.xml (Ukrainian)
* New translations strings_project_home.xml (Chinese Simplified)
* New translations strings_project_home.xml (Portuguese, Brazilian)
* New translations strings_project_navigation.xml (French)
* New translations strings_project_navigation.xml (Spanish)
* New translations strings_project_navigation.xml (German)
* New translations strings_project_navigation.xml (Italian)
* New translations strings_project_navigation.xml (Ukrainian)
* New translations strings_project_navigation.xml (Chinese Simplified)
* New translations strings_project_navigation.xml (Portuguese, Brazilian)
* New translations strings_project_select_navigation.xml (French)
* New translations strings_project_select_navigation.xml (Spanish)
* New translations strings_project_select_navigation.xml (German)
* New translations strings_project_select_navigation.xml (Italian)
* New translations strings_project_select_navigation.xml (Ukrainian)
* New translations strings_project_select_navigation.xml (Chinese Simplified)
* New translations strings_project_select_navigation.xml (Portuguese, Brazilian)
* New translations strings_projects_list.xml (French)
* New translations strings_projects_list.xml (Spanish)
* New translations strings_projects_list.xml (German)
* New translations strings_projects_list.xml (Italian)
* New translations strings_projects_list.xml (Ukrainian)
* New translations strings_projects_list.xml (Chinese Simplified)
* New translations strings_projects_list.xml (Portuguese, Brazilian)
* New translations strings_scene_editor.xml (French)
* New translations strings_scene_editor.xml (Spanish)
* New translations strings_scene_editor.xml (German)
* New translations strings_scene_editor.xml (Italian)
* New translations strings_scene_editor.xml (Ukrainian)
* New translations strings_scene_editor.xml (Chinese Simplified)
* New translations strings_scene_editor.xml (Portuguese, Brazilian)
* New translations strings_scene_list.xml (French)
* New translations strings_scene_list.xml (Spanish)
* New translations strings_scene_list.xml (German)
* New translations strings_scene_list.xml (Italian)
* New translations strings_scene_list.xml (Ukrainian)
* New translations strings_scene_list.xml (Chinese Simplified)
* New translations strings_scene_list.xml (Portuguese, Brazilian)
* New translations strings_sync.xml (French)
* New translations strings_sync.xml (Spanish)
* New translations strings_sync.xml (German)
* New translations strings_sync.xml (Italian)
* New translations strings_sync.xml (Ukrainian)
* New translations strings_sync.xml (Chinese Simplified)
* New translations strings_sync.xml (Portuguese, Brazilian)
* New translations strings_timeline.xml (French)
* New translations strings_timeline.xml (Spanish)
* New translations strings_timeline.xml (German)
* New translations strings_timeline.xml (Italian)
* New translations strings_timeline.xml (Ukrainian)
* New translations strings_timeline.xml (Chinese Simplified)
* New translations strings_timeline.xml (Portuguese, Brazilian)
* New translations strings.xml (French)
* New translations strings.xml (Spanish)
* New translations strings.xml (German)
* New translations strings.xml (Italian)
* New translations strings.xml (Ukrainian)
* New translations strings.xml (Chinese Simplified)
* New translations strings.xml (Portuguese, Brazilian)
* New translations full_description.txt (French)
* New translations full_description.txt (Spanish)
* New translations full_description.txt (German)
* New translations full_description.txt (Italian)
* New translations full_description.txt (Ukrainian)
* New translations full_description.txt (Chinese Simplified)
* New translations full_description.txt (Portuguese, Brazilian)
* New translations short_description.txt (French)
* New translations short_description.txt (Spanish)
* New translations short_description.txt (German)
* New translations short_description.txt (Italian)
* New translations short_description.txt (Ukrainian)
* New translations short_description.txt (Chinese Simplified)
* New translations short_description.txt (Portuguese, Brazilian)
* New translations title.txt (French)
* New translations title.txt (Spanish)
* New translations title.txt (German)
* New translations title.txt (Italian)
* New translations title.txt (Ukrainian)
* New translations title.txt (Chinese Simplified)
* New translations title.txt (Portuguese, Brazilian)
* New translations strings.xml (German)
* New translations strings_about_app.xml (German)
* New translations strings_account_settings.xml (German)
* New translations strings.xml (German)
* New translations messages_en.properties (German)
* New translations strings_account_settings.xml (German)
* New translations full_description.txt (German)
* New translations short_description.txt (German)
* New translations strings_about_app.xml (Portuguese, Brazilian)
* New translations short_description.txt (Portuguese, Brazilian)
* New translations strings.xml (Portuguese, Brazilian)
* New translations strings_desktop.xml (Portuguese, Brazilian)
* New translations strings_project_navigation.xml (Portuguese, Brazilian)
* New translations strings_project_select_navigation.xml (Portuguese, Brazilian)
* New translations full_description.txt (Portuguese, Brazilian)
* New translations strings.xml (Portuguese, Brazilian)
* New translations strings_project_home.xml (Portuguese, Brazilian)
* New translations strings.xml (Portuguese, Brazilian)
* New translations strings_notes.xml (Portuguese, Brazilian)
* New translations strings_project_home.xml (Portuguese, Brazilian)
* New translations strings_scene_editor.xml (Portuguese, Brazilian)
* New translations strings_account_settings.xml (French)
* New translations strings_account_settings.xml (Spanish)
* New translations strings_account_settings.xml (German)
* New translations strings_account_settings.xml (Italian)
* New translations strings_account_settings.xml (Ukrainian)
* New translations strings_account_settings.xml (Chinese Simplified)
* New translations strings_account_settings.xml (Portuguese, Brazilian)
* New translations strings_encyclopedia.xml (French)
* New translations strings_encyclopedia.xml (Spanish)
* New translations strings_encyclopedia.xml (German)
* New translations strings_encyclopedia.xml (Italian)
* New translations strings_encyclopedia.xml (Ukrainian)
* New translations strings_encyclopedia.xml (Chinese Simplified)
* New translations strings_encyclopedia.xml (Portuguese, Brazilian)
* New translations strings_notes.xml (French)
* New translations strings_notes.xml (Spanish)
* New translations strings_notes.xml (German)
* New translations strings_notes.xml (Italian)
* New translations strings_notes.xml (Ukrainian)
* New translations strings_notes.xml (Chinese Simplified)
* New translations strings_notes.xml (Portuguese, Brazilian)
* New translations strings_projects_list.xml (French)
* New translations strings_projects_list.xml (Spanish)
* New translations strings_projects_list.xml (German)
* New translations strings_projects_list.xml (Italian)
* New translations strings_projects_list.xml (Ukrainian)
* New translations strings_projects_list.xml (Chinese Simplified)
* New translations strings_projects_list.xml (Portuguese, Brazilian)
* Clean up
* New translations messages_en.properties (Chinese Simplified)
* New translations messages_en.properties (Portuguese, Brazilian)
* New translations strings_account_settings.xml (French)
* New translations strings_account_settings.xml (Spanish)
* New translations strings_account_settings.xml (German)
* New translations strings_account_settings.xml (Italian)
* New translations strings_account_settings.xml (Ukrainian)
* New translations strings_account_settings.xml (Chinese Simplified)
* New translations strings_account_settings.xml (Portuguese, Brazilian)
* New translations strings_notes.xml (French)
* New translations strings_notes.xml (Spanish)
* New translations strings_notes.xml (German)
* New translations strings_notes.xml (Italian)
* New translations strings_notes.xml (Ukrainian)
* New translations strings_notes.xml (Chinese Simplified)
* New translations strings_notes.xml (Portuguese, Brazilian)
* New translations full_description.txt (French)
* New translations full_description.txt (Spanish)
* New translations full_description.txt (German)
* New translations full_description.txt (Italian)
* New translations full_description.txt (Ukrainian)
* New translations short_description.txt (French)
* New translations short_description.txt (Spanish)
* New translations short_description.txt (German)
* New translations short_description.txt (Italian)
* New translations short_description.txt (Ukrainian)
* New translations title.txt (French)
* New translations title.txt (Spanish)
* New translations title.txt (German)
* New translations title.txt (Italian)
* New translations title.txt (Ukrainian)
* New translations full_description.txt (Chinese Simplified)
* New translations full_description.txt (Portuguese, Brazilian)
* New translations short_description.txt (Chinese Simplified)
* New translations short_description.txt (Portuguese, Brazilian)
* New translations title.txt (Chinese Simplified)
* New translations title.txt (Portuguese, Brazilian)
* Clean up
2026-01-06 00:35:32 -08:00
Adam Brown
5c2c815c2e
Implemented backup sharing
2026-01-05 23:37:05 -08:00
Adam Brown
40eaf59fb7
Migrated detail view components to use a unified dropdown menu system.
...
- Unified how detail cards are presented
2026-01-05 19:48:00 -08:00
Adam Brown
6c4ee9e4a9
No more :
2026-01-05 00:13:20 -08:00
Adam Brown
3861a4c617
New icons!
2026-01-04 23:09:58 -08:00
Adam Brown
c7577a008f
Added search and sort to notes
2026-01-04 22:14:42 -08:00
Adam Brown
2ca49ba5df
Improved Sync cancellation UX
...
- All sync coroutines are not parented to the top level job making cancellation more complete
- Hitting the top level X now cancels a sync after confirmation
2026-01-04 20:30:52 -08:00
Adam Brown
a0152c986e
Remove now unsupported languages
2026-01-04 01:08:05 -08:00
Adam Brown
037eaee563
Move stats cache to the actual cache dir
2026-01-03 16:15:07 -08:00
Adam Brown
0496cb4840
Styled Backup Manager Dialog
...
Pulled hard coded strings out
2025-12-30 11:09:50 -08:00
Adam Brown
325516f1c1
Remove :
2025-12-30 01:48:50 -08:00
Adam Brown
79bf620167
Scene editors now load their content async
...
This leaves the UI more responsive
2025-12-29 23:34:19 -08:00
Adam Brown
c0f4b2df26
Introduce statistics service
...
Project statistics are now cached, improves startup time
2025-12-29 21:10:26 -08:00
Adam Brown
ba38ffe66c
Use the newer ComponentToaster pattern
2025-12-29 15:41:46 -08:00
Adam Brown
e507c8cc5b
Added a BackupManager
...
You can now delete or restore backups from inside the app
2025-12-29 12:22:26 -08:00
Adam Brown
70481e036d
Restore backup should remove the old files first
2025-12-29 10:39:30 -08:00
Adam Brown
b5dc27ed64
New backup settings UI
2025-12-29 02:16:35 -08:00
Adam Brown
db91d803df
ProjectBackupRepository is now just common code
2025-12-29 01:48:45 -08:00
Adam Brown
cab419f618
Zip file handling rewritten
2025-12-29 01:03:30 -08:00
Adam Brown
34e55f5e89
Focus mode now enabled do-no-disturb on Android
2025-12-27 23:33:09 -08:00
Adam Brown
2156cc207b
Allow focus mode to participate in predictive back
2025-12-27 19:20:39 -08:00
Adam Brown
ffa8ce6094
Fix example project crash
2025-12-25 12:21:19 -08:00
Adam Brown
abf7bcfa4b
Change /end_sync to POST
2025-12-25 11:44:15 -08:00
Adam Brown
0290168896
Improve Delete project dialog
2025-12-24 19:42:17 -08:00
Adam Brown
9d13dd9d0a
Refactor Delete project dialog
2025-12-24 19:29:14 -08:00
Adam Brown
08c9dbb9a6
Improve Project Rename dialog
2025-12-24 19:16:59 -08:00
Adam Brown
f9d482da58
Improve Create Project dialog
2025-12-24 19:14:39 -08:00
Adam Brown
9f57b742e2
Make sure we get an error message during account sync
2025-12-24 02:05:28 -08:00
Adam Brown
923941453e
Edited some strings
2025-12-21 20:20:00 -08:00
Adam Brown
9e0d524c27
Fix some string wrapping
2025-12-21 20:02:18 -08:00
Adam Brown
80ea19d074
If projects missing IDs failing to sync
...
This previously only happened during account level syncing, now Project level syncing can handle it as well
2025-12-21 18:20:32 -08:00
Adam Brown
56dad1bf64
Migrate to Android KMP plugin
2025-12-21 11:51:40 -08:00
Adam Brown
9b75f02155
Validate Max Backups field
2025-12-21 02:00:52 -08:00
Adam Brown
7dcae48f4f
Add Scene metadata to conflict resolution UI
2025-12-20 13:21:26 -08:00
Adam Brown
9445c6d450
Fix incorrect string breaks
2025-12-20 13:01:34 -08:00
Adam Brown
a2be3834dd
Fix changing state off main thread
2025-12-20 12:20:33 -08:00
Adam Brown
c1016a6115
Syncing Protocol
...
- Enforce session expiration
- Handle missing project ID more gracefully
- Cleanup syncing protocol doc
2025-12-20 11:21:03 -08:00
Adam Brown
c1d1027573
Fix Draft Compare
...
Once you pick what to do with your Draft, it now properly updates the editor
2025-12-13 02:53:40 -08:00
Adam Brown
5c5f1f507f
Draft naming is now for the current draft
...
When you start a new draft, you name it right then, not at the end when you're saving it and moving on to the next
2025-12-12 21:45:24 -08:00
Adam Brown
a94b806302
Shortened search field text
2025-12-12 17:21:16 -08:00
Adam Brown
f337821213
Fix project root navigation
2025-12-12 02:51:01 -08:00
Adam Brown
0ab8c2acf6
Add loading indicator
2025-12-12 02:38:53 -08:00
Adam Brown
202d0f3318
Fixed ProjectHome navigation
2025-12-12 01:59:13 -08:00
Adam Brown
bafec38f3d
Refined ProjectHome UI
2025-12-12 01:37:11 -08:00
Adam Brown
8ddf4855bd
Solved an encyclopedia bug
...
Where deleting an image, and then adding a new image, would not refresh the image shown in the UI
2025-12-12 00:57:30 -08:00
Adam Brown
0c5f5292ad
Change server UI string
2025-12-11 22:57:39 -08:00
Adam Brown
b4968aace6
Converted SVGs to ImageVector
2025-12-11 21:41:55 -08:00