Commit graph

2291 commits

Author SHA1 Message Date
Ricki Hirner 53a446bcf9
[CI] Update Github actions 2024-02-02 13:50:18 +01:00
Ricki Hirner 4ee6bfe276
Update dependencies (including ical4android) 2024-02-01 19:53:04 +01:00
Ricki Hirner 6817c17686
Nextcloud Login Flow: use Saved State for low memory conditions (#553) 2024-01-31 17:12:41 +01:00
Ricki Hirner d108ea8a7b
Use ksp (instead of kapt) for Hilt (bitfireAT/davx5#521) 2024-01-31 14:03:56 +01:00
Ricki Hirner d2de737857
Version bump to 4.3.13-beta.2 2024-01-31 13:40:27 +01:00
Ricki Hirner 37e0605f9e
Fetch translations from Transifex 2024-01-31 13:17:59 +01:00
Ricki Hirner 95d098541f
Lint (#551)
* Lint

* Optimize imports

* Icon
2024-01-31 13:09:15 +01:00
Ricki Hirner b2d06a491d
Fix Nextcloud Login Flow "IllegalStateException: OffsetMapping.originalToTransformed" (#550)
* Move State out of Composable

* Disable text field instead of making it read-only during progress
2024-01-31 12:46:08 +01:00
Ricki Hirner 09b15c1e75
Android 14 Compatibility (#545)
* Increase target SDK level to 34

* ForegroundService: specify "data sync" foreground service type
2024-01-31 12:09:10 +01:00
Arnau Mora a9a699c5b9
Moved to gradle/actions/setup-gradle@v3 (#549)
Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
2024-01-30 17:12:32 +01:00
Ricki Hirner dd036b91fc
Add battery saver warning (#542)
* Show battery saver warning in account list and debug info

* Move app warnings to model class

* Debug info: more verbose text

* Restore previous strings for sync enqueued/started
2024-01-30 15:50:03 +01:00
Ricki Hirner fbed5c7d67
WebDAV performance optimizations (#543)
* Make ranged GET requests cancellable; reduce notification update frequency

* Include original exception as a cause in WebDAV ErrnoException

* Add KDoc for threading
2024-01-30 11:55:59 +01:00
Ricki Hirner f0eb140777
Update dependencies (including ical4android) 2024-01-26 13:05:25 +01:00
Patrick Lang dcba94ac70
jtxBoard: added localCollection.updateLastSync() in post-processing (bitfireAT/davx5#505)
* added localCollection.updateLastSync() in post-processing

* Update build.gradle

updated ical4android version

* Update build.gradle

* Update build.gradle

---------

Co-authored-by: Ricki Hirner <hirner@bitfire.at>
2024-01-25 15:46:58 +01:00
Arnau Mora 202a91a7a4
LocalEvent: synchronize UID handling with ical4android (#541)
* Got rid of uid writes

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

* Using new ical4android version

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

* Changed commit id

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

* Updated ical4android

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

---------

Signed-off-by: Arnau Mora Gras <arnyminerz@proton.me>
Signed-off-by: Arnau Mora <arnyminerz@proton.me>
2024-01-24 19:43:38 +01:00
Ricki Hirner a313ace66d Fetch translations from Transifex 2024-01-20 13:42:05 +01:00
Ricki Hirner bdbab77f5e Version bump to 4.3.13-beta.1 2024-01-20 13:40:53 +01:00
Arnau Mora 88e41d1eed Update dav4jvm and other dependencies (bitfireAT/davx5#518)
* Upgrade Compose Compiler to 1.5.8

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

* Upgrade Kotlin to 1.9.22

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

* Upgrade KSP to 1.0.17

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

* Upgrade dav4jvm 93dddcd

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

* Upgrade ViewModel to 2.7.0

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

* Updated imports

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

* Updated imports

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

* Updated imports

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

---------

Signed-off-by: Arnau Mora <arnyminerz@proton.me>
2024-01-20 12:40:38 +01:00
Sunik Kupfer ea5fc54003
Validate email before starting google oauth flow (#535)
* Validate email before starting auth flow (see #525, fixes #534)

* Simplify expression (minor change)

---------

Co-authored-by: Ricki Hirner <hirner@bitfire.at>
2024-01-18 13:11:08 +01:00
Arnau Mora 0c834a5c42
Tasks intro page: "I don't need tasks" checkbox not visible in landscape mode (#530)
* Added optional modifier

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

* Fixed model argument name

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

* Added bottom padding for bottom bar

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

---------

Signed-off-by: Arnau Mora <arnyminerz@proton.me>
2024-01-16 23:11:39 +01:00
Arnau Mora 2ac81b6342
Darkened colors of accounts screen background image for dark mode (#529)
* Moved all colors to resources

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

* Darkened colors for night mode

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

---------

Signed-off-by: Arnau Mora <arnyminerz@proton.me>
2024-01-15 09:45:46 +01:00
Ricki Hirner 46a8f0f205
Add Dependent issues workflow 2024-01-11 17:35:17 +01:00
Arnau Mora b8f4b9af30
Migrate DebugInfoActivity to Compose (#509)
* Gave more flexibility

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

* Migrated to Compose

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

* Adjusted paddings

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

* Added missing observer

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

* CardWithImagE: add another preview with subtitle, icon and content

* Made buttons uppercase

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

* Adjusted spacings

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

* Changed snackbar host state

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

* Changed nullable expression

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

* Using shareFile for zip

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

* Minor changes (comments/formatting)

* Switched to view instead of sharing files

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

* Adapted image height for landscape

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

* CardView: allow to pass image alignment; use card_theme_max_height

* DebugInfoActivity: paddings, images

---------

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>
2024-01-11 17:31:08 +01:00
Ricki Hirner 3c4601f7a1 WebDAV memory cache: store values using SoftReference (bitfireAT/davx5#515)
so that the values can be free if there's not enough memory
2024-01-11 13:48:18 +01:00
Ricki Hirner 357cf09be7
WebDAV: refactor paging and caches (bitfireAT/davx5#502)
* WebDAV: don't try to load 0-byte segments

* Extracted segmentation logic to SegmentedReader for testability

* Reorganize and simplify caches

* Refactor thumbnail cache

* Use coroutines with Dispatchers.IO instead of custom Executor

* Remove obsolete classes

* Fix tests, simplify DiskCache

* Paging reader: cache current page

* PagingReader tests

* Thumbnails: timeout for generation and not only for waiting

* openDocumentThumbnail: actually cancel HTTP request when method is cancelled

* Better KDoc

* Add further tests
2024-01-10 14:59:57 +01:00
darealdemayo 6ce0d35e6d
Add purelymail.com (#521) 2024-01-10 14:28:52 +01:00
Sunik Kupfer 24401cc990 Fix ProGuard issue with javax.xml.namespace.QName; update AGP (bitfireAT/davx5#512)
* Update to AGP 8.2.1
* Add keep rule for javax.xml.namespace.QName

See #511
Closes bitfireAT/davx5#499
2024-01-08 15:00:19 +01:00
Ricki Hirner cf0c3040fc
Run uploadDirty() regardless of processLocallyDeleted() result (bitfireAT/davx5#510)
Run uploadDirty() regardless of whether processLocallyDeleted() did something or not
2024-01-05 11:16:50 +01:00
Arnau Mora 6b660c2be6
Rename LoginCredentialsFragmentFactory to LoginFragmentFactory (bitfireAT/davx5#507)
* Renamed LoginCredentialsFragmentFactory to LoginFragmentFactory

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

* Fixed fragment name

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

* Rename LoginInitFragment (managed) to ManagedLoginInitFragment

---------

Signed-off-by: Arnau Mora <arnyminerz@proton.me>
Co-authored-by: Ricki Hirner <hirner@bitfire.at>
2024-01-05 11:16:47 +01:00
Sunik Kupfer 20652b9325
NextcloudLoginFlowFragment: minor changes (sync bitfireAT/davx5#501)
---------

Co-authored-by: Ricki Hirner <hirner@bitfire.at>
2024-01-03 11:25:32 +01:00
Ricki Hirner e5c73bead5
Downgrade AGP to 8.1.4 (fixes bitfireAT/davx5-ose#511) 2023-12-25 15:51:25 +01:00
Ricki Hirner 581622272c
Bump version to 4.3.12.1 2023-12-25 15:51:18 +01:00
Ricki Hirner 320fe1dfd8
Compile releases without build and configuration cache 2023-12-25 15:50:54 +01:00
Arnau Mora 09253a2454
Upgrade Compose Compiler to 1.5.7 (#510)
Signed-off-by: Arnau Mora <arnyminerz@proton.me>
2023-12-25 11:48:09 +01:00
Ricki Hirner 895f0a1541
Fetch translations from Transifex 2023-12-23 12:40:16 +01:00
Ricki Hirner 05360e818a
Version bump to 4.3.12 2023-12-23 12:34:06 +01:00
Ricki Hirner 5d7dea0ebf
Nextcloud Login flow: provide default DAV_PATH (/remote.php/dav) (#497) 2023-12-23 12:34:00 +01:00
Ricki Hirner 88238a2406
ConcurrentUtilsTest: fix testRunSingle_SameKey_Parallel (bitfireAT/davx5#494)
ConcurrentUtilsTest: changed testRunSingle_SameKey_Parallel to testRunSingle_SameKey_Nested
2023-12-20 14:34:53 +01:00
Ricki Hirner 357275fe83
Version bump to 4.3.12-rc.1 2023-12-20 14:02:08 +01:00
Ricki Hirner e2ac368dbc
Update dependencies 2023-12-20 14:02:08 +01:00
Sunik Kupfer 532a143cc8
Add PasswordTextField Composable (taken from bitfireAT/davx5#437)
---------

Co-authored-by: Ricki Hirner <hirner@bitfire.at>
2023-12-20 13:55:13 +01:00
Arnau Mora c087834452
Rewrite TasksFragment to Compose (#481)
* Added `CardWithImage`

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

* Added `RadioWithSwitch`

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

* Migrating to Compose

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

* Added observers

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

* Fixed functions signature

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

* Added kdoc

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

* Removed layout

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

* Color for disabled

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

* Added "don't show" behaviour

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

* Added all tasks providers

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

* Moved checkbox to correct location

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

* Fixed don't need behaviour

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

* Added theme

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

* Added todo

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

* Added support for link annotations

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

* Added support for annotated strings and urls

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

* Added tests for HTML annotation

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

* Extracted `linkStyle`

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

* Removed observers for requested

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

* Removed more observers

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

* Added multiple links test

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

* Moved `installApp` to `TasksCard`

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

* Moved all model calls to composable

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

* Removed preview since not usable

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

* Got rid of TasksFragment

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

* Fixed import

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

* Switched link color to orange

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

* Added missing copyright information

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

* Use HtmlCompat and existing Spanned.toAnnotatedString

* Added default content

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

* Renamed image content description

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

* Got rid of empty content

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

* Made summary of RadioWithSwitch composable

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

* Added missing entry point annotation

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

* Added click handling for tasks org

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

* Got rid of the preview provider

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

* Minor changes

---------

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>
2023-12-15 13:09:42 +01:00
Ricki Hirner da5b765b3a
WebdavMountsActivity: use ShareCompat.IntentBuilder (bitfireAT/davx5#490)
WebdavMountsActivity: use ShareCompat.IntentBuilder to create sharing intent
2023-12-15 12:23:00 +01:00
Ricki Hirner a937442a82
Update ical4android (updates ical4j to 3.2.14 and hopefully fixes bitfireAT/davx5#398) (bitfireAT/davx5#489) 2023-12-12 14:52:36 +01:00
Ricki Hirner c56461ea9e
WebDAV: allow other MIME types for (Ranged) GET, use coroutines for streaming (#503)
* StreamingFileDescriptor: use coroutines instead of threading

* WebDAV GET: accept any MIME type, but prefer known one
2023-12-12 14:39:43 +01:00
Ricki Hirner 769147b193
Use dav4jvm version that alway appends a trailing slash to MKCOL calls (#504) 2023-12-11 15:34:01 +01:00
Arnau Mora 8a0e1151ec
Rewrite ExceptionInfoFragment into Compose (#485)
* Migrated dialog to Compose

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

* Added extended compose icons

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

---------

Signed-off-by: Arnau Mora <arnyminerz@proton.me>
2023-12-09 12:24:36 +01:00
Ricki Hirner f2f40049b8 Update Kotlin, dependencies, Gradle 2023-12-09 11:56:00 +01:00
Ricki Hirner 7a259383be
Update dependencies, GoogleLoginFragment: use clickableText instead of legacy TextView 2023-12-06 13:14:32 +01:00
Sunik Kupfer c3e980cabf
Sync add-account button code with bitfireAT/davx5#481
---------

Co-authored-by: Ricki Hirner <hirner@bitfire.at>
2023-12-05 16:07:01 +01:00