Commit Graph

5822 Commits

Author SHA1 Message Date
KaiserBh
6466bf040a
chore: ktlint
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-12-30 21:39:15 +11:00
KaiserBh
cf58a6d871
chore: merge upstream.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-12-30 21:34:44 +11:00
arkon
ccec5c3efe Add ability to create manual backups with private preferences too 2023-12-28 17:38:37 -05:00
arkon
8735836498 Refactor backup option flags to normal data class of booleans 2023-12-28 16:44:46 -05:00
arkon
8b65fd5751 Minor exception message cleanup 2023-12-28 16:33:54 -05:00
arkon
f0710df356 Don't make install permission required during onboarding
Closes #10257

We show a warning banner in the extensions list and also rely on the system
alert popup if someone attempts to install without the permission already
granted.
2023-12-28 15:48:08 -05:00
arkon
3afcee81f4 Hide private installer option for stable builds 2023-12-28 14:55:31 -05:00
KaiserBh
8cd7774054
chore: lint
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-12-29 05:58:47 +11:00
KaiserBh
57f9aed411
Merge branch 'master' into sync-part-final 2023-12-29 05:57:56 +11:00
KaiserBh
646ec0c947
refactor
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-12-29 05:57:27 +11:00
KaiserBh
5dbeda6b65
Revert "chore: ktlint"
This reverts commit 6677c90a39.
2023-12-29 05:43:05 +11:00
KaiserBh
080192a1a5
revert: comparison clean up, simple equality check makes the restore longer.
I think when library get updated so will last_modified_at field since one of the field in the row changes and the trigger get triggered, so it's best to ignore it if the only difference is last_modified_at.

Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-12-29 04:25:17 +11:00
Ivan Iskandar
9c120e6231
Implement predictive back animation (#10273)
For home screen tabs, Navigator screens and most dialogs
2023-12-28 11:01:01 -05:00
KaiserBh
440b624903
refactor: Ktlint and replace enum.values with Enum.entries.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-12-29 02:06:43 +11:00
KaiserBh
ae8b1d8913
refactor: clean up comparison.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-12-29 00:58:40 +11:00
KaiserBh
6677c90a39
chore: ktlint
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-12-28 23:52:32 +11:00
KaiserBh
309bfd1733
refactor: SyncManager uses them as well can't be private.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-12-28 23:10:51 +11:00
KaiserBh
fbf8c46b74
refactor: tidy up and fix upstream conflicts.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-12-28 23:10:14 +11:00
KaiserBh
80570a823f
chore: merge upstream changes.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-12-28 22:48:32 +11:00
arkon
4b208fc7ce Move backup models back to main app module
I didn't realize the package name change would break compatibility with forks
that still have the old package names...
2023-12-27 13:45:44 -05:00
arkon
a9b0ac43c4 Allow deleting downloaded chapters even if source isn't available
Fixes #9160
2023-12-26 17:14:24 -05:00
arkon
fca4f25122 Always show chapter download indicators
- Local chapters are just always "downloaded", but you can't delete them from the app
- Unavailable sources show proper state so long as it's stubbed with the name still, but
  you can't download anything new
2023-12-26 17:11:26 -05:00
arkon
bfb0d31ff6 Remove skipped updates notification
Seems to cause more confusion than it's worth.
Will update the UI for the library update skip options to better
explain what they're for later.
2023-12-26 13:13:33 -05:00
arkon
8939274b5c Simplify storage usage bar UI implementation 2023-12-25 22:58:05 -05:00
arkon
4571dc6b56 Tweak page flashing
Closes #10269, maybe. I don't really have something to test with.
2023-12-25 18:13:52 -05:00
arkon
f31bc47757 Clean up storage usage info
- Show bar representation of used/total space
- Handle all mounted storages
- Also included a bunch of unrelated immutables changes, sorry
2023-12-25 18:11:22 -05:00
arkon
950b4a6c90 Fix read duration statistic getting inflated when restoring history 2023-12-25 16:35:13 -05:00
arkon
2d7650537d Address some build warnings 2023-12-25 16:31:40 -05:00
arkon
80d6d412f3 Avoid crashing if loading non-read-only private extension
Fixes #10252
2023-12-24 22:53:35 -05:00
arkon
6887d98f15 Minor tracking cleanups 2023-12-24 22:25:22 -05:00
arkon
6d74a86711 Some domain Track model migrations 2023-12-24 18:30:24 -05:00
arkon
5908bd1930 Move backup models to domain module 2023-12-24 18:01:58 -05:00
arkon
1a559124eb Split up BackupCreator into smaller classes 2023-12-24 16:56:16 -05:00
arkon
54ba1d719e Don't include settings as defaults when manually creating backup 2023-12-24 16:45:07 -05:00
arkon
93cbeca5c0 Highlight restore backup setting when navigating from onboarding step 2023-12-24 16:35:18 -05:00
arkon
19f0175a56 Don't use localized numbers for downloaded image filenames
Probably fixes #10258
2023-12-22 19:13:06 -05:00
arkon
bf3899d04a Whoops, accidentally made the create backup button unusable before 2023-12-22 09:23:00 -05:00
arkon
9f90ee358b Initial move of restore backup into a separate screen 2023-12-21 22:47:23 -05:00
arkon
565317d99c Show MIUI warning more prominently in CreateBackupScreen 2023-12-21 22:41:48 -05:00
arkon
83a67feb48 Foundations for partial restores
Related to #3136
2023-12-21 22:16:42 -05:00
KaiserBh
cc5e14088c
chore: set foreground service type for SyncDataJob
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-12-20 11:30:51 +11:00
KaiserBh
040c7a0fc1 chore: Ktlint 2023-12-20 05:08:26 +11:00
KaiserBh
7cee8288d5 refactor: fixed imports.
Fixed the imports and removed backupNotify and backupRestorer since it's separated now.
2023-12-20 05:06:13 +11:00
KaiserBh
a462b40cad refactor: added isSync to MangaRestorer
Instead of overwriting it for the backup when restoring chapters we take into account if it's sync then overwrite read status, otherwise keep the old function. Where it only mark it as a read only if the dbchapter is marked as read.
2023-12-20 05:04:46 +11:00
KaiserBh
18fb63cd01 chore: merge upstream. 2023-12-20 02:46:21 +11:00
arkon
c10cd6c808 Prevent backing out from initial onboarding 2023-12-17 18:30:43 -05:00
Ivan Iskandar
f9b57800b1
DownloadJob: Network check changes (#10242)
Mostly pulled from WorkManager
2023-12-17 09:57:55 -05:00
Ivan Iskandar
387159b5af
PackageInstallerInstaller: Fix intent used for install session (#10240)
Use explicit intent as it's a requirement when targeting v34+
2023-12-17 09:56:33 -05:00
Ivan Iskandar
09531e7f5a
MangaScreenModel: Start downloads in IO dispatcher (#10241) 2023-12-17 09:55:54 -05:00
arkon
ff3bc66055 Migrate BuildConfig to Gradle Build Files 2023-12-16 15:57:45 -05:00
Ivan Iskandar
13b3bec8ad Target Android 14 (SDK 34) and add permission onboarding step
(cherry picked from commit 9e0068715f3ba3d1627c4b7539b90fb782f8122f)
2023-12-16 15:51:56 -05:00
arkon
8aaf8df708 Set foreground service type for ExtensionInstallService 2023-12-16 12:11:19 -05:00
arkon
db3ddf07ee Set foreground service types for remaining jobs 2023-12-16 12:08:08 -05:00
arkon
cd16522805 Split restoring logic into smaller classes 2023-12-16 11:43:18 -05:00
arkon
5fec881387 Clean up history restoring 2023-12-16 11:15:09 -05:00
arkon
3ac68e810d Workaround for broken nav bar icon colors 2023-12-16 11:15:09 -05:00
Ivan Iskandar
65e1e2cf4f Refactor onboarding steps
(cherry picked from commit 2ca3ab077192a7e5e2e7a5fb00c303a5a633372e)
2023-12-16 10:59:14 -05:00
arkon
e36a2c68f1 Avoid crashing in SourcePreferencesFragment if source can't be loaded
Should probably wait for sources to definitely be loaded first, but that's
sort of a bigger change and needs to be lifecycle-aware.
2023-12-16 10:16:05 -05:00
arkon
ad3d915fc5 Skip updating unchanged chapters and tracks when restoring backup 2023-12-15 23:11:14 -05:00
arkon
36f400d542 Fix download indexing with changed storage locations
Fixes #10218
2023-12-15 18:44:37 -05:00
arkon
dd1a19745a Remove redundant job setup calls in migrations
We always set them up earlier in the migrations anyway.
2023-12-15 18:43:48 -05:00
arkon
58daedc89e Clean up manga restoring logic
Some behavior changes:
- It prioritizes new entries, then anything more recently updated
- It copies the more recently updated entry's metadata (description, thumbnail, etc.)
2023-12-14 23:26:02 -05:00
arkon
d20a8fcf13 Proper check for when to navigate to tracker settings from tracking action 2023-12-14 19:52:49 -05:00
KaiserBh
3532074a70
Merge branch 'master' into sync-part-final 2023-12-15 07:01:37 +11:00
arkon
e56bf82c31 Clean up some text alpha modifiers 2023-12-13 22:21:55 -05:00
arkon
0f9895eec8 Clean up category restoring logic 2023-12-11 22:48:42 -05:00
arkon
f776c36e70 Add ability to open available extension websites in WebView
Closes #8628
2023-12-11 22:24:33 -05:00
arkon
1ef01b53f2 Avoid starting restore job if already running
We already check in the settings screen where it's triggered, but who knows.
Also addressing some errors for method calls that require SDK 26+ (but don't
fail the build, somehow?).
2023-12-11 22:02:22 -05:00
arkon
720169dce3 Remove action to delete saved image in notification
Can just open it and delete from whatever gallery app the user has which has way
more functionality.

Closes #8327
2023-12-10 18:37:45 -05:00
arkon
0d09039e5f Fix settings screen crashing when saving state 2023-12-10 17:29:02 -05:00
arkon
cc56fde9fe Onboarding screen tweaks
- Opposite transition when going back a step
- Don't allow skipping (I don't want to deal with an unset storage location in other places)
2023-12-10 17:28:34 -05:00
arkon
3a0b3de175 Always show trackers action in MangaScreen
Goes to tracker settings to log in if none are set up.
2023-12-10 11:58:20 -05:00
arkon
47e544b710 Fix next local chapter not being indicated as downloaded in transition 2023-12-10 10:51:50 -05:00
arkon
f7c5b42435 More onboarding screen additions 2: Electric Boogaloo 2023-12-09 18:20:58 -05:00
arkon
e3404cd3d3 More onboarding screen additions 2023-12-09 17:49:35 -05:00
arkon
8b57169e92
Add basic onboarding screen (#10199) 2023-12-09 16:50:02 -05:00
arkon
ab9a26f6bd Migrate to some newer date/time APIs 2023-12-08 23:11:53 -05:00
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
KaiserBh
4b9ccb9b75
chore: merge upstream changes.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-12-05 23:53:20 +11: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
427fbfdf5e Minor cleanup 2023-12-03 15:56:51 -05:00
arkon
0c860c0fe9 Try to fall back to showing URI for storage location if concrete file path isn't available
Closes #9977
2023-12-03 15:56:45 -05:00
arkon
5b2a099203 Migrate ReaderColorFilterView to Compose 2023-12-03 15:34:52 -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
87be54aa4a Revert overridePendingTransition refactorings 2023-12-02 11:24:13 -05:00
arkon
82d9ae31bd Set foreground service types for library update jobs 2023-12-02 11:20:48 -05:00
Ivan Iskandar
e5a22eafe7
Define storage permission in manifest (#10200)
Mainly for migration process and to avoid breakage on users who doesn't
change their granular storage prefs.
2023-12-02 10:35:03 -05:00
arkon
7a52afd223 Bump dependencies 2023-12-01 22:29:51 -05:00
arkon
296201d6b7 Replace ReaderOrientation icon resources 2023-11-30 22:23:30 -05:00
arkon
162b639705 Remove unused resources 2023-11-30 22:19:38 -05:00
arkon
5dda32bb81 Bump dependencies 2023-11-29 16:55:36 -05:00
Ivan Iskandar
8ce8b60092
Migrate downloader service to WorkManager (#10190) 2023-11-29 16:34:07 -05:00
KaiserBh
73130bc3dd
chore: merge upstream changes.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-30 04:36:45 +11:00
Ivan Iskandar
8ff2c01bf2
HomeScreen: Add static key for TabNavigator (#10191)
Fixes incorrect tab selection after process death
2023-11-29 10:43:21 -05:00
arkon
e22eebfd02 Target SDK 30
Need to convert some services into WorkManager jobs before going to 31 and higher.
2023-11-28 23:02:33 -05:00