Commit Graph

1420 Commits

Author SHA1 Message Date
Ivan Iskandar 8779b263ab Downloader: Don't queue chapters on GlobalScope (#10217)
This fixes auto-download on library update not working on certain cases.
2023-12-07 22:17:01 -05:00
arkon 734cb0be6e Show average scores in tracker search results
Closes #8280
2023-12-03 16:52:07 -05:00
arkon 1f259f9298 Fix sharing saved pages from notification
Related to #8327
Deleting doesn't seem to do anything still, but at least doesn't throw an exception.

Also removed behavior of dismissing notification after sharing/deleting pages/backups
in case you want to do something again afterwards. Users can manually dismiss the
notification whenever they want.
2023-12-03 16:31:10 -05:00
arkon ccadfc8fe5 Force recreate download index cache on upgrade
Fixes #10187
2023-12-03 14:58:08 -05:00
arkon 3aead3a2a9 Clean up startDownloadNow function a bit
Fixes #9330, I think. If it was even still an issue.
2023-12-03 14:26:44 -05:00
arkon 6a48fed170 Remove storage permission check when manually creating backups
Co-authored-by: jmir1 <jmir1@users.noreply.github.com>
2023-12-03 14:25:09 -05:00
arkon e5263d0345 Handle content URIs for covers
Co-authored-by: jmir1 <jmir1@users.noreply.github.com>
2023-12-02 14:44:41 -05:00
Ivan Iskandar 24e1b4034e Move workers to foreground service context a bit more safely (#10202)
The system will crash the app if the worker that calls setForeground() finished
before the service runner be able to call Service.startForeground(). This edge
case is not handled by WorkManager and there is no way to check if the required
calls are done.

So here we suspend the worker by an arbitrary duration assuming the transition
to foreground service is done by then.
2023-12-02 11:46:59 -05:00
arkon 82d9ae31bd Set foreground service types for library update jobs 2023-12-02 11:20:48 -05:00
Ivan Iskandar 8ce8b60092 Migrate downloader service to WorkManager (#10190) 2023-11-29 16:34:07 -05:00
arkon e41668862f Ignore casing when looking for some files/folders 2023-11-28 08:59:34 -05:00
arkon a74a689c90 Update UniFile
Which has more correct nullability for some methods and case insensitivity for listFiles where possible.
2023-11-27 22:21:40 -05:00
arkon 27c4db752c Actually use configured storage location for local source
Fixes #10178
2023-11-26 16:24:37 -05:00
arkon 46aeab9a7a Add extensions for handling UniFile name/file extensions 2023-11-26 16:04:37 -05:00
arkon f365b53a0f Move automatic backups from /backup/automatic to /autobackup
Removes the need to try to create child folders, which simplifies things.
2023-11-26 16:04:25 -05:00
Saud-97 d4dfa9a2c2 Anilist decode item description HTML (#10181) 2023-11-26 10:16:06 -05:00
arkon 21ae04d25d Minor download location cleanup 2023-11-25 16:51:32 -05:00
AntsyLich ba10093ddc Library update notification changes (#10175)
Don't round up notification percentage. Why show 100% when stuff is still updating.

Show same notification when hide notification content is enabled. Just exclude manga titles.
2023-11-25 13:32:54 -05:00
arkon a5c9469698 Avoid crashing if storage directory can't be read
e.g. when first launching and there's no storage permissions yet.
2023-11-25 12:40:09 -05:00
arkon 1fbf8ca079 Use unified storage location for automatic backups 2023-11-19 16:08:24 -05:00
arkon 695813ef7d Add unified storage location setting
Currently only using it as a replacement for the downloads location.
2023-11-19 16:04:28 -05:00
arkon e3b70ca08d Remove max automatic backups setting
We just always create up to 4 now to simplify it, given the addition of syncing
is going to make this section pretty busy.
2023-11-19 15:18:15 -05:00
arkon 0d1bced122 Replace remaining Android-specific strings
Also renaming the helper composables so it's a bit easier to find/replace everything
in forks.
2023-11-18 19:41:33 -05:00
arkon 46e734fc8e Migrate to multiplatform string resources (#10147)
* Migrate to multiplatform string resources

* Move plurals translations into separate files

* Fix lint check on generated files
2023-11-18 13:54:56 -05:00
arkon 336221a972 Use immutable collections in more places 2023-11-11 22:44:12 -05:00
arkon 00b2853d3d Convert create backup dialog to a screen
Allows us more flexibility in adding more options/explanations in the future.
2023-11-05 17:22:08 -05:00
AntsyLich b97aa23548 Implement scanlator filter (#8803)
* Implement scanlator filter

* Visual improvement to scanlator filter dialog

* Review changes + Bug fixes

Backup not containing filtered chapters and similar issue fix

* Review Changes + Fix SQL query

* Lint mamma mia
2023-11-05 10:34:35 -05:00
arkon 4502902fb0 Clean up reading mode / orientation enum classes
Categorizing the reading modes so we can implement a better
selection UI.
2023-11-05 10:01:19 -05:00
arkon 953f5fb025 Lint fixes 2023-11-05 09:14:57 -05:00
arkon 4f3a0b3523 Postpone Android 8 requirement 2023-11-05 09:08:17 -05:00
arkon 1d144e6767 Restrict line length with ktlint 2023-11-04 23:28:41 -04:00
arkon 056dbaefda Minor cleanup 2023-11-04 23:21:24 -04:00
arkon 3a15c6b843 Show EOL message if update check no-ops due to unsupported Android version 2023-11-04 20:26:47 -04:00
arkon db20d04c4b No-op app update checks for Android < 8
This effectively makes it the last release for the older Android versions.
2023-11-04 19:41:00 -04:00
arkon c5e8c9f01f Revert "Require Android 8+"
This reverts commit 64c50c1283.

Forgot we need to manage app update checks manually...
2023-11-04 19:36:29 -04:00
arkon 64c50c1283 Require Android 8+
Given that the next stable version of Chrome (120) will require Android 8+, it's
inevitable that the WebView functionality will gradually break. As always, newer
OS versions are recommended for better support with evolving Internet technologies.

According to https://apilevels.com/, Android 8+ still covers 93.7% of Android users.
2023-11-04 19:21:46 -04:00
arkon 69223df27c Move tracker binding logic to interactor 2023-11-04 17:05:38 -04:00
arkon 4b225a4ff1 Revert "Always save pages/covers in subfolders"
This reverts commit 8568d5d6c3.

Closes #10052
2023-11-04 16:46:02 -04:00
Caleb Morris 5d91b77c93 Added library sort by mean Tracker score (#10005) 2023-11-04 15:31:59 -04:00
arkon aca36f9625 Maybe fix foreign key error during some backup restores 2023-11-01 22:52:00 -04:00
arkon ce7bf396eb Don't include "app state" preferences in backups 2023-10-29 12:24:02 -04:00
arkon 1aa5222c99 Record time when last automatic backup was created
Closes #3474
2023-10-29 12:03:46 -04:00
arkon ce5e10be95 Clean up chapter restoring logic a bit 2023-10-29 11:43:06 -04:00
arkon eed57b80be Replace AppUpdateService with a WorkManager job
Fixes #7773

Co-authored-by: Jays2Kings <Jays2Kings@users.noreply.github.com>
2023-10-27 15:45:18 -04:00
AntsyLich 17b90d2491 Yeet app update download progress notification on complete (#10071) 2023-10-26 12:30:40 -04:00
arkon 9ecec5d468 Set saved image date modified value to current time
Fixes #10070
2023-10-26 08:35:51 -04:00
Caleb Morris 3a35c13575 Decoupled Tracker Interface (#10042)
Split out Tracker to interface and created simple dummy instance for previews
2023-10-21 17:10:34 -04:00
arkon 489d22720a Refresh tracks before updating progress
Closes #1652

Also removes the ability to trigger refreshes for the entire library or
as part of a library update as it should no longer be needed. Opening
the tracking sheet already refreshes the data too, so stale data is
irrelevant there.

Also closes #4775 since it would no longer be relevant.
2023-10-21 10:20:35 -04:00
arkon 8626a55fe4 Make text clickable when removing item from tracker 2023-10-18 22:50:09 -04:00
Vlasov Roman 8f3681d79f Change Shikimori domain from ".me" to ".one" (#10027) 2023-10-18 22:49:45 -04:00