Commit Graph

5932 Commits

Author SHA1 Message Date
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
arkon
4fcdde4913 Remove storage permissions
Requires adjusting some file reading to first copy to a temporary file
in cache that we have permissions to read from. This is only applicable for things
like ZIP files where we need an actual File rather than just some Android content
URI shenanigans.
2023-11-28 22:50:30 -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
d85a76484c Revert "Show copied to clipboard toast on Samsung devices even if Android 13+"
This reverts commit bf524595e2.

Apparently it shows a toast, but I don't see it?
2023-11-27 09:06:43 -05:00
arkon
9ce0bc6b5f Adjust stats overview icons
Closes #9865
Still sort of weird, but the icons are now always aligned.
2023-11-26 18:45:16 -05:00
arkon
bf524595e2 Show copied to clipboard toast on Samsung devices even if Android 13+
Since OneUI didn't implement the AOSP thing.
2023-11-26 16:36:42 -05:00
arkon
27c4db752c Actually use configured storage location for local source
Fixes #10178
2023-11-26 16:24:37 -05:00
arkon
ca54984344 Use UniFile for local source file handling 2023-11-26 16:04: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
cf9e60fd92 Use unified storage location for local source 2023-11-25 17:06:15 -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
KaiserBh
adf1f87364
fix: Timeout issue for people running reverse proxy.
It seem like the 10 second timeout for POST gives timeout for nginx users that uses reverse proxy and this should fix it.

Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-22 23:15:23 +11:00
KaiserBh
2a69a1eeb0
Merge branch 'master' of https://github.com/tachiyomiorg/tachiyomi into sync-part-final 2023-11-22 23:14:24 +11:00
arkon
bcc42dd259 Exclude some more app state preferences from backups 2023-11-21 22:11:44 -05:00
Ivan Iskandar
d59cb9c1e3
Migrate to M3 pull-to-refresh (#10164) 2023-11-21 22:09:41 -05:00
AntsyLich
3006604922
MangaScreen: Fix close in action mode exists from screen (#10160)
* MangaScreen: Fix close in action mode exists from screen

* L
2023-11-21 22:08:41 -05:00
KaiserBh
b3ee510050
refactor: add group category for sync.
Adding group gives more clarity.

Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-20 18:08:13 +11:00
KaiserBh
d180d1de45
fix: upstream conflict.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-20 17:57:04 +11: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
KaiserBh
3839d58289
chore: lint
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-20 07:50:56 +11:00
KaiserBh
389d40ab41
Merge branch 'master' of https://github.com/tachiyomiorg/tachiyomi into sync-part-final 2023-11-20 07:49:10 +11:00
KaiserBh
976841605e
refactor: remove the redundant syncPrefs
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-20 07:45:39 +11:00
KaiserBh
90cceeb040
refactor: localized
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-20 07:31:54 +11: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
8857b7e0c1 Use custom threshold for what's consider a low RAM device 2023-11-19 15:10:26 -05:00
arkon
4a7c20f5a0 Add "Rotate wide pages to fit" for webtoon reader too
Closes #1977
2023-11-19 15:03:54 -05:00
KaiserBh
14bc550a24
refactor: write into cache instead of file.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-20 06:59:09 +11:00
KaiserBh
44946d1aec
refactor: remove not needed old broken sources
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-20 06:54:59 +11:00
arkon
29368fc953 Fix searchbar style
Also address some Compose lint warnings.
2023-11-19 14:49:40 -05:00
KaiserBh
235b03bcba
refactor: remove the random delay!
Chances of conflict is pretty low since it's saved in ms so can just remove it.

Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-20 06:18:57 +11:00
KaiserBh
d17aa201d5
refactor: use by remember and private the functions.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-20 06:02:51 +11:00
KaiserBh
389336b823
refactor: move it into it's own function and use data and storage label.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-20 05:53:22 +11:00
arkon
0696e4bce0 Slightly shrink continue reading button size 2023-11-19 11:59:40 -05:00
Ivan Iskandar
255ed50685
Migrate XML themes to Compose (#10152) 2023-11-19 11:25:39 -05:00
KaiserBh
1a185375b7
chore: lint
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-19 20:00:25 +11:00
KaiserBh
1c52a055f4
fix: upstream conflict.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-19 19:58:51 +11:00
KaiserBh
be363807e6
fix: upstream conflict.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-19 19:34:37 +11: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
KaiserBh
383bfc5dde refactor: Make sure to remove trim '/'
The host url for syncyomi have to be http://[ip]:[port] or https://[url] if there is trailing whitespace or '/' It will error since the api will be called like this https://example//api/download which then return html instead of json since it tries to go to the page instead of hitting the api.
2023-11-19 04:10:16 +11:00
Ivan Iskandar
69aa13bc56
Remove animateItemPlacement modifier usage (#10146) 2023-11-18 08:39:08 -05:00
KaiserBh
25285e7b66
Merge branch 'master' into sync-part-final 2023-11-18 17:08:15 +11:00
arkon
2c032ff70d Address more Compose lint warnings 2023-11-17 09:46:13 -05:00
KaiserBh
6d54953580
Merge branch 'master' into sync-part-final 2023-11-18 00:10:28 +11:00
arkon
0af4703b78 Migrate to standard M3 TabIndicator 2023-11-16 09:16:24 -05:00
Ivan Iskandar
9ec0f73e87
Migrate deprecated progress indicator components (#10142) 2023-11-16 09:01:45 -05:00
Ivan Iskandar
f9fb034330
Migrate deprecated tooltip components (#10141) 2023-11-16 09:01:12 -05:00
arkon
6eb5a25ea1 Bump dependencies 2023-11-15 22:30:10 -05:00
KaiserBh
d73f535eef
chore: update import!
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-14 17:50:53 +11:00
KaiserBh
846a11ab81
chore: update import!
Use the new import for SyncData.

Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-14 17:49:11 +11:00
KaiserBh
dac08ba3da
refactor: Move SyncData to SyncService.kt
Since it only contains a single class doesn't need to be in it's own package.

Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-14 17:48:10 +11:00
KaiserBh
71872ead81
refactor: clean up.
- Removed SyncDevice, device name since it's not used anymore by syncyomi server.
- Removed SyncStatus, used internally in the server doesn't need the data to be sent from tachi app.
- This way we just keep the manga data/backup that we can send to many services more generic.

Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-14 17:44:15 +11:00
KaiserBh
19227d6c5b
refactor: remove getInstant and decodeSyncBackup
Not used anymore.

Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-14 17:41:10 +11:00
KaiserBh
7ef188e23a
refactor: remove empty file
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-14 16:20:41 +11:00
KaiserBh
38609e8907
chore: lint.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-14 16:09:33 +11:00
KaiserBh
0016f1e335
fix: merge conflict.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-14 14:09:17 +11:00
KaiserBh
a08a815022
Refactor: Replace Certain SyncPreferences with appStateKey
- Revised several fields to utilize `appStateKey` for enhanced state management.
- Modified notification behavior:
  - Removed frequent 'sync completed' notifications to reduce redundancy.
  - Notifications now trigger only on sync errors, streamlining user alerts.

- Users should refer to the 'last sync timestamp' to verify successful synchronizations.
- The timestamp updates only when syncs complete successfully, providing a reliable success indicator.

Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-14 14:04:05 +11:00
KaiserBh
dac701bb35 refactor: use relativeTimeSpanString
Instead of manually formatting, use the relativeTimeSpanString function.
2023-11-14 00:30:22 +11:00
arkon
336221a972 Use immutable collections in more places 2023-11-11 22:44:12 -05:00
arkon
3c3b09209c Use immutable collections in presentation-widget module 2023-11-11 18:31:27 -05:00
arkon
4a6571d310 Minor cleanup 2023-11-11 18:25:27 -05:00
arkon
cb67f1de52 Add Compose lint checks
Still need to address most of them though.
2023-11-11 18:13:44 -05:00
KaiserBh
67b93bb177
chore: lint.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-11-10 00:16:33 +11:00
KaiserBh
d0eaf5e3cb chore: merge upstream. 2023-11-09 23:37:56 +11: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
d7442d771b
ScanlatorFilterDialog: Fix crash when no scanlator (#10111) 2023-11-05 15:20:54 -05:00
arkon
3a8aa3e8cd Group mode dialogs together in bottom reader bar 2023-11-05 11:52:05 -05:00
arkon
9e67abcc8a Add separate default/apply buttons to reading mode/orientation selection dialogs
Related to #3453
2023-11-05 11:36:03 -05:00
AntsyLich
d0bcd30909
Trim Chapter scanlator value (#10108) 2023-11-05 11:06:20 -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
e6ca54fd04 Replace custom preview annotation 2023-11-05 10:34:19 -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
Ivan Iskandar
5f34539525
MangaScreen: Adjust "missing chapter count" item list styling (#10105)
Text style to labelMedium and set secondary alpha to the whole row
2023-11-05 09:15:51 -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
4146c4c31d Ensure page indicator texts are centered
Maybe fixes #9976
2023-11-04 17:50:33 -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
arkon
8644d90bd4 Bump dependencies 2023-11-04 16:11:43 -04:00
Ota
f30ab56fd0
New alphabetical chapter sort (#10073)
* added alphabetical chapter sorting

* Deleted sort_by_alphabet and re-utilized action_sort_alpha

* Accidentally deleted wrong string. Now solved

* Accidentally deleted wrong string. Now solved

Deleted sort_by_source instead of sort_by_alphabet in strings.xml.
Now reverted.

* Alphabetical sorting now uses Collator

* Clean up repeated Collator instances

---------

Co-authored-by: arkon <eugcheung94@gmail.com>
2023-11-04 15:47:32 -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
AntsyLich
6d538db5f2
Show missing chapter count between two chapters in chapter list (#10096)
* Show missing chapter count between two chapters in chapter list

Closes #8460

* Fix crash

* Lint

* Review changes

* Lint
2023-11-01 22:18:19 -04:00
Eshlender
b3d7c92475
Text on tabs Overflow Ellipsis (#10095)
* Update TabbedDialog to TabbedScreen

* clean
2023-11-01 22:17:17 -04:00
Eshlender
d862d83511
Combining manga information into a function (#10093)
* Combining manga information into a function

* clean space

* indexes

* context

* clean

* textAlign for Tablet Mode
2023-11-01 09:01:38 -04:00
Howard Wu
8a1625ec79
buildDir deprecated, use layout.buildDirectory instead (#10097)
gradle/gradle#20210
gradle/gradle#24820
2023-10-31 22:14:31 -04:00
arkon
2ee895ee3c Use same icon as chapter list items to indicate downloaded chapter in reader transitions 2023-10-31 18:05:37 -04:00
arkon
cb8ea5eab0 Add basic storage usage info to "Data and storage" settings screen 2023-10-29 18:18:56 -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
298c49f3ab Abstract out library last updated timespan text
So we can reuse it for showing last automatic backup time.
2023-10-29 11:54:50 -04:00
arkon
ce5e10be95 Clean up chapter restoring logic a bit 2023-10-29 11:43:06 -04:00
arkon
4868dd2d03 Try to ensure that reader page error message is removed if image is loaded
Maybe fixes #5687
2023-10-28 17:18:42 -04:00
arkon
443d56f69b Add option to flash white screen on page change in reader for e-ink displays
Closes #2123
2023-10-28 16:21:45 -04:00
Eshlender
7457a18aee
Add icons for author and artist in MangaInfoHeader (#10079)
* Mark author and artist

* overall style

* Clean up spacing

---------

Co-authored-by: arkon <eugcheung94@gmail.com>
2023-10-28 15:46:10 -04:00
arkon
118d3b7fcc Add ability to reset chapter flags to defaults
Closes #10063
2023-10-28 15:28:39 -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
arkon
c46c39d4ae Rename "Backup and restore" settings screen to "Data and storage"
We can house more things in here in the future, like:
- A unified storage location setting (with scoped storage)
- Sync
- Disk usage info
2023-10-27 15:06:56 -04:00
arkon
d7d7a6d2fc Revert Compose update
Fixes #10069
2023-10-26 13:06:26 -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
Seishirou101
0bdd3f79d4
Add info about problematic extensions to debug logs (#10059)
* add ext info to crashlog

* add unofficial to crashlog too

* update to have header include unofficial too

* after ktlintFormat

* Clean up debug info output

---------

Co-authored-by: arkon <eugcheung94@gmail.com>
2023-10-25 22:13:46 -04:00
arkon
7dccde0930 Merge branch 'patch' 2023-10-25 12:06:41 -04:00
arkon
c8d68590db Release v0.14.7 2023-10-25 12:04:09 -04:00
arkon
94448faf97 Update website links 2023-10-25 11:58:00 -04:00
arkon
f8834ee764 Avoid opening blobs as webpages
Fixes #10060

(cherry picked from commit 548f7f415a)
2023-10-25 11:53:40 -04:00
Vlasov Roman
7c703b17d3 Change Shikimori domain from ".me" to ".one" (#10027)
(cherry picked from commit 8f3681d79f)
2023-10-25 11:52:24 -04:00
arkon
91712daee8 Use consistent extension icon URLs
Better caching between versions.

(cherry picked from commit 30f845139d)
2023-10-25 11:49:33 -04:00
arkon
8057f067b9 Handle reader app bar insets in Compose 2023-10-25 09:21:04 -04:00
arkon
548f7f415a Avoid opening blobs as webpages
Fixes #10060
2023-10-25 09:18:59 -04:00
arkon
d9c0b1ce7d Migrate reader low brightness overlay to Compose 2023-10-24 22:21:17 -04:00
arkon
0a0b686119 Add Compose previews for reading and orientation mode dialogs 2023-10-24 22:16:03 -04:00
KaiserBh
69669bcf67
Revert "refactor: remove the none/off choice default to google drive."
This reverts commit c0d43590ad.
2023-10-23 22:53:48 +11:00
KaiserBh
c0d43590ad
refactor: remove the none/off choice default to google drive.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-10-23 22:43:35 +11:00
KaiserBh
ad17884dec
chore: use the new function format to map the manga.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-10-23 19:17:11 +11:00
KaiserBh
fd63383d74
fix: conflict.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-10-23 19:02:16 +11:00
Caleb Morris
3b7ed9bc6d
Detached permission request from DiskUtil (#10051)
Being an extension on the DiskUtil couples to a class at a different abstraction
 layer without really needing to. Created PermissionRequestHelper as a place to
 put similar requests if needed in the future.
2023-10-22 19:58:16 -04:00
arkon
012854dd1e Update Voyager 2023-10-22 15:54:31 -04:00
Caleb Morris
6d1e520c6c
[dev QoL] Added AndroidStudio previews for [presentation.track] namespace (#10022)
* Created DummyTracker for use in tests and presentation previews

* Added previews for TrackerSearch

* Added previews for TrackLogoIcon

* Added preview for TrackInfoDialogSelector

* Added previews for TrackInfoDialogHome
2023-10-22 09:30:34 -04:00
Joshua Owolabi
f84868a264
Allow extensions to open manga or chapter by URL (#9996)
* open manga and chapter using URL

* removing unnnecessary logs

* Resolving comments

* Resolving comments
2023-10-21 21:44:43 -04:00
arkon
8e4cedf173 Update Compose 2023-10-21 18:09:30 -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
c53172265b Consistent labeled checkbox composable 2023-10-21 09:42:12 -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
arkon
c4ce3dd46f Update background job preferences once settings are restored
Co-authored-by: Jays2Kings <Jays2Kings@users.noreply.github.com>
2023-10-17 22:32:13 -04:00
arkon
22df12a680 Change crash log info to just have actual WebView version 2023-10-17 22:30:55 -04:00
arkon
e572abb041 Show an error if backup file URI isn't returned to app when attempting restore
Related to #10028
2023-10-17 22:25:05 -04:00
Ivan Iskandar
ea99d77fda
ExtensionLoader: Fix incorrect ext file deletion (#10026)
Ref c492efcb31
2023-10-15 22:05:35 -04:00
arkon
82a9d36df7 Minor cleanup 2023-10-14 22:46:51 -04:00
Caleb Morris
447bcb28ef
[dev QoL] Added AndroidStudio previews for [presentation.history] namespace (#10012)
* Added display preview for HistoryDialogs

* Added preview with provider for each branch for HistoryItem

* Added previews for HistoryScreen

Created in-memory preferences construct for when its needed at top-level injection

* Fixed ktlint violations
2023-10-14 22:23:11 -04:00
arkon
0be7ac5871 Bump dependencies 2023-10-14 22:22:46 -04:00
arkon
d18022c259 Migrate top reader app bar to Compose 2023-10-14 12:30:17 -04:00
arkon
5619a4c0d9 Remove remaining usages of platform-provided strings 2023-10-14 11:11:05 -04:00
Ivan Iskandar
0026f96fad
MangaSummary: Refactor to not use SubcomposeLayout (#10008) 2023-10-14 10:52:04 -04:00
Ivan Iskandar
c492efcb31
ExtensionLoader: Set read-only to private extension files (#10007) 2023-10-12 23:04:40 -04:00
arkon
c386d375de Tweak Cloudflare help message in WebView screen
Catches pages like what Shinigami is currently showing.
Also adjusts the banner to make it look more like part of the top AppBar so it
looks less like part of the webpage.
2023-10-12 22:56:33 -04:00
arkon
540fb1bb7c Use AppBar abstraction in more places 2023-10-12 22:49:21 -04:00
arkon
81448f5d01 Minor cleanup 2023-10-12 22:43:03 -04:00
arkon
7c01201055 Refactor reader bottom bar to presentation package 2023-10-12 22:42:49 -04:00
arkon
90d3dd2242 Use relative touch positions for reader tap events
Fixes #10004
2023-10-12 22:15:30 -04:00
KaiserBh
75162fbfe7
refactor: Use the new class backupCreator and backupRestorer instead of BackupManager.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-10-11 23:25:24 +11:00
KaiserBh
010352fee3
refactor: remove private as it's used by syncManager as well.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-10-11 23:23:53 +11:00
KaiserBh
6c4f1184cb
refactor: make sure the read status is taken from backup.
This way it will mark chapters as unread if it's not read and vice versa.

Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-10-11 23:23:34 +11:00
KaiserBh
2747e15953
refactor: remove private as it's used by sync.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-10-11 23:22:56 +11:00
KaiserBh
ef6da09b7e
chore: merge upstream.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-10-11 21:44:54 +11:00
arkon
97b4d1f13d Use Compose to animate bottom reader menu bars 2023-10-09 22:27:46 -04:00
arkon
b7d282235d Remove duplicated logic for binding enhanced trackers 2023-10-08 19:19:04 -04:00
Pauline
77ebc362f6
Add button to reorder categories alphabetically (#9369)
Closes #6459

Co-authored-by: arkon <arkon@users.noreply.github.com>
2023-10-08 18:55:15 -04:00
arkon
8568d5d6c3 Always save pages/covers in subfolders
Ensures that pages and covers are grouped together.
2023-10-08 17:04:02 -04:00
arkon
7ed99fbbd6 Account for skipped entries when showing large updates warning
Closes #6159
2023-10-08 16:40:17 -04:00
arkon
94cba9324c Remove beta webtoon viewer split page
This had a bunch of issues around split pages not showing up properly so things
end up appearing to be missing while reading.
It'd be more worthwhile redoing the reader viewers than trying to get this to work
properly. It'd be better to just enable the split pages on download instead.

Closes #8433
2023-10-08 16:39:45 -04:00
arkon
6dab94a937 Move backup restoring functions from BackupManager to BackupRestorer 2023-10-08 16:11:45 -04:00
arkon
0f42b9f154 Add source preferences to backups
Closes #1857

Co-authored-by: jmir1 <jmir1@users.noreply.github.com>
2023-10-08 16:02:03 -04:00
arkon
730f3a6e52 Exclude tracker credentials in backups 2023-10-08 11:07:42 -04:00
arkon
72024aa44a Add app settings to backups
This should be compatible with Aniyomi's implementation.
Related to #1857

Co-authored-by: jmir1 <jmir1@users.noreply.github.com>
2023-10-08 10:41:20 -04:00
arkon
e47f4cc177 Specify broadcast receiver export flags
Really only useful once we target Android 14, but doesn't hurt to do it now.
2023-10-07 10:03:45 -04:00
LooKeR
78aa50bb35
Reduce recomposition of MangaHeader (#9985)
* Reduce recomposition of MangaHeader

* Reuse `Modifier` for `Tags`

Reference:
https://developer.android.com/jetpack/compose/modifiers#reusing-modifiers

* Don't recalculate Read State on recomposition

* Fix Linting issue

* Optimize chapter state calculations
2023-10-06 18:24:43 -04:00
arkon
7f0f67d752 Update social media icons 2023-10-05 09:33:34 -04:00
arkon
df332860b8 Bump dependencies 2023-10-04 22:28:50 -04:00
arkon
afb1ee2200 Rename new method in ConfigurableSource to get preferences
Maybe fixes #9969
2023-09-30 14:36:06 -04:00
arkon
c8e226acb2 Tracker-related cleanup 2023-09-25 23:32:39 -04:00
arkon
86edce0d87 Bring back relative timestamp translations 2023-09-24 17:26:12 -04:00
arkon
56d2464870 Bring back simplified relative timestamp setting
Except now it's just an on/off toggle for relative up to a week.
2023-09-24 17:18:10 -04:00
arkon
5de72b7d32 Bump dependencies 2023-09-23 12:15:28 -04:00
arkon
de92b1351f Add WebView-based user agent string to debug info
Could probably use this when choosing a user agent later on.
2023-09-22 16:42:04 -04:00
arkon
77a8a4229c Fix duplicate files being created when saving pages on Android 10+ with separate folders setting enabled
Fixes #9943
2023-09-22 16:16:23 -04:00
arkon
d4290f6f59 Fix hide entries in library setting causing browse to not load
Fixes #9924
2023-09-20 23:19:00 -04:00
arkon
b08d604d2a Consistently use absolute date strings everywhere
Closes #9781
2023-09-20 22:49:15 -04:00
arkon
6663abebaf Clean up fetch interval tests a bit
Also limit the dates we look at to most recent 10 distinct dates only. Closes #9930
2023-09-17 12:06:17 -04:00
arkon
e5f83d0c6e Fix track search item not filling width if content is too short 2023-09-17 11:03:39 -04:00
arkon
f9754f4f58 Fix cut off labels in reader sheet toggles 2023-09-11 18:39:36 -04:00
arkon
8824c7dbe3 Tweak reading mode and orientation sheet designs 2023-09-10 22:36:57 -04:00
arkon
ccc9a5a052 Update website links 2023-09-10 18:16:53 -04:00
Soitora
f5e0cee36c
Change website URLs to reflect changes (#9916)
Change website URLs
2023-09-10 18:11:00 -04:00
arkon
2dd2db7225 Update to Kotlin 1.9.10 2023-09-09 14:49:04 -04:00
Joshua
3d0e750519
[Download Queue] Move series to bottom (#9918)
Added item in download queue page to move series to bottom
2023-09-09 14:01:24 -04:00
arkon
26c5d761da Add more replacement suspend functions for source APIs
These are basically 1-to-1 replacements for the existing RxJava APIs.
This will make the initial migration off of RxJava simpler. We'll
revisit the actual call flows in followup versions of the API.
2023-09-08 22:58:46 -04:00