* [WIP] Don't create a separate SyncWorker for every sync (run directly within onetime/periodic sync instead)
* [WIP] address books
* Account(s)Activity: don't show pending workers
* Migration to set new periodic sync worker tags
* Fix tests
* ContactsSyncAdapter issues address book sync on main account (not contacts sync)
* SyncAdapterService: optimize blocking with Flow instead of LiveData
* Refactoring
* Better live handling of (un)installed task apps
* Minor changes
* SettingsManager: explicitly mark possibility of null LiveData values
* Fix tests
* Move homepage and other Web URLs to Constants; minor refactoring
* Use AppTheme with built-in safe LocalUriHandler instead of MdcTheme; minor refactoring
* Account settings: add TODO for Compose rewrite
* Use UriHandler instead of UiUtils.launch when possible
* Migrated AddWebdavMountActivity to Compose
Signed-off-by: Arnau Mora <arnyminerz@proton.me>
* Minor changes, use PasswordTextField
---------
Signed-off-by: Arnau Mora <arnyminerz@proton.me>
Co-authored-by: Ricki Hirner <hirner@bitfire.at>
* [WIP] Add AccountActivity2 in Compose
* Make paging collections work when data changes
* [WIP] Add ProgressIndicator TODO
* [WIP] CardDAV: add swipe-to-refresh
* [WIP] Correctly use Pager
* [WIP] Only show Webcal tab when there are subscriptions
* [WIP] Implement collection properties dialog
* Implement "create collection" and "show only personal collection"
* [WIP] Add collection overflow menu items
* Show color as left border, max. 2 icons per row
* [WIP] Delete collection dialog
* Add "delete collection"
* Implement "Force read-only"
* Delete old XML classes and resources
* Add permissions warning
* Implement "Rename account"
* Case-insensitive sorting, minor changes
* Horizontal arrangement
* Less integration of Webcal subscriptions (other layout)
* Accessibility
* Collection list: provide ID als key for lazy list
* Only show "Create addressbook/calendar" when there's at least one writable homeset
* Migrated to Compose
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Text hides when there are mounts
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Fixed todo
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Migrated to Compose
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Text hides when there are mounts
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Fixed todo
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Removed vertical scroll
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Added action for ClickableText
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Fixed indentation
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Changed layout
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Removed overflow preferences
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Fixed padding
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Changed link color
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Fixed preview
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Fixed back arrow
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Require explicit Context for helpUrl to make it work in Compose preview
---------
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
Co-authored-by: Ricki Hirner <hirner@bitfire.at>
* Make readOnly a LocalCollection property
* Move readOnly detection to SyncManager
* Add readOnly state access to LocalCalendar
* Add not implemented error to readOnly state access of LocalJtxCollection
* Handle read-only state of calendar at dirty events upload
* Handle read-only state of calendar at processing of locally deleted events
* Remove todo and update kdoc
* Fix indenting
* Add read-only prop to LocalTestCollection
* Add read-only state access to LocalTaskList
* LocalTestCollection: don't set read-only
* Update ical4android (for new KDoc)
* Make LocalCollection readOnly-API read only and take value from content provider during populate()
* SyncManager: use readOnly direct from localCollection
* Lift resetDeleted up to LocalResource
* Override and use resetDeleted for LocalEvent
* Add resetDeleted to LocalJtxICalObject
* Add resetDeleted to LocalTask
* Add resetDeleted to LocalTask
* Add resetDeleted to LocalTestResource
* Provide default access level
---------
Co-authored-by: Ricki Hirner <hirner@bitfire.at>
* Migrated to Jetpack Compose
Signed-off-by: Arnau Mora <arnyminerz@proton.me>
* Added `observeBoolean`
Signed-off-by: Arnau Mora <arnyminerz@proton.me>
* Simplified settings interaction
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Migrated to Jetpack Compose
Signed-off-by: Arnau Mora <arnyminerz@proton.me>
* Added `observeBoolean`
Signed-off-by: Arnau Mora <arnyminerz@proton.me>
* Simplified settings interaction
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Use SafeAndroidUriHandler instead of UiUtils.launchUri
* Removed animation for manufacturerWarning
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Removed animation for manufacturerWarning
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Added `getBooleanLive`
Signed-off-by: Arnau Mora <arnyminerz@proton.me>
* Using `getBooleanLive`
Signed-off-by: Arnau Mora <arnyminerz@proton.me>
* Moved UI definitions to file scope
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Don't use specific times for waiting in tests
* Renamed function
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* More exact naming
---------
Signed-off-by: Arnau Mora <arnyminerz@proton.me>
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
Co-authored-by: Ricki Hirner <hirner@bitfire.at>
* Add foreground notification type to expedited workers (required for Android 14)
* Make SyncWorker a long-running worker
* Don't use expedited SyncWorker for everything; handle foreground service launch restriction
* AddressBookSyncer: only request expedited for sub-jobs when parent job is expedited, too
* RefreshCollectionsWorker is not long-running -> no foreground service type needed
* Fix tests
* Don't use foreground service type in ForegroundInfo
* Make SyncWorker not long-running
* Added initial layout
Signed-off-by: Arnau Mora <arnyminerz@proton.me>
* Improved UI
Signed-off-by: Arnau Mora <arnyminerz@proton.me>
* Replaced autofill with radio buttons
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Got rid of unnecessary errors
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Got rid of null indicators
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Added default home set selection
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
* Minor UI changes
* Drop displayNameError
---------
Signed-off-by: Arnau Mora <arnyminerz@proton.me>
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
Co-authored-by: Ricki Hirner <hirner@bitfire.at>
* Rewrite RenameAccountFragment to compose
* Add padding to text field, disable RENAME button when old name = new name
---------
Co-authored-by: Ricki Hirner <hirner@bitfire.at>