5150 Commits

Author SHA1 Message Date
Jobobby04
428fa17bfc Fix categories dialog showing group by categories
(cherry picked from commit afab9c236dda0eb3cc9892a4943c8c02bac46b75)
2023-04-16 12:35:54 -04:00
Jobobby04
f6a6dcb540 Make sure the navigator disposes after migration
(cherry picked from commit 9bde4b8b33064aa1332bb94866ada07e19d4d0b6)
2023-04-16 12:35:39 -04:00
Jays2Kings
0f2462248e Fix double page progress when changing orientation (#799)
* Fix double page when changing orientation

* Fix requested page, when device config changes when app is in BG

* Cleanup on save reader logic

(cherry picked from commit 520846c75eae53d4adda8b593246d0478555d222)
2023-04-16 12:33:26 -04:00
Eshlender
c683ca3ee7 Update track domain shikimori.me (#9333)
shikimori.me

(cherry picked from commit 564a0980b99183bb2b73999c17a4c6603c008f05)
(cherry picked from commit 99546688dca3bd01029752d4ecc353fb0deaef96)
2023-04-16 12:32:32 -04:00
arkon
b8eca65a02 Save current chapter progress when navigating to adjacent chapters
Fixes #9295

(cherry picked from commit 776d36caf11cf29287e4cb86a6e64574a296f89c)
(cherry picked from commit 4f984cef5f28f98ba60efb6cb84b5eaecb2d77ca)
2023-04-16 12:32:11 -04:00
arkon
639a2a9c38 Show proper string in manga detail screen for SourceNotInstalledException
(cherry picked from commit 14d1bcacc9cba0e14cdf90a7972bf85660465c0b)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
(cherry picked from commit 85af8ea5175de5aef7ad5ec297525c4d889a6fde)
2023-04-16 12:31:46 -04:00
arkon
a28b54f1a1 Avoid crashing in SourcePreferencesScreen if source can't be loaded
(cherry picked from commit 4efca047658761e54cc7574a6e33ed681de3f40a)
(cherry picked from commit 897d019f0bcccbce13e65b07efe24a2d3ac80548)
2023-04-16 12:31:07 -04:00
Two-Ai
ea0483e4aa Fix download queue page count display bug (#9126)
When restarting a download, the page count would display as 0 until
the first page download completion, after all the existing pages were
rechecked.

To fix, calculate downloadedImages from pages instead of relying on
the downloader to reset and increment the count.

(cherry picked from commit 779df32e98f2a020ca6a4f79c0748dd9f5b16873)
(cherry picked from commit acef44f55cd276ede9e5435ab9ed96062c526a79)
2023-04-16 12:30:46 -04:00
arkon
699ccad088 Avoid crash when loading invalid extension package
(cherry picked from commit 3d7c136320da3b5842a51d7dbb9e82cf74144f3f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/extension/util/ExtensionLoader.kt
(cherry picked from commit 85224c368d6a6886b7eb0794b4c40671973daba0)
2023-04-16 12:30:26 -04:00
arkon
c2ec098cb1 Avoid crashing if getChapterUrl is not implemented
Fixes #9105

(cherry picked from commit ceaf579cb0b4b0ecdf2e56f245a2fad2b6ed2e85)
(cherry picked from commit 366219d7f59054f6582900f284b4095844a78373)
2023-04-16 12:30:17 -04:00
Ivan Iskandar
3455971fe8 MainActivity: Avoid navigator-related crash when handling onNewIntent (#9104)
(cherry picked from commit d3dadf71e8d7d029fdb87b44217e001f95f21c1a)
(cherry picked from commit a163223d83e21f0dbcb74dc2887c4108f0f85449)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
2023-04-16 12:30:08 -04:00
arkon
1e3f0ad9d3 Avoid crashing if opening browse with unavailable source
(cherry picked from commit 0ef7650c1a0ae7c4c6e17e458695191ce78944cb)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
(cherry picked from commit ab19d5c62a74d353961b3f554f82a2b6864bdbf0)
2023-04-16 12:29:00 -04:00
arkon
130ce513fd Move reader preloading to IO scope
Maybe fixes #8440

(cherry picked from commit e052bdef96c133b92dfad214c2b05ab03d4c5866)
(cherry picked from commit ab8c8db6acc3070203c15f5938c948eeff0431c5)
2023-04-16 12:28:42 -04:00
arkon
c93a0e8f93 Avoid preload download check if chapter is already loaded or loading
Maybe fixes #8953, #9060

(cherry picked from commit d522d6d545bfbd4e4f8f60975bddcd5f6bcc69ac)
(cherry picked from commit b42c5b58ea6fe1ee8121143d0f53fd9adf1e7f3d)
2023-04-16 12:28:34 -04:00
arkon
9b32d12b3a Prioritize finding selected chapter when deduping reader chapters
Fixes #9054

(cherry picked from commit 23432e44050cd8638f070745edf77be75aeffe21)
(cherry picked from commit 255eda6d8eff79efca2e892efea89e40be58a79f)
2023-04-16 12:28:15 -04:00
Ivan Iskandar
40c819ffef Remove FAB extra padding in DownloadQueueScreen (#9053)
(cherry picked from commit ad762f8303f2cc37bd2b78fc366b01b80bbc012b)
(cherry picked from commit e925d7a603a66829e7c27b682a61c9606c526cc3)
2023-04-16 12:27:57 -04:00
Trace
f5abcbb8bb fix: skip duplicate chapters on download ahead if option to skip duplicates is enabled (#9334)
* fix: skip duplicate chapters on download ahead if option is enabled

* fix: Use a function to filter duplicates

(cherry picked from commit 4816b4b53afa6db5dfaa2b023a4896e31425f97c)
2023-04-15 23:04:45 -04:00
Eshlender
99546688dc Update track domain shikimori.me (#9333)
shikimori.me

(cherry picked from commit 564a0980b99183bb2b73999c17a4c6603c008f05)
2023-04-15 23:04:04 -04:00
Jobobby04
d013578fb5 Fix manga plus chapters 2023-04-15 23:03:07 -04:00
Jobobby04
81283dc5cf Cleanup 2023-04-15 23:03:06 -04:00
Jobobby04
28fe7fec06 Fix issues with feed reloading all the time 2023-04-09 20:46:47 -04:00
Ivan Iskandar
8ea4298f13 GlobalSearchScreen: Skip result screen when using search intent (#9299)
(cherry picked from commit c1e23ec18e54a53d1f027f66e71822a99602f603)
2023-04-09 18:52:24 -04:00
arkon
4f984cef5f Save current chapter progress when navigating to adjacent chapters
Fixes #9295

(cherry picked from commit 776d36caf11cf29287e4cb86a6e64574a296f89c)
2023-04-09 18:51:57 -04:00
arkon
a3648d5606 Fix automatic backups not working
Apparently they die if you rename a worker class.

(cherry picked from commit d25ba23079e72d1cff05bfcd00b5f9830a086821)

# Conflicts:
#	app/build.gradle.kts
2023-04-09 18:51:32 -04:00
arkon
7c58cb85ef Remove crash log notification in favor of sharing directly
(cherry picked from commit 75460e01c80a75d604ae4323c14ffe73252efa9e)
2023-04-09 18:50:31 -04:00
RS156
527a7b40e5 Make center zoom start vertically centered too (#8849)
Update ReaderPageImageView.kt

"true center" Zoom start position #8747.
Changed zoom position to get true center value.

(cherry picked from commit 274218cf228f5dfade2a11f053bb4fe1a7d11ed8)
2023-04-09 18:50:03 -04:00
Ivan Iskandar
4e1f74d24b AdaptiveSheet: Wrap inside Dialog (#9279)
Because of Compose issue, the style of the sheet surface is adjusted as
a workaround

Ref https://issuetracker.google.com/issues/246909281

(cherry picked from commit 6f1099b7103ab7838e999e787f4e81344978a091)
2023-04-09 18:49:22 -04:00
arkon
dde1bff9ff Use IO dispatcher for some screen model work
Not sure if this is an ideal approach. If it is, we could migrate more usages to this.

(cherry picked from commit 18f9e5ba6b080a74805db553e22f15412ddeab12)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
2023-04-09 18:49:02 -04:00
arkon
f909cfe0ce Remove unnecessary withIOContext
(cherry picked from commit d1bf8570797c891876b0c5fa2d9c210dc883f8a7)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
2023-04-09 18:47:36 -04:00
arkon
9ddd17496b Refactor away some unnecessary lambda expressions
(cherry picked from commit be54b8862e53af94f08549cbfae0afb2cc4c2f3e)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt
2023-04-09 18:46:06 -04:00
arkon
016ca790e0 Don't attempt to initialize manga details from BrowseSource or Search screens
This was effectively DDoSing sources as it does a request for every entry to get the details (primarily a cover image).
The expectation now is that users have to open individual entries to load the details/cover if needed.
This isn't necessary for most sources, which are able to provide covers as part of the listing normally.

(cherry picked from commit 1a61130f0b46addef036687b6c98f930e13147f8)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
2023-04-09 18:43:25 -04:00
arkon
57d9ebb0b3 Restore POST_NOTIFICATIONS permission check for SDK 33+
Although we don't even target it yet and don't prompt for it but whatever, less work in the future.

(cherry picked from commit 1de4bc95865a5eb6491db79c413d98e05e8545e3)
2023-04-09 18:38:15 -04:00
arkon
86651ccf5e Skip POST_NOTIFICATIONS permission check for now
Fixes #9265

(cherry picked from commit 198604227788444f374b8702076b95fb593c8657)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
2023-04-09 18:38:04 -04:00
arkon
9c8c04c34d Subscribe to changes to manga in BrowseSourceScreen
Fixes #9235

(cherry picked from commit e932983494d34d87824dba5313a01337ac75742f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
2023-04-09 18:36:37 -04:00
Two-Ai
2815068a00 Cleanup Preference.asHotFlow() (#9257)
* Drop duplicate initial call in Preference.asHotFlow

Preference.changes() always starts by returning the current value of
the preference, so asHotFlow calls block twice on the initial value.

Possible breaking change: As implemented, asHotFlow ran block(get())
before returning the flow. After this change, the first call to block
will run within the flow collection. This might cause concurrency
issues if the flow collection is late to execute.

* Inline Preference.asHotFlow

The Preference.changes().onEach().launchIn() pattern is used widely,
so the asHotFlow extension method is redundant.

(cherry picked from commit 35d381144d010be47566ee480c311c3d13952822)
2023-04-09 18:33:32 -04:00
arkon
0b37ce8baf Add TODO to default to 32-bit color at some point
Originally proposed in #8959

(cherry picked from commit 8d7a7919a9bc4b3e2242486c16d0c8b947e8ab64)
2023-04-09 18:14:55 -04:00
arkon
880b06dd3b Add "Rotate wide pages to fit" setting for paged reader
Originally authored in #7983

Co-authored-by: timothyng-164 <timothyng-164@users.noreply.github.com>
(cherry picked from commit 953720472fe64ef488ecae7ae7fea453b8c7c68b)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderReadingModeSettings.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerConfig.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt
#	app/src/main/res/layout/reader_pager_settings.xml
2023-04-09 18:14:48 -04:00
arkon
cad8fe1fa0 Bump dependencies
(cherry picked from commit cb4699a5bb1e940292db57c738ae26ceb612f5bb)
2023-04-09 18:10:55 -04:00
Jobobby04
3d856ca357 Minor cleanup 2023-03-20 19:33:38 -04:00
arkon
b483bd0729 Revert "Always attempt to split tall images when downloading"
This partially reverts commit 2769525b2c12547b8dc29b1209ea3bc5d22f1e3f.

Keeps the change to silently ignore spliting errors since it falls back to
the original images in those cases.

(cherry picked from commit ac0596a53d74561ad5174db1938c16049a65dd18)
2023-03-20 19:00:27 -04:00
arkon
2a708e8b68 Always attempt to split tall images when downloading
(cherry picked from commit 2769525b2c12547b8dc29b1209ea3bc5d22f1e3f)
2023-03-20 19:00:20 -04:00
arkon
3185ae78c6 Move isLocal extension functions to LocalSource
(cherry picked from commit 7ec5a51eb858c0f585bfe1a2662cf203495d40ef)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/source/interactor/GetEnabledSources.kt
2023-03-20 19:00:06 -04:00
arkon
42146b6d1e Misc cleanup
(cherry picked from commit 3cca4602829fd706c5b850bcf45d472ee95b2a38)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceExtensions.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderPreferences.kt
2023-03-20 18:57:43 -04:00
arkon
5eb852c111 Split up ContextExtensions into smaller files
(cherry picked from commit d703fb79462574c96c5c429c83d0c3d44de99082)
2023-03-20 18:45:54 -04:00
arkon
10c3d3b150 Clean up WorkManager usages a bit
(cherry picked from commit 859601a46e5d32cd14979177832edaf342615e19)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
2023-03-20 18:45:18 -04:00
arkon
15d52784f8 Convert BackupRestoreService to a WorkManager job
Co-authored-by: Jays2Kings <Jays2Kings@users.noreply.github.com>
(cherry picked from commit cdc160afc2e3bb615fe35c8d7261a3bc16f61996)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupRestorer.kt
2023-03-20 18:42:05 -04:00
arkon
85af8ea517 Show proper string in manga detail screen for SourceNotInstalledException
(cherry picked from commit 14d1bcacc9cba0e14cdf90a7972bf85660465c0b)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
2023-03-20 18:32:48 -04:00
arkon
d80d06a2d5 Simplify some of the notification builders
(cherry picked from commit 7d8a865cac18ca307ef89768950a0835ebbb6f05)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
2023-03-20 18:31:30 -04:00
Andreas
0f3bb9f7d7 Migrate things to use newer data models (#9239)
* Remove old database models from Coil

* Remove old database models from TrackInfoDialogHome

* Remove old database models from Backup Manager

(cherry picked from commit dfdb688b437c38954b1072b7a1df15921a437868)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupManga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/MangaImpl.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/model/SMangaExtensions.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
2023-03-20 18:27:59 -04:00
arkon
118bdd05f7 Re-enable ComicInfo.xml generation on download
Closes #8537

(cherry picked from commit f3ca4e76a8ee10560897e8718267b208ae2cb3c2)
2023-03-20 18:02:28 -04:00