5280 Commits

Author SHA1 Message Date
Jobobby04
d669a764a4 Build fixes 2024-01-09 18:51:54 -05:00
arkon
bd96864895 Avoid hard crash if cached image file was already deleted
Closes #9720

(cherry picked from commit 3ea026e3116a77fd58bf656e1ecdb5e1ab6de28a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonPageHolder.kt
2024-01-09 18:51:51 -05:00
arkon
3e561f7b67 Normalize some locale names
(cherry picked from commit 36f307e3bbf5a52277fba3033a08201cd37f779a)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/GlobalSearchScreen.kt
2024-01-09 18:51:50 -05:00
arkon
e873557066 Fix RAR loading
Closes #10302

(cherry picked from commit 80b7d14af195147b52e38765fdb3adf4b9030dd4)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/RarPageLoader.kt
2024-01-09 18:51:47 -05:00
arkon
8adad251a0 Avoid showing WebView button in reader errors if page isn't actually from web
(cherry picked from commit bbd8098a61ca6ab79c4a37f0f529c5c01632835b)
2024-01-09 18:51:46 -05:00
arkon
1ec0a22e37 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

(cherry picked from commit 9c899e97a97480545d022974ffd3ea1248634155)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBrowseScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
2024-01-09 18:51:37 -05:00
arkon
aaeac1b10c Fix lint error
(cherry picked from commit 556f5a42a77fc355819919f91a9436902b25c789)
2024-01-09 18:51:36 -05:00
arkon
cc1855e06b Revert "Implement predictive back animation (#10273)"
This reverts commit 9c120e623193271971448fb03665a73dff4f85cb.

Potentially too buggy for a stable release for now.

(cherry picked from commit dba5e6fbfdf65f0482f681b22defb759e9b32437)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/home/HomeScreen.kt
2024-01-09 18:51:33 -05:00
Jobobby04
ea03e28079 Fix firebase on dev builds 2024-01-09 18:51:32 -05:00
arkon
24a56a5529 Support external repos
Largely taken from SY.

Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>
(cherry picked from commit c17ada2c98041877ab901efb9b03497130ead34a)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/source/interactor/CreateSourceRepo.kt
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionDetailsScreen.kt
#	app/src/main/java/eu/kanade/presentation/category/SourceRepoScreen.kt
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryDialogs.kt
#	app/src/main/java/eu/kanade/presentation/category/components/repo/SourceRepoContent.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBrowseScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionGithubApi.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/model/Extension.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/category/CategoryScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
2024-01-09 18:51:30 -05:00
arkon
b677f81fb1 Change fetch interval action to show days until next expected update
(cherry picked from commit 32bed9b041d76a6bac699c56c78d1692b71dfc0b)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	domain/src/main/java/tachiyomi/domain/manga/model/Manga.kt
2024-01-09 18:50:52 -05:00
arkon
cf5bb4dc9b 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.

(cherry picked from commit e0a0942015accc217a881739abf8df9d74eab6da)
2024-01-09 18:50:51 -05:00
Jobobby04
59f8e98d69 A warning is enough, no need to reset on cold starts 2024-01-09 18:50:48 -05:00
arkon
07b0c59842 Force users to retrust unknown extensions on cold starts
(cherry picked from commit 493da5c3f471b53615e80411d942fc2c92a33ec5)
2024-01-09 18:50:46 -05:00
arkon
c8ca321be2 Remove tmp chapter files after exiting reader
(cherry picked from commit 4e221397ceaec334307546920b3e1168e56f5433)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/di/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
#	source-local/src/androidMain/kotlin/tachiyomi/source/local/LocalSource.kt
2024-01-09 18:50:45 -05:00
arkon
d00ddac06f Fix extension settings icon trying to install update instead of opening details
(cherry picked from commit b5e3f429fc08e3743af57d7babc084525bf3cb59)
2024-01-09 18:50:39 -05:00
arkon
25e49a6b3d Try to show actual path in invalid location downloader notification
Instead of the class/hashCode, which doesn't mean much to a user.

(cherry picked from commit 83130f9bf964dfce512c77803f8b5bcfb90c8f08)
2024-01-09 18:50:38 -05:00
arkon
e90f656bb6 Prevent creating backups with no valid options selected
(cherry picked from commit 6f34c5e894beb2ac172d00c3d08a43e6388486b3)
2024-01-09 18:50:37 -05:00
Jobobby04
75f6b0eb40 Hopefully fixes crashlytics 2024-01-09 18:50:35 -05:00
arkon
f27b8b2ded 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.

(cherry picked from commit 6ab8e1e73dbcc65d693dd2ed2680c950139dadde)
2023-12-31 12:53:30 -05:00
arkon
15d21c1151 Show next expected update in interval dialog
Related: #9793
(cherry picked from commit 54f4711f7bf0f96492b49c6c9d5c6f05eaee7b59)
2023-12-31 02:01:19 -05:00
arkon
b72214b922 Misc refactoring
- Abstract away relative date string building
- Dedupe large update warning logic

(cherry picked from commit 3d0d5c047228f13d8a6a7d90400f4d67f2817f24)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/presentation/updates/UpdatesScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesTab.kt
2023-12-31 02:01:04 -05:00
arkon
acd0ca99ed 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

(cherry picked from commit f0a0ecfd4a5c8ee85fdcf7e92dc9a0079ef40cde)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/RestoreOptions.kt
2023-12-30 18:15:30 -05:00
arkon
4bcbddf3b2 Allow partial restores (library/settings)
Closes #3136

(cherry picked from commit 5bba7af24aa0b8c5d66baa1f26a8427ceec8a4ae)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/RestoreOptions.kt
#	core/build.gradle.kts
2023-12-30 18:13:43 -05:00
arkon
b3f0b898b2 Filter out empty source preferences when creating backups
(cherry picked from commit 32c3269291cd31f7a69a6d0c073b52223fa3e918)
2023-12-30 18:08:08 -05:00
arkon
54b9b4f548 Clean up create backup UI
(cherry picked from commit a1e84911be14d353056cc63dc79c341c06c27079)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupOptions.kt
2023-12-30 18:07:57 -05:00
arkon
d13f08ca7a Minor cleanup/address lint warnings
(cherry picked from commit 6bb77bcf1aabfcad2c4a9dd73854f3fcc6c52c89)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaBottomActionMenu.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
2023-12-30 18:06:11 -05:00
arkon
18d7c2312c Add ability to create manual backups with private preferences too
(cherry picked from commit ccec5c3efeea699124d4bb7448d6fe9718cb883f)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/data/CreateBackupScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupOptions.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/RestoreOptions.kt
2023-12-30 17:57:39 -05:00
arkon
e1afceb769 Refactor backup option flags to normal data class of booleans
(cherry picked from commit 8735836498f46f7b6dc35ff62ffb595e097d568e)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/data/CreateBackupScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupCreateFlags.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/creators/MangaBackupCreator.kt
2023-12-30 17:55:10 -05:00
arkon
c496371553 Minor exception message cleanup
(cherry picked from commit 8b65fd57519faa8119fca97febf90c5e8590c4a6)
2023-12-30 16:37:47 -05:00
arkon
fe53d7b7fb 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.

(cherry picked from commit f0710df35696c1f6cf7bb5371dfd6ad91d53fae1)
2023-12-30 16:37:37 -05:00
Ivan Iskandar
d6640bb5dd Implement predictive back animation (#10273)
For home screen tabs, Navigator screens and most dialogs

(cherry picked from commit 9c120e623193271971448fb03665a73dff4f85cb)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/home/HomeScreen.kt
2023-12-30 16:35:59 -05:00
Jobobby04
0c1db9b554 Data object 2023-12-28 14:50:51 -05:00
Jobobby04
834bc28726 Fix double pages not showing in default reading mode 2023-12-28 13:40:38 -05:00
Jobobby04
25f94e4500 Fix merged manga chapters and merged manga filtered scanlators 2023-12-27 16:30:56 -05:00
arkon
d82b2919f8 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...

(cherry picked from commit 4b208fc7ce95fb3b3746446da54351bcead0533c)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/creators/MangaBackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupFlatMetadata.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupMergedMangaReference.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupSavedSearch.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/metadata/BackupSearchMetadata.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/metadata/BackupSearchTag.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/metadata/BackupSearchTitle.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/BackupRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/restorers/MangaRestorer.kt
2023-12-27 13:59:15 -05:00
arkon
4de946ad8e 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.

(cherry picked from commit bfb0d31ff61a6609cdf8ca421d08cbb4236fc5af)
2023-12-27 13:47:55 -05:00
Jobobby04
22d8711cee Minor cleanup 2023-12-27 13:09:22 -05:00
arkon
0c8268fe7b 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

(cherry picked from commit f31bc47757b3792f92c2c8721739b5e2d91b825d)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/cache/ChapterCache.kt
2023-12-25 19:58:59 -05:00
arkon
25ab1ed7b8 Fix read duration statistic getting inflated when restoring history
(cherry picked from commit 950b4a6c907262e80aaf423d523af518b790cd32)
2023-12-25 19:47:29 -05:00
arkon
4003263828 Address some build warnings
(cherry picked from commit 2d7650537db907a4129f4a07db15950339b319e9)

# Conflicts:
#	README.md
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryDialogs.kt
#	source-api/src/commonMain/kotlin/eu/kanade/tachiyomi/source/model/SManga.kt
2023-12-25 19:47:20 -05:00
arkon
fa11413e90 Avoid crashing if loading non-read-only private extension
Fixes #10252

(cherry picked from commit 80d6d412f379ef9796b7274c13c1c03883c800d3)
2023-12-25 19:39:38 -05:00
arkon
0dc3b37e70 Minor tracking cleanups
(cherry picked from commit 6887d98f15b4b9a84230217800fba2d4ae5b186a)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/track/interactor/TrackChapter.kt
2023-12-25 19:38:14 -05:00
arkon
1d68a64e5c Some domain Track model migrations
(cherry picked from commit 6d74a86711ad17be4bebe054d88506303dd07504)
2023-12-25 19:33:32 -05:00
arkon
a96cff950a Move backup models to domain module
(cherry picked from commit 5908bd19305b3461165fcfe2da5d2217115562b9)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/creators/MangaBackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/BackupRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/restorers/MangaRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/di/AppModule.kt
#	domain/src/main/java/tachiyomi/domain/backup/model/Backup.kt
#	domain/src/main/java/tachiyomi/domain/backup/model/BackupFlatMetadata.kt
#	domain/src/main/java/tachiyomi/domain/backup/model/BackupManga.kt
#	domain/src/main/java/tachiyomi/domain/backup/model/BackupMergedMangaReference.kt
#	domain/src/main/java/tachiyomi/domain/backup/model/BackupSavedSearch.kt
#	domain/src/main/java/tachiyomi/domain/backup/model/metadata/BackupSearchMetadata.kt
#	domain/src/main/java/tachiyomi/domain/backup/model/metadata/BackupSearchTag.kt
#	domain/src/main/java/tachiyomi/domain/backup/model/metadata/BackupSearchTitle.kt
2023-12-25 19:33:22 -05:00
arkon
2238b123f9 Split up BackupCreator into smaller classes
(cherry picked from commit 1a559124eb9e029a6146bf2660cbd508941c20d4)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/BackupRestorer.kt
2023-12-24 17:11:04 -05:00
arkon
6fee96a40b Highlight restore backup setting when navigating from onboarding step
(cherry picked from commit 93cbeca5c0dbcf919bca84d7881888883e16b744)
2023-12-24 16:59:44 -05:00
Jobobby04
66a14d99c5 Fix pre-migration resetting the order 2023-12-24 15:49:48 -05:00
Jobobby04
cbb743f995 Improve page previews 2023-12-24 15:18:15 -05:00
Jobobby04
c36d2794bb Minor cleanup 2023-12-24 14:39:39 -05:00