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
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
5065840731
Fix build
2023-12-31 16:31:30 -05:00
arkon
10b8924d43
Use Material3 version of AboutLibraries
...
(cherry picked from commit 74931fad861abf19f26b51d9395642b58ee34e12)
2023-12-31 15:09:08 -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
0432f4105e
Dedupe common LazyColumn with action at bottom layout
...
(cherry picked from commit 1cdaa761b7b7d08eaf2f1d829de1c998e75c7c2c)
# Conflicts:
# app/src/main/java/eu/kanade/presentation/more/settings/screen/advanced/ClearDatabaseScreen.kt
2023-12-31 02:01:54 -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
a2d202a2cf
Shorten restore warning message a bit
...
(cherry picked from commit f3b7eaf4a37f047abd6523b9c8ff1da73fd0ef46)
2023-12-30 18:13:51 -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
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
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
arkon
ab371a6e50
Hide private installer option for stable builds
...
(cherry picked from commit 3afcee81f454174aec110a585dba9692f2ac6175)
# Conflicts:
# app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
2023-12-30 16:37:26 -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
arkon
1ddcbea113
Simplify storage usage bar UI implementation
...
(cherry picked from commit 8939274b5cbef7cd8e0c0c0e771f1ae54025baf3)
2023-12-27 13:47:45 -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
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
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
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
18e63cafa0
Don't include settings as defaults when manually creating backup
...
(cherry picked from commit 54ba1d719e0f03db34e0d0df6c136c638c083d4f)
2023-12-24 17:00:34 -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
c36d2794bb
Minor cleanup
2023-12-24 14:39:39 -05:00
arkon
7f89587889
Don't use localized numbers for downloaded image filenames
...
Probably fixes #10258
(cherry picked from commit 19f0175a56b00afd772d5d0c4909c49371a59bbe)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
# core/src/main/java/tachiyomi/core/util/system/ImageUtil.kt
2023-12-24 14:13:22 -05:00
arkon
bb33624fb7
Whoops, accidentally made the create backup button unusable before
...
(cherry picked from commit bf3899d04a50b77ad05e79b3317ac23ca2581183)
2023-12-24 14:12:04 -05:00
arkon
a9462bbfcb
Initial move of restore backup into a separate screen
...
(cherry picked from commit 9f90ee358b8bee6713ef679aef7893f44fcc8f28)
# Conflicts:
# app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
# app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/BackupRestorer.kt
2023-12-24 14:11:47 -05:00
arkon
af1bfa5888
Show MIUI warning more prominently in CreateBackupScreen
...
(cherry picked from commit 565317d99c1a7c9b0d3bd650adeb420fd8cd9cf4)
2023-12-24 14:10:07 -05:00
arkon
711ca69876
Foundations for partial restores
...
Related to #3136
(cherry picked from commit 83a67feb48c4e40994a334520c907f71d2fbf75e)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/BackupRestorer.kt
2023-12-24 14:09:59 -05:00
Ivan Iskandar
821a48e4d1
Target Android 14 (SDK 34) and add permission onboarding step
...
(cherry picked from commit 9e0068715f3ba3d1627c4b7539b90fb782f8122f)
(cherry picked from commit 13b3bec8ad2a5b883cbe5ec99da531fbaba7f50b)
2023-12-24 14:03:44 -05:00
arkon
c9fa0ce395
Split restoring logic into smaller classes
...
(cherry picked from commit cd16522805eedc73fa3ab0f8db5ee403162a020c)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupCreator.kt
# app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/MangaRestorer.kt
2023-12-24 14:02:52 -05:00
Ivan Iskandar
4c634910f7
Refactor onboarding steps
...
(cherry picked from commit 2ca3ab077192a7e5e2e7a5fb00c303a5a633372e)
(cherry picked from commit 65e1e2cf4f76b48575fe33dd0848b38720a55744)
2023-12-24 13:36:03 -05:00
arkon
b0d7a611f7
Fix download indexing with changed storage locations
...
Fixes #10218
(cherry picked from commit 36f400d54281dd697f1492befc8241eaf31e31ab)
# Conflicts:
# app/build.gradle.kts
# app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
2023-12-24 13:29:46 -05:00
arkon
17b0185a2b
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)
(cherry picked from commit cc56fde9fe6408e5dca4c752acc2ba6478291cce)
2023-12-24 12:53:13 -05:00
arkon
314eb0a02e
More onboarding screen additions 2: Electric Boogaloo
...
(cherry picked from commit f7c5b4243533374f6751055fd4bc037e022db8a8)
# Conflicts:
# app/build.gradle.kts
2023-12-24 12:49:54 -05:00
arkon
40f8910cbe
More onboarding screen additions
...
(cherry picked from commit e3404cd3d3c096e33c534143b24dbdce5b6e9bf9)
2023-12-24 12:48:48 -05:00
arkon
d71b1219b4
Add basic onboarding screen ( #10199 )
...
(cherry picked from commit 8b57169e924aa75a7cb9b49bb3bbce5e83a087da)
# Conflicts:
# app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
# app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAppearanceScreen.kt
2023-12-24 12:48:37 -05:00
arkon
364e4fe41b
Migrate to some newer date/time APIs
...
(cherry picked from commit ab9a26f6bd2855d13ff663cf52dfe4ecb01fda1d)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
# domain/src/main/java/tachiyomi/domain/updates/interactor/GetUpdates.kt
2023-12-24 12:47:39 -05:00
arkon
66a04c4757
Try to fall back to showing URI for storage location if concrete file path isn't available
...
Closes #9977
(cherry picked from commit 0c860c0fe99f2a9b18065e36a35cc46fad265da6)
2023-12-24 12:43:05 -05:00
arkon
209da5eb04
Bump dependencies
...
(cherry picked from commit 5dda32bb8143abe4e495fb7a5693299ac9f4da41)
# Conflicts:
# .github/workflows/build_pull_request.yml
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/MigrationFlags.kt
2023-12-24 11:54:51 -05:00
arkon
ab63f6036c
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.
(cherry picked from commit 4fcdde4913df28bbd678ae1be4a2971ed77179d3)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/RarPageLoader.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ZipPageLoader.kt
# source-local/src/androidMain/kotlin/tachiyomi/source/local/LocalSource.kt
2023-12-24 11:46:47 -05:00
arkon
44fb882654
Ignore casing when looking for some files/folders
...
(cherry picked from commit e41668862f6d3362d7de030692d052ae653364e3)
2023-12-23 23:30:37 -05:00
arkon
c2d2295149
Update UniFile
...
Which has more correct nullability for some methods and case insensitivity for listFiles where possible.
(cherry picked from commit a74a689c9048cc67f4854678fbfefa361631a5e7)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
# source-local/src/androidMain/kotlin/tachiyomi/source/local/image/LocalCoverManager.kt
2023-12-23 23:30:24 -05:00
arkon
22cc0de7cd
Adjust stats overview icons
...
Closes #9865
Still sort of weird, but the icons are now always aligned.
(cherry picked from commit 9ce0bc6b5fbdf8b8008adb1feae21b8346223453)
2023-12-23 23:23:59 -05:00
arkon
ab57dd7def
Actually use configured storage location for local source
...
Fixes #10178
(cherry picked from commit 27c4db752ce599a99876021c1019cfb549153a30)
# Conflicts:
# app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
2023-12-23 23:23:40 -05:00
arkon
a37da0d1b7
Add unified storage location setting
...
Currently only using it as a replacement for the downloads location.
(cherry picked from commit 695813ef7d922bc3d9ad5bccef8a466075caa57b)
2023-12-23 22:44:44 -05:00