Commit graph

2397 commits

Author SHA1 Message Date
Ricki Hirner b88c35169e
SettingsManager: use Flows instead of LiveData (#714)
* SettingsManager: use flows instead of LiveData

* Fix tests
2024-04-10 12:10:03 +02:00
Ricki Hirner 1cd0df1e6a Rename dev-ose branch to main-ose 2024-04-09 18:16:10 +02:00
Ricki Hirner 74e89bde9b Version bump to 4.3.16-beta.2 2024-04-09 17:56:41 +02:00
Ricki Hirner b72cc7f9fb [CI] Fix test workflows (main branch condition, cache names) 2024-04-09 17:44:18 +02:00
Ricki Hirner 3023a935a8
Detect WebDAV-Push support (#716)
* Detect WebDAV-Push support

- detect and save supportsWebPush and pushTopic to database

* Collection info: show Push support + subscription time
2024-04-09 17:31:02 +02:00
Ricki Hirner 2c5292a52b Update dependencies 2024-04-09 15:38:41 +02:00
Ricki Hirner a4ce1f93f0
Nextcloud Login Flow: improved handling of back (#712)
* Use Compose state instead of LiveData; reset token before starting Login flow

* [WIP] Reset state variables when needed

* Always run postForJson in IO dispatcher; show progress when polling for login data

* Reset login URL in onReturnFromBrowser
2024-04-09 11:52:49 +02:00
Ricki Hirner 30d4aa2e73 [CI] Fix tests 2024-04-09 10:33:38 +02:00
Ricki Hirner e638f5debc
Create account: user feedback when account name is already taken (#701)
* Show snackbar when account can't be created without known reason; show error when account name is taken

* Don't crash on empty account name
2024-04-04 13:36:27 +02:00
Ricki Hirner 7b2f14d148 Use normal runner for tests with emulator
See https://github.blog/changelog/2024-04-02-github-actions-hardware-accelerated-android-virtualization-now-available/
2024-04-03 12:38:56 +02:00
Ricki Hirner 3385e5ddb7 Fix tests 2024-04-02 10:58:37 +02:00
Ricki Hirner 44d2446d22 Better handling of address book accounts without main account (closes #694) 2024-04-01 21:26:02 +02:00
Ricki Hirner 6b88052e10
DeleteCollectionDialog: handle case that result may contain null value (#697) 2024-04-01 21:10:53 +02:00
Ricki Hirner 6d462ea9e4 Update gradle, Hilt 2024-04-01 13:32:50 +02:00
Ricki Hirner 10b007bd15 Version bump to 4.3.16-beta.1 2024-03-28 14:26:57 +01:00
Ricki Hirner 9b7a1dbe87 Update ical4android 2024-03-28 13:52:37 +01:00
Sunik Kupfer 6ff0ebc7e2
Do not show existing password on password change (#689)
* Do not show existing password when changing

* Use PasswordTextField for password input dialogs

---------

Co-authored-by: Ricki Hirner <hirner@bitfire.at>
2024-03-28 13:34:32 +01:00
Ricki Hirner 9b47427b66
SettingsLiveData: post initial value even when it's null (#686) 2024-03-28 09:44:19 +01:00
Ricki Hirner d0e5bbc0ad
Update copyright; upgrade dependencies (#687) 2024-03-27 17:32:35 +01:00
Ricki Hirner f825abca27 Login screen: increase padding of login options minimally 2024-03-27 17:27:46 +01:00
Arnau Mora 7b12a53616
Create a native Material theme and get rid of XML styles (#675)
* Added custom Compose theme

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Got rid of accompanist theme adapter

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Removed unused import

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Added actionbar to the activities that didn't have one

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Theme now always hides actionbar

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Added back string

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Got rid of all color definitions

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Moved color definition to drawable

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Using Compose colors

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Using AppCompat theme

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Removed XML theme

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Moved color definition

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Added bars coloring in Compose

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Added dark theme

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Added custom Compose theme

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Got rid of accompanist theme adapter

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Removed unused import

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Added actionbar to the activities that didn't have one

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Theme now always hides actionbar

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Added back string

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Got rid of all color definitions

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Moved color definition to drawable

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Using Compose colors

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Using AppCompat theme

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Removed XML theme

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Moved color definition

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Added bars coloring in Compose

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Added dark theme

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Changed content description

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Using `onSupportNavigateUp`

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Changed color on top of primary green

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Added up navigation

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Made `onSupportNavigateUp` optional

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Typo

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Got rid of edge-to-edge

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Added back some XML styles

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Simplify TasksCard calling

* Move theme colors to flavor-specific ThemeColors file

* Remove global AppTheme paddings for now

* Optimize imports

---------

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
Co-authored-by: Ricki Hirner <hirner@bitfire.at>
2024-03-27 17:21:02 +01:00
Ricki Hirner 8507c64be1
OpenSourcePage: make "dontShow" LiveData (#683) 2024-03-27 14:42:44 +01:00
Sunik Kupfer 557b5653e5 Don't show empty suggested account names dropdown (bitfireAT/davx5#555)
* Don't show empty suggested account names dropdown

* Hide the trailing dropdown icon if suggested account names list is empty
2024-03-27 13:04:50 +01:00
Ricki Hirner 7760cbaa72
Show Pending state in AccountsActivity, too; remove obsolete code (#680) 2024-03-27 10:13:52 +01:00
Sunik Kupfer 14ef74e231 Don't move focus downward without reason (bitfireAT/davx5-ose#553) 2024-03-26 10:20:45 +01:00
Ricki Hirner 78c148615a Fix ProGuard rules 2024-03-24 21:45:44 +01:00
Ricki Hirner b63cd67e9c Backport changes from build variants 2024-03-24 21:30:08 +01:00
Ricki Hirner 079c3efdfd
Rewrite login activity to Compose (#672)
* Remove unnecessary layout files

* [WIP] Rewrite LoginActivity to Compose

* [WIP] Login type

* [WIP] Login by URL, Google, Nextcloud

* Remove unnecessary files and kapt

* More renaming and removing of unnecessary files

* Login with email, URL

* Login type: Advanced

* Drop "known base URLs"

* "Detect resources" and "Create account" page

* Introduce LoginTypesProvider interface
2024-03-24 18:25:30 +01:00
Michael Biebl 014c94a031
Do not show extended proxy details in App Settings if proxy type is system or none (#661)
Fixes: #660
2024-03-21 11:44:03 +01:00
Arnau Mora 5921fb2bb6
Upgraded ical4android (#663)
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
2024-03-21 11:43:44 +01:00
Arnau Mora 58b02c04ef
Replaced icons with auto-mirrored version when possible (#666)
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
2024-03-21 11:41:47 +01:00
Ricki Hirner 06e7eeb391
Don't use Gradle build and configuration cache for releases (#662)
* Don't use Gradle build and configuration cache for releases

- don't enable Gradle build and configuration cache for the project, but recommend it for the developer
- explicitly enable Gradle build and configuration cache for CI test jobs
- let AboutLibraries generate lib definitions itself again
- also don't archive test results (sometimes fails and we never use the results)

* Add encryption key for gradle cache

* Only warn on configuration cache problems (caused by AboutLibraries)
2024-03-20 15:29:21 +01:00
Michael Biebl 6c882877d0
Remove unused string resources (#651)
The list was computed in an automated way and includes:

intro_battery_not_whitelisted
intro_battery_whitelisted
permissions_jtx_status_off
permissions_jtx_status_on
about_flavor_info
about_translations_thanks
install_email_client
accounts_global_sync_disabled
accounts_global_sync_enable
app_settings_tasks_provider_synchronizing_with
account_no_address_books
account_no_calendars
account_no_webcals
account_swipe_down
account_create_new_address_book
account_create_new_calendar
settings_title
settings_enter_username
settings_enter_password
settings_key_default_alarm
certificate_notification_connection_security
trust_certificate_unknown_certificate_found
2024-03-20 15:24:00 +01:00
Ricki Hirner d8e6f82104 Fix import 2024-03-20 15:17:20 +01:00
Arnau Mora 28ddf5c86a
Provide a widget option (#643)
* Added Glance dependency

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Defined Glance widget

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Replaced with new worker

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Rename ui/widget to ui/composable, move sync widget into ui/widget; adapt strings

---------

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
Co-authored-by: Ricki Hirner <hirner@bitfire.at>
2024-03-20 12:37:57 +01:00
Ricki Hirner c3bf95fa5c Update AGP to 8.3.1 2024-03-20 11:41:13 +01:00
Arnau Mora d37718c58a
Rewrite CreateCalendarActivity to Compose (#645)
* Added color picker dialog

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Removed title

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Migrated to Jetpack Compose

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Removed unused layouts

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Fixed activity name

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Fixed duplicated title

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Cleanup

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Error tweaks

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>

* Rewrite Create address book, Create collection, Delete collection

* [WIP] Create calendar: more properties; use own color picker (other one was M3)

* [WIP] Create calendar

* Add missing properties for calendars

* Support color, remove comments

---------

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
Co-authored-by: Ricki Hirner <hirner@bitfire.at>
2024-03-20 11:40:03 +01:00
Ricki Hirner fea33ab60a Version bump to 4.3.15 2024-03-16 15:18:33 +01:00
Ricki Hirner 3ab278a315
Better handling of tasks app changes (#652)
* Fix task sync update when new app is selected by user or TasksWatcher
* Minor refactoring, KDoc
2024-03-16 12:16:23 +01:00
Ricki Hirner 322a7565b0 TaskUtils: take updateSyncSettings into account 2024-03-16 00:26:15 +01:00
Ricki Hirner 732d925b4c Show pending syncs in AccountActivity again 2024-03-15 12:08:40 +01:00
Ricki Hirner a43dbb5cff Have network/WiFi check in both PeriodicSyncWorker and OneTimeSyncWorker; add tests
- OneTimeSyncWorker is also started by sync framework, so it should take network restrictions into consideration
- add "manual" flag for manual syncs that ignore network restrictions
2024-03-15 11:30:54 +01:00
Ricki Hirner fe833759ee Fetch translations from Transifex 2024-03-15 10:38:37 +01:00
Ricki Hirner 53bf342822 Version bump to 4.3.15-beta.1 2024-03-14 20:24:36 +01:00
Ricki Hirner 30122a79f3
Periodic workers directly run sync (#648)
* [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
2024-03-14 20:08:38 +01:00
Ricki Hirner a16fd468fd TasksIntroPage: fix "Dont show again" 2024-03-13 17:19:23 +01:00
Ricki Hirner 76df2b320d Account settings UI: fix "sync only manually" summary 2024-03-13 17:03:50 +01:00
Ricki Hirner d6ff27fcc8 Fix up navigation 2024-03-13 17:02:27 +01:00
Ricki Hirner 2e780a890b
Rewrite AccountSettingsActivity to Compose (#646)
* AccountSettings: rewrite Sync settings
* Authentication
* CalDAV, CardDAV settings
2024-03-12 20:48:06 +01:00
Ricki Hirner 45d6b33023 Add stats parameters for Web site calls, rename AccountActivity2 back to AccountActivity 2024-03-12 15:41:50 +01:00