Commit graph

6695 commits

Author SHA1 Message Date
jmir1
0e10b43e06
fix: Installing anime extensions on Android 14+ 2024-01-10 14:32:55 +01:00
jmir1
762cf29ff9
fix(backups): Add back restore logic for extension APKs 2024-01-10 14:24:36 +01:00
jmir1
3baa3ead3a
fix: Lint errors 2024-01-10 14:10:50 +01:00
jmir1
acaf5bd43e
Merge branch 'upstream/master' 2024-01-10 04:10:35 +01:00
arkon
c6601c1f94 Release v0.15.2 2024-01-08 18:17:25 -05:00
arkon
68899aea61 Disable some non-ready stuff for stable build 2024-01-08 18:16:59 -05:00
arkon
3d178737b1 Move extension repos interactors to proper package
Also retain ordering of added repos.
2024-01-08 17:15:48 -05:00
arkon
bf737cf95c Remove built-in official extension repo support 2024-01-07 23:06:17 -05:00
Naputt1
c91ec9a33b
fix Can't scroll down to the bottom of the webtoon on the last chapter (#10291) 2024-01-07 22:52:10 -05:00
Caleb Morris
a8040cb21a
[track-search] Added context menu for copy and open-in-web (#10352) 2024-01-07 22:49:51 -05:00
arkon
f60782f11f Avoid floating point precision issues when converting scores
Fixes #10343
Maybe we'll finally migrate off of those legacy models some day...
2024-01-07 17:50:14 -05:00
arkon
5854ad97e0 Do proper check for next chapter's download status when downloading ahead
Fixes #10151 (I think?)
2024-01-07 17:30:53 -05:00
arkon
4b8fa059d5 Fix external repo info banner in ExtensionDetailsScreen 2024-01-07 16:35:25 -05:00
arkon
3dc2f9a711 Add advanced setting to revoke all trusted unknown extensions 2024-01-07 16:16:26 -05:00
arkon
8033a94ee2 Trusting new extension shouldn't revoke other irrelevant extensions 2024-01-07 16:05:31 -05:00
arkon
028da099dd Add filter library by customized update frequency
Supersedes #9619

Co-authored-by: quangkieu <quangkieu@users.noreply.github.com>
2024-01-07 16:03:12 -05:00
arkon
e6c6c32d81 Fix selecting custom fetch interval not persisting sometimes 2024-01-07 15:40:53 -05:00
Luqman
bce6af62fc
Add Nord Theme (#10308)
* Add Nord Theme

* update

* update error color

* update comment
2024-01-07 15:20:08 -05:00
arkon
6510a9617a Allow permanently trusting unofficial extensions by version code + signature
Closes #10290
2024-01-07 13:35:44 -05:00
arkon
14510f1d26 Avoid jank in extensions list if install permissions already granted 2024-01-07 12:32:33 -05:00
arkon
f115edf2ea Allow deep linking to add external repo 2024-01-07 12:27:40 -05:00
arkon
8a8362203f Release v0.15.1 2024-01-07 09:52:01 -05:00
arkon
727289c8eb Allow opening .tachibk files directly with app to restore 2024-01-06 19:03:10 -05:00
arkon
9c91ddd4e3 Add link to storage FAQ in settings screen 2024-01-06 18:26:39 -05:00
arkon
3ea026e311 Avoid hard crash if cached image file was already deleted
Closes #9720
2024-01-06 18:15:17 -05:00
arkon
36f307e3bb Normalize some locale names 2024-01-06 18:14:45 -05:00
arkon
89678ebb17 Show non-localized language names too in app language selection 2024-01-06 17:53:31 -05:00
arkon
80b7d14af1 Fix RAR loading
Closes #10302
2024-01-06 17:09:38 -05:00
arkon
bbd8098a61 Avoid showing WebView button in reader errors if page isn't actually from web 2024-01-06 16:55:50 -05:00
arkon
f8ef0f143b Add link to storage guide during onboarding step 2024-01-06 13:33:56 -05:00
arkon
c4ceda59df Release v0.15.0 2024-01-06 09:50:56 -05:00
arkon
8321ff6000 Bump dependencies 2024-01-05 23:21:19 -05:00
arkon
9c899e97a9 Clean up external repos
- Accept full URL as input instead, which allows for non-GitHub
- Remove automatic CDN fallback in favor of adding that as an external repo if needed
2024-01-05 23:13:16 -05:00
arkon
556f5a42a7 Fix lint error 2024-01-05 17:49:19 -05:00
arkon
850813820c Disable customized fetch intervals for stable builds for now
Until some of the issues get ironed out.
2024-01-05 17:39:12 -05:00
arkon
dba5e6fbfd Revert "Implement predictive back animation (#10273)"
This reverts commit 9c120e6231.

Potentially too buggy for a stable release for now.
2024-01-05 17:37:04 -05:00
arkon
c17ada2c98 Support external repos
Largely taken from SY.

Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>
2024-01-05 17:28:08 -05:00
arkon
32bed9b041 Change fetch interval action to show days until next expected update 2024-01-05 17:08:39 -05:00
arkon
e0a0942015 Remove custom extension readme/changelog URLs
These were barely used/maintained, so just killing them.
Changelog menu item still exists to take you to the relevant git history.
2024-01-05 17:07:49 -05:00
arkon
493da5c3f4 Force users to retrust unknown extensions on cold starts 2024-01-05 08:53:45 -05:00
arkon
4e221397ce Remove tmp chapter files after exiting reader 2024-01-04 18:02:40 -05:00
arkon
22589a9c30 Fix next expected update being weird number sometimes
Occurs if manga.lastUpdate has never been set yet.
2024-01-01 18:32:21 -05:00
arkon
ec478cbb1b Defer ACRA reporting until device is idle/not low battery/on unmetered network 2024-01-01 09:53:21 -05:00
arkon
b5e3f429fc Fix extension settings icon trying to install update instead of opening details 2023-12-31 23:46:07 -05:00
arkon
83130f9bf9 Try to show actual path in invalid location downloader notification
Instead of the class/hashCode, which doesn't mean much to a user.
2023-12-31 23:33:10 -05:00
arkon
6f34c5e894 Prevent creating backups with no valid options selected 2023-12-31 09:33:19 -05:00
arkon
74931fad86 Use Material3 version of AboutLibraries 2023-12-31 08:57:11 -05:00
arkon
6ab8e1e73d Don't use reflection for handling backup options as boolean array
Wasn't working correctly in release build, _probably_ because of R8 despite kotlin-reflect
shipping with Proguard rules and us already keeping all Tachiyomi classes.
2023-12-30 20:29:12 -05:00
arkon
1cdaa761b7 Dedupe common LazyColumn with action at bottom layout 2023-12-30 20:08:28 -05:00
arkon
54f4711f7b Show next expected update in interval dialog
Related: #9793
2023-12-30 19:15:52 -05:00
arkon
3d0d5c0472 Misc refactoring
- Abstract away relative date string building
- Dedupe large update warning logic
2023-12-30 18:33:35 -05:00
arkon
f0a0ecfd4a Allow creating backups without library entries
- In case you want a backup of just settings?
- Also disable backup options if dependent option is disabled (and fix being able to toggle disabled items)
- Also fix crash in RestoreBackupScreen due to attempt to parcelize Uri
- Make restore validation message a bit nicer
2023-12-30 16:02:36 -05:00
arkon
f3b7eaf4a3 Shorten restore warning message a bit 2023-12-30 12:16:53 -05:00
arkon
5bba7af24a Allow partial restores (library/settings)
Closes #3136
2023-12-30 12:09:55 -05:00
arkon
32c3269291 Filter out empty source preferences when creating backups 2023-12-30 10:38:32 -05:00
arkon
a1e84911be Clean up create backup UI 2023-12-30 10:36:30 -05:00
arkon
6bb77bcf1a Minor cleanup/address lint warnings 2023-12-30 10:30:32 -05: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
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
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
Claudemirovsky
4697f5b9d2
fix(app): Don't ignore the anime side in SEARCH/SEND intents + fix intent labels (#1243) 2023-12-21 12:35:15 +01:00
arkon
c10cd6c808 Prevent backing out from initial onboarding 2023-12-17 18:30:43 -05:00
Claudemirovsky
4703276a44
refactor: run ktlintFormat task 2023-12-17 12:08:56 -03: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
c563aecdd6
feat(app): Proper check for when to navigate to tracker settings from tracking action 2023-12-17 11:49:00 -03:00
arkon
91dba13104
refactor: Clean up some text alpha modifiers 2023-12-17 11:44:28 -03:00
arkon
77facc1d2c
refactor(app): Clean up category restoring logic 2023-12-17 07:28:50 -03:00
arkon
6135798471
feat(app): Add ability to open available extension websites in WebView
Closes #8628
2023-12-17 06:21:41 -03:00
arkon
637f11652b
fix: 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-17 05:30:43 -03:00
arkon
0eb8ff0361
chore: 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-17 05:28:51 -03:00
arkon
2ac867d9d0
fix(app): Fix settings screen crashing when saving state 2023-12-17 05:13:25 -03:00
arkon
d99755ab2a
feat(app): 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-17 05:13:25 -03:00
arkon
922293bd87
feat(app): Always show trackers action in MangaScreen
Goes to tracker settings to log in if none are set up.
2023-12-17 05:13:24 -03:00
arkon
6450eb775f
fix(app): Fix next local chapter not being indicated as downloaded in transition 2023-12-17 05:13:23 -03:00
arkon
cfb77a5e98
feat: More onboarding screen additions 2: Electric Boogaloo 2023-12-17 05:13:20 -03:00
arkon
a9e2ebbb95
feat: More onboarding screen additions 2023-12-17 05:13:19 -03:00
arkon
a3c6da2dac
feat: Add basic onboarding screen (#10199) 2023-12-17 05:13:18 -03:00
arkon
1a8b2811b8
refactor: Migrate to some newer date/time APIs 2023-12-17 04:28:08 -03:00
Ivan Iskandar
d466ba2b1d
fix(Downloader): Don't queue chapters on GlobalScope (#10217)
This fixes auto-download on library update not working on certain cases.
2023-12-17 03:24:56 -03:00
arkon
c94774eba3
feat: Show average scores in tracker search results
Closes #8280
2023-12-17 03:24:55 -03:00
arkon
303dd2ef44
fix(app): 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-17 02:44:13 -03:00
arkon
fe07064c1b
refactor(app): Minor cleanup 2023-12-17 02:44:12 -03:00
arkon
46d51beb33
fix(app): Try to fall back to showing URI for storage location if concrete file path isn't available
Closes #9977
2023-12-17 02:44:12 -03:00
arkon
d9594919aa
refactor(app): Migrate ReaderColorFilterView to Compose 2023-12-17 02:44:12 -03:00
arkon
8f3aee8c01
fix(app): Force recreate download index cache on upgrade
Fixes #10187
2023-12-17 02:44:11 -03:00
arkon
cf4ddbf6a5
refactor(app): Clean up startDownloadNow function a bit
Fixes #9330, I think. If it was even still an issue.
2023-12-17 02:44:11 -03:00
arkon
f5767adcd8
chore: Bump dependencies 2023-12-17 02:44:10 -03:00
arkon
082bf77d30
feat(app): Replace ReaderOrientation icon resources 2023-12-17 02:44:10 -03:00
arkon
5e97306ddf
chore(app): Remove unused resources 2023-12-17 02:44:01 -03:00
arkon
e92943a1a0
chore: Bump dependencies 2023-12-17 01:28:44 -03:00
Ivan Iskandar
1f7ae8e7bb
feat(app): Migrate downloader service to WorkManager (#10190) 2023-12-17 01:26:29 -03:00
Ivan Iskandar
8acb3887b2
feat(app): HomeScreen: Add static key for TabNavigator (#10191)
Fixes incorrect tab selection after process death
2023-12-17 01:26:28 -03:00
arkon
d0743ed0e1
fix(app): Revert overridePendingTransition refactorings 2023-12-17 01:26:28 -03:00
arkon
db2247d905
fix(app): Set foreground service types for library update jobs 2023-12-17 00:06:47 -03: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
LuftVerbot
0a3f04ce4e fix(app): Alignment with Tachiyomi Part 2
Second Commit to align Aniyomi with Tachiyomi
2023-12-16 17:21:44 +01: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
LuftVerbot
5eed99f1cc fix(app): Alignment with Tachiyomi
First Commit to align Aniyomi with Tachiyomi
2023-12-16 12:57:56 +01: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
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
LuftVerbot
82ba1673f1 fix(util): Readd App version in crashlog 2023-12-09 13:08:05 +01:00
arkon
ab9a26f6bd Migrate to some newer date/time APIs 2023-12-08 23:11:53 -05:00