Commit graph

5039 commits

Author SHA1 Message Date
arkon
a1accd3ed3 Don't rely on cache when deleting empty manga folders
In case the cache hasn't actually been indexed yet. Maybe fixes #8438.

(cherry picked from commit f5873d70c640b9deb53a9a62281403b9a657e644)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadPendingDeleter.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadProvider.kt
2022-11-16 13:56:21 -05:00
arkon
1202c36a98 Retain previous selected state when updating list states
Fixes #8417

(cherry picked from commit 10e349f76ee1f9bcde5e3502bcd45270d5cd496b)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesPresenter.kt
2022-11-16 13:54:38 -05:00
arkon
22c828da76 Minor cleanup
Mostly just addressing comments from #8452

(cherry picked from commit b1ccebf329e9a9d77894b9d4ff06aeb9d7317acf)
2022-11-16 13:52:29 -05:00
Jobobby04
9c78e37802 Cherry pick fixes 2022-11-16 13:52:17 -05:00
arkon
4e5d1e9759 Clean up ComicInfo stuff a bit more
(cherry picked from commit 6017229d1b5b4b5ae7ca1b2c68292c2acf1c82a6)
2022-11-16 13:33:18 -05:00
ThePromidius
dc48cdc4bb Add Kavita tracker (#7488)
* Added kavita tracker

* Changed api endpoint since tachiyomi has it's own. Moved some processing to backend

* Bugfix. Parsing to int instead of float

* Ignore DOH, update migration and cleanup

* Fix Unexpected JSON token
	modified:   app/src/main/java/eu/kanade/tachiyomi/data/track/TrackManager.kt
	modified:   app/src/main/java/eu/kanade/tachiyomi/data/track/kavita/KavitaApi.kt
	modified:   app/src/main/java/eu/kanade/tachiyomi/data/track/kavita/KavitaModels.kt

* Apply code format suggestions from code review

Co-authored-by: Andreas <andreas.everos@gmail.com>

* Apply simplified code suggestions from code review

Co-authored-by: Andreas <andreas.everos@gmail.com>

* Removed unused dtos

* Use setter instead of function to get apiurl

* Added Interceptor

* Handle not configured/not accesible sources

* Unused import

* Added kavita to new tracking settings screen

* Delete SettingsTrackingController.kt to solve conflict

* Review comments
* Removed break lines from log messages
* Fixed jwt typo

* Merged enhanced services compatibility warning message to be more generic.
* Updated Komga String res to use new formatted one
* Added Kavita String res to use formatted one

* Apply suggestions from code review - hardcoded strings to track name

Co-authored-by: Andreas <andreas.everos@gmail.com>

Co-authored-by: Andreas <andreas.everos@gmail.com>
(cherry picked from commit 92b039fac7b2a74aa15380a171b2f2b73dc47371)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/track/TrackManager.kt
2022-11-16 13:32:00 -05:00
Ivan Iskandar
3e8fa1c572 Replace numberpicker with wheelpicker (#8501)
* Replace numberpicker with wheelpicker

* cleanups

(cherry picked from commit acc65529a00c94ec902401fadcba0b82fd352c98)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/widget/MinMaxNumberPicker.kt
2022-11-16 13:31:03 -05:00
Quang Kieu
754feb6751 Temporally Fix #8287 (#8493)
(cherry picked from commit 3061f198e9dc381e6294e05447b9798dcea885e4)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-11-16 13:30:19 -05:00
arkon
584bf7dc13 Adjust download cache to ignore irrelevant files
Fixes #8530

(cherry picked from commit 9da232dcd88421a86312b2c5237107f73b20a4a1)

# Conflicts:
#	i18n/src/main/res/values/strings.xml
2022-11-16 13:25:56 -05:00
AntsyLich
cf7c498364 Fix download not working on sd card (#8527)
Also create comicinfo file inside chapter folder instead of manga folder since it also contains some chapter specific data

(cherry picked from commit 51c964de3aa370545899c7c3b38b3287cea13d1c)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
2022-11-16 13:25:03 -05:00
arkon
cdb1a8f851 Resolve proper chapter URL for ComicInfo "Web" field
Requires extensions to be updated to lib 1.4 to have proper URLs for some of them, which will
happen soon in the future.

(cherry picked from commit 262f8449b4369fde42cbd15d2a768e54461e84af)
2022-11-16 13:23:15 -05:00
Andreas
27c93d18eb Use Voyager on Source Filter screen (#8511)
(cherry picked from commit bdf035d60a039ac6aa38f3978691079082ff8e12)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/SourcesFilterScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesFilterController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesFilterPresenter.kt
2022-11-16 13:23:05 -05:00
Jobobby04
6a6d8c0657 Dedupe by priority 2022-11-16 13:08:07 -05:00
Jobobby04
797a9e6b4e Support new E-H/Exh search engine 2022-11-16 13:07:38 -05:00
Jobobby04
eedfa44ec8 Only show the sources name if there are multiple sources 2022-11-15 11:22:29 -05:00
Jobobby04
0a6672a768 Add source to merged chapters without messing with the scanlators 2022-11-15 01:07:43 -05:00
Jobobby04
1acb7a1a35 Fixes for merged manga settings 2022-11-15 00:25:42 -05:00
Jobobby04
5afc33becb Round the corners of page previews 2022-11-13 15:43:56 -05:00
Andreas
9870c23a5b Use Voyager on Extension Filter screen (#8503)
- Use sealed class for state
- Minor changes

(cherry picked from commit 02708787483b6dee9d42e39c984ed8c4beaacb40)
2022-11-11 19:27:51 -05:00
arkon
4560dedf1c Clean up ComicInfo stuff a bit
(cherry picked from commit 6ada3c90ff4729f703fb35338f72694e88f06aca)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/LocalSource.kt
2022-11-11 19:27:41 -05:00
Shamicen
1523ff2814 Create ComicInfo Metadata files on chapter download (#8033)
* generate ComicInfo files at the chapter root and inside CBZ archives on chapter download.

* Update app/src/main/java/eu/kanade/tachiyomi/source/LocalSource.kt

Co-authored-by: Andreas <andreas.everos@gmail.com>

* Improvements suggested by @ghostbear

* now creates ComicInfo files in normal chapter folders as well
use manga directly instead of converting it to SManga
truncate old files before overwriting them

Co-authored-by: Andreas <6576096+ghostbear@users.noreply.github.com>

* remove empty line after resolving merge conflict

* fixes Serializer for class 'ComicInfo' is not found error

* some changes to comments and variable names

* Revert leftover changes to archiveChapter() function

* minor cleanup

* Changed Chapter to SChapter

Co-authored-by: Andreas <andreas.everos@gmail.com>
Co-authored-by: Andreas <6576096+ghostbear@users.noreply.github.com>
(cherry picked from commit 4e628fe6de7a691fbab7960c5f9b750e563eb8a1)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
2022-11-11 19:26:33 -05:00
arkon
053b18c37d Remove "Download complete" notification
It wasn't really consistent with other notifications considering there's no
action to be taken in this state.

(cherry picked from commit a0f49b16c5b76d493857840c1012b9df7086f35c)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadManager.kt
2022-11-11 14:47:07 -05:00
arkon
7578b4d6fc Migrate to more domain model usages
(cherry picked from commit c6c4c1c393aa8f7fe702ce7da9d7d04e0ad9005b)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
2022-11-11 14:36:15 -05:00
arkon
564cc5144f Minor cleanup
(cherry picked from commit 811931ccc0f21b0fd88c56b8567358982c48c31e)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/track/anilist/OAuth.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/track/kitsu/OAuth.kt
2022-11-11 14:27:32 -05:00
AntsyLich
f534c8928c Add option to invalidate download cache (#8491)
* Add option to invalidate download cache

* Review changes + lint

(cherry picked from commit 08d5633d81633ab09f09f1ecedd331f12fa8a889)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
2022-11-11 14:20:28 -05:00
Ivan Iskandar
13db6c1a7a Voyager on More tab (#8498)
(cherry picked from commit 340357d158762a0b01b09092688ef6bce784b1c0)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/more/MorePresenter.kt
2022-11-11 14:19:50 -05:00
arkon
2ba4135e38 Use toShareIntent in WebViewActivity
(cherry picked from commit e45f6d0c92a5cbcd973b3f86b024fb090f701eb8)
2022-11-11 13:55:13 -05:00
Ivan Iskandar
7b1bc790b3 Full Compose MangaController (#8452)
* Full Compose MangaController

* unique key

* Use StateScreenModel

* dismiss

* rebase fix

* toShareIntent

(cherry picked from commit 18ccde082d5529766ad1297f9850752508805156)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersSettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/track/TrackAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/track/TrackHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/track/TrackSearchAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/track/TrackSearchDialog.kt
#	app/src/main/res/layout/track_chapters_dialog.xml
#	app/src/main/res/layout/track_controller.xml
#	app/src/main/res/layout/track_item.xml
#	app/src/main/res/layout/track_score_dialog.xml
#	app/src/main/res/layout/track_search_dialog.xml
#	app/src/main/res/layout/track_search_item.xml
2022-11-11 13:55:01 -05:00
Ivan Iskandar
5b88385ccc Voyager on History tab (#8481)
(cherry picked from commit bc3bb82651e85a8b0584a645e0fa07ab97ab1767)
2022-11-11 11:07:53 -05:00
d-najd
1903453ce7 Add "Play" button on manga in library (#8218)
* resume manga button in libarary

* work on resume button

* Backup

* work on opening the last read chapter

* backup

* renaming

* fab instead of image

* done with logic

* cleanup

* cleanup

* import cleanup

* cleanup...

* refactoring

* fixing logic

* fixing scopes

* Reworking design

* adding ability to turn on/off the feature

* cleanup

* refactoring, fixing logic, adding filter logic (partial)

* backup

* backup

* logic done

* backup before merge fix

* merge conflict....

* merge conflict...

* reworking ui logic

* removing unnecessary file

* refactoring

* refactoring

* review changes + minor parameter position movement

* commiting suggestion

Co-authored-by: arkon <arkon@users.noreply.github.com>

* fixing minor mistake

* moving ChapterFilter.kt

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

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/components/CommonMangaItem.kt
#	app/src/main/java/eu/kanade/presentation/library/LibraryScreen.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryComfortableGrid.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryCompactGrid.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryContent.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryPager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-11-11 11:07:42 -05:00
Jobobby04
206aab6755 Use Voyager on Biometric Times screen 2022-11-11 00:11:35 -05:00
Jobobby04
fd99a5f502 Use Voyager on Sort Tags screen 2022-11-10 23:48:03 -05:00
Jobobby04
4a1a1301ff Use Voyager on Repo screen 2022-11-10 23:33:17 -05:00
Jobobby04
02954670d4 Use Voyager on Source Category screen 2022-11-10 23:17:20 -05:00
Andreas
0d638b1c1e Use Voyager on Category screen (#8472)
(cherry picked from commit bf9edda04c8cf8e5988e6eb49ffffdbf54826b3a)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/category/CategoryScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/category/CategoryPresenter.kt
2022-11-10 23:16:39 -05:00
arkon
771ec24d28 Get index of selected update list item based on chapterId
Fixes #8442

(cherry picked from commit 54471a014fa152e41dad92b0a192bde90d8baded)
2022-11-10 22:49:50 -05:00
Jobobby04
f06c8ef2cb Fix page previews only showing previews when the manga first loaded 2022-11-10 22:49:23 -05:00
arkon
d3f4f63f52 Adjust read next history logic
Closes #8454

(cherry picked from commit 8749be518f8fb7f278f35f110df6c1d5b4b2508e)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/DomainModule.kt
#	app/src/main/java/eu/kanade/domain/history/interactor/GetNextUnreadChapters.kt
#	app/src/main/java/eu/kanade/domain/history/interactor/RemoveHistory.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-11-10 22:37:36 -05:00
Alessandro Jean
461b4a77b4 Retry the MAL request if the token is expired (#8437)
Retry the MAL request if the token expired.

(cherry picked from commit 6d880c938a32cf0723d37fcd708bc69f42be8af9)
2022-11-10 22:16:49 -05:00
Luqman
9492ddd337 Add back haptic feedback long tap to fav (#8418)
* Add back haptic feedback long tap to fav

- add back haptic when long tap on manga to add to library

* simplify

* Revert "simplify"

This reverts commit f4bd57315a3dbf35f5975233980304fa66807718.

* Revert "Add back haptic feedback long tap to fav"

This reverts commit 81486e30e9adf6a7e983b5e3f12bd5bc34083db1.

* cleanup

(cherry picked from commit 34aa4eb291747ccb268c28f5060481706d6c4915)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
2022-11-10 22:16:39 -05:00
arkon
4e37fbca17 Toggle enabled source in bulk
Maybe fixes #8439

(cherry picked from commit 280b0f42db2cc8c21ac046b11717cac6975746ca)
2022-11-10 22:15:54 -05:00
Jobobby04
e2916941d6 Don't try to migrate the manga if its the same id 2022-11-10 20:22:03 -05:00
Jobobby04
c96efe1819 Page preview jump to page in Reader 2022-11-08 23:20:38 -05:00
Jobobby04
d5ee2905ee Fix E-Hentai getNextChapter 2022-11-08 23:20:37 -05:00
Jobobby04
792746dce7 Lint 2022-11-02 21:16:22 -04:00
Jobobby04
8facc5346f Cleanup grouping code 2022-11-02 21:01:43 -04:00
Jobobby04
e943b4ed09 Fix sorting and filtering for grouping library 2022-11-02 20:43:31 -04:00
Jobobby04
61c2aee0c4 Fix E-Hentai browse 2022-11-02 20:26:27 -04:00
AntsyLich
584ddbee6a
Enable split apk generation (#717) 2022-11-02 13:02:11 -04:00
Jobobby04
f592436d55 Fix Exhentai 2022-11-02 12:49:17 -04:00
AntsyLich
0535c98b37 Fix resetting filter resets browse pager (#8394)
Fix resetinf filter resets browse pager

(cherry picked from commit afcf4b298863ae0537c8b32420bf75670be94dd2)
2022-11-01 13:37:29 -04:00
arkon
bd94751e73 Fix crash in ReaderReadingModeSettings when reverse portrait orientation is set
(cherry picked from commit 642b392d44328f09783d34769d4d2f3596156da3)
2022-11-01 13:36:38 -04:00
arkon
b2565c7f8b Clean up library download chapters logic
We can probably clean up the same logic in the manga controller at some point too, but that stuff's messy.
Also fixes the spacing issue that the new icon introduced.

(cherry picked from commit 33e90d64497f920be825b803e1342a2e6c937111)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-11-01 13:36:11 -04:00
Jobobby04
35bd6233d9 Cherry pick fix 2022-11-01 12:46:46 -04:00
Swords
dd08da26e8 Add different download options within the Library (#8267)
* feat: add download options to library

* feat: use max instead of min

* feat: remove download all option

* feat: applied requested changes + rename some functions

* feat: merge downloadAllUnreadChapters and downloadUnreadChapters into one function

* Apply suggestions from code review

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>

* feat: apply lint suggestions + fix code

feat: apply lint suggestions + fix code

* feat: revert onClickDownload back to onDownloadClicked

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 50b17d5d3416e5c44a4a98f93e9710769e74aa51)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-11-01 12:46:33 -04:00
arkon
ebfc0f89ed Fix some crashes
- Delay the initial emission of updates/sources/extensions lists instead of using a state flow. This hopefully avoids rapid initial recompositions that cause the LazyColumn key duplication crashes. (Closes #8371)
- Fix a NPE in BrowseSourcePresenter

(cherry picked from commit 5d1f79012e63403ac37309dd958244108e28a1a5)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesPresenter.kt
2022-11-01 12:33:30 -04:00
arkon
b4ede754b9 Clean up download ahead logic
- Remove redundant chapter sorting logic when fetching next chapter(s)
- Remove redundant download queue checks (it'll handle already queued or downloaded items)
- Trigger download ahead when read >= 25% of chapter rather than 20%
- Rely on download cache when checking if next chapter is downloaded to avoid jank (fixes #8328)

(cherry picked from commit fc184f1cfa929328c41b0ec374503afe204d6c15)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
2022-11-01 12:32:13 -04:00
arkon
f9b49aa7f6 Add warning about F-Droid build support in More screen
(cherry picked from commit 725fcbba0e45488c8553f2a5a88fbdfb2a63982c)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionDetailsScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/updater/AppUpdateChecker.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreController.kt
2022-11-01 12:24:45 -04:00
stevenyomi
e8e7ff55c0 Refactor search toolbar and fix browse source (#8360)
(cherry picked from commit a078f1ab1bd288d604edd8b8a21dcf2e88f47065)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
2022-11-01 12:17:26 -04:00
arkon
3be06eacaa Remove redundant preference composables
(cherry picked from commit dd1923fe88bbb1e7f838d560806598a4ba2174f8)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/components/Preferences.kt
2022-11-01 12:00:14 -04:00
arkon
81d9ac81ce Refactor overflow menus into a composable
(cherry picked from commit df773ee15c814e03267fdfcd81d4e12d38a3508b)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryToolbar.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaToolbar.kt
2022-11-01 11:43:19 -04:00
zbue
621e9dbc41 Add ability to open random manga (#8232)
* Add ability to open random manga

* Use `getMangaForCategory` instead

* Put it in overflow menu instead of using EFAB

* Partial review changes

* Merge remote-tracking branch 'refs/remotes/origin/patch-6' into patch-6

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibraryScreen.kt

* Merge remote-tracking branch 'refs/remotes/origin/patch-6' into patch-6

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibraryScreen.kt

* Wording changes

(cherry picked from commit f5451a68812f56d9427a9b771f6bed00f8fbd7e6)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibraryScreen.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryToolbar.kt
2022-11-01 11:38:53 -04:00
arkon
b941c34c3f Use remember var delegates in more places
(cherry picked from commit 0849111247d28fa5a74abe6759c992097bfa7109)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryDialogs.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaToolbar.kt
2022-11-01 11:20:34 -04:00
stevenyomi
b2c4fc0ec5 Clean up strings and icons (#8326)
* Clean up strings and icons

* fix incorrect usages of label_more

* restore strings and reduce usage of android.R

* removing icon desc of FABs anyway as app's not for visual impaired users

(cherry picked from commit 4b60138d41ea33e5e4c3defb0dc626b599216f3f)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
#	app/src/main/java/eu/kanade/presentation/components/MangaBottomActionMenu.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
2022-10-29 18:57:56 -04:00
arkon
75e1dfee3f Show notification while download cache is renewing
Since users seem to be confused now that the library loads before download info is shown...

(cherry picked from commit fde7bfa3d17ce2e02df5625836eb739aeaab7863)
2022-10-29 18:46:08 -04:00
arkon
f3a2b1d7e4 Sort library items alphabetically in secondary pass
Fixes #7461

(cherry picked from commit 224f29077d37ca72c5a9f01649998c80d7bafedd)
2022-10-29 18:45:49 -04:00
AntsyLich
51dd8c2285 Prompt Extension update if ext-lib is updated
Co-authored-by: arkon <arkon@users.noreply.github.com>
(cherry picked from commit e1ab1fdb656bea90bdf6990523c857e0434fbc0c)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionGithubApi.kt
2022-10-29 18:45:42 -04:00
Jobobby04
2306038c74 Minor cleanup 2022-10-29 18:39:25 -04:00
arkon
94c0b0a36e Avoid concurrency crashes in SourceManager
(cherry picked from commit d0c4463ab372460ce6f16ec09ea975448423ed66)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceManager.kt
2022-10-29 18:27:13 -04:00
arkon
ef1242d067 Consider downloaded only mode when getting download counts in library
Fixes #8318

(cherry picked from commit ad107860b91d5b91f3e127904a0bd81c957f87c4)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-10-29 18:26:25 -04:00
arkon
38abaa162e Fix some crashes
(cherry picked from commit 5efb31bd7105975ef531aaebbb70e3f409378663)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
2022-10-29 18:25:50 -04:00
arkon
55a07ae51a Fix library download counts not being loaded if downloaded filter is in exclusion state
(cherry picked from commit e4a2f35907a8f0eefcbd30b6a9bde258dfd89111)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-10-29 18:24:56 -04:00
Jobobby04
9d84481770 Cherry pick fixes 2022-10-29 18:03:25 -04:00
AntsyLich
37207ed58b Cleanup Library presenter (#8284)
* yeet observable + minor cleanup

* move [getTracksFlow] to domain

* Lint

* Review changes

Co-Authored-By: Andreas <6576096+ghostbear@users.noreply.github.com>

* Review Changes 2

* Stuff

* Rename + Rebase

* Lint

Co-authored-by: Andreas <6576096+ghostbear@users.noreply.github.com>
(cherry picked from commit e36d31bf0fff9652652319fa8b4fc700edc1442a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-10-29 18:03:08 -04:00
d-najd
0d7cff1f43 WebView for chapter link (#8281)
* backup

* doing logic

* cleanup

* applying suggestion

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>

* requested changes

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 37b7efbc87c45c421974394ee36f86f5cd6e0492)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
2022-10-29 17:31:25 -04:00
AntsyLich
98a56d581e Fix "Download split" not working while using SD card (#8305)
* Fix "Download split" not working while using SD card

* Update app/src/main/java/eu/kanade/tachiyomi/util/system/ImageUtil.kt

Co-authored-by: arkon <arkon@users.noreply.github.com>
(cherry picked from commit 6e4a30e59352517346eb0f622424390a52fb95c0)
2022-10-29 17:27:32 -04:00
arkon
2217eb9d35 Alternate method of avoiding LazyColumn key conflict crashes
Co-authored-by: ivaniskandar <ivaniskandar@users.noreply.github.com>
(cherry picked from commit c50b1a5c66256ab003a224d50caa317c53479397)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesPresenter.kt
2022-10-29 17:26:42 -04:00
arkon
f549730c8f Remove side nav icon alignment preference
Simplifying it to just always be centered, which is what most Google apps seem to be doing anyway.

(cherry picked from commit ccc4144f3cc2264c3ae75d492983e9577f352af1)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
2022-10-29 17:24:26 -04:00
arkon
b5ae4c0d43 Refactor network to local manga logic
Maybe fixes #8289

(cherry picked from commit d5b4bb49b168adc5b7c3934e530571497c85a916)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchPresenter.kt
2022-10-29 17:22:24 -04:00
arkon
71eefc3c9e Avoid some crashes
(cherry picked from commit ca065169002475cc92b7736d02340127a5e419bd)

# Conflicts:
#	app/src/main/java/eu/kanade/data/manga/MangaRepositoryImpl.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadCache.kt
2022-10-26 23:38:49 -04:00
AntsyLich
c48dd63019 Rework library selection (#8290)
(cherry picked from commit 2cbe946e7e9eae14c035001c9e4eb970ede229a4)
2022-10-26 23:37:39 -04:00
AntsyLich
32a2827b0e Use Channel in Download cache (#8292)
* Use `Channel` in Download cache

Co-Authored-By: Andreas <6576096+ghostbear@users.noreply.github.com>

* Use Unlimited capacity

Co-authored-by: stevenyomi <95685115+stevenyomi@users.noreply.github.com>

Co-authored-by: Andreas <6576096+ghostbear@users.noreply.github.com>
Co-authored-by: stevenyomi <95685115+stevenyomi@users.noreply.github.com>
(cherry picked from commit 3b5b9a1ae5803466e9b18846aae6fcd16bf8a637)
2022-10-26 23:37:16 -04:00
Ivan Iskandar
20ea3d5eac MangaPresenter: Filter unsupported track service from available service list (#8286)
(cherry picked from commit 82b552ac9a4a8764f8ccf1d75c628310c020440d)
2022-10-26 23:35:37 -04:00
arkon
8231aa45d7 Fetch download counts if library is filtered by downloaded
Fixes #8277

(cherry picked from commit 9792a6cb780d0db3a962fdf2e60ef028b3ceb07f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-10-23 12:52:58 -04:00
Jobobby04
dc6215dd3b Fix default category always displaying 2022-10-23 12:52:57 -04:00
arkon
6d46283aee Use kotlin.time extensions in some more places
(cherry picked from commit 5c868d784679b55e413366c5d4bdea75253bf8f4)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
2022-10-22 21:46:13 -04:00
arkon
3314b46630 Only enable ACRA crash logging in preview and stable release builds
(cherry picked from commit 6e04822f5e2f0985a98a86c814099b0cf85cb7f8)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderPreferences.kt
#	app/src/main/java/eu/kanade/tachiyomi/util/system/BuildConfig.kt
2022-10-22 21:43:54 -04:00
AntsyLich
d853aa0c1b Cleanup LibraryUpdateService (#8237)
(cherry picked from commit 4ff5c1148e1ea89b13e5aefbd6b34d66566fb103)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
2022-10-22 21:34:32 -04:00
stevenyomi
0a0b264e43 Fix app lock and make delay not survive app being killed (#8272)
* Fix app lock

* Always require unlock if app is killed

(cherry picked from commit 2ab744c525e2c6c94bcac7d4cc3848830a50c991)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/base/delegate/SecureActivityDelegate.kt
2022-10-22 21:23:02 -04:00
AntsyLich
24115a9ddc Cleanup UpdatesPresenter deleteChapters (#8273)
(cherry picked from commit 4a244a598bd8caceaab76ae2c851d8e8ef04ed21)
2022-10-22 20:57:23 -04:00
arkon
bd9125f9fe Remove fake chapter deletion state updates
Now that the updates and manga screen listen to download cache changes, it'll reflect the real states once deleted.

(cherry picked from commit d0bff298b7df3524f76434a3636bc196627cb613)
2022-10-22 20:57:12 -04:00
arkon
1bef917db7 Handle async cache in updates and manga screens
- Also fix concurrent accesses to main cache map
- Also debounce sources and updates list updates to maybe avoid crashing due to dupe LazyColumn keys

(cherry picked from commit 152eb5b95196a32ed120f4a57996c1958294bf7f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-10-22 20:56:53 -04:00
stevenyomi
46fe5dfd4f Tweak tablet UI mode setting (#8262)
(cherry picked from commit d558f9e1d6bcc8eb8f69359e6e7516f7ea24a408)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
2022-10-22 20:47:54 -04:00
AntsyLich
2774df208e Fix "Add manga to library" snackbar not showing with ChapterDownloadAction.START_NOW (#8271)
(cherry picked from commit b3557e844c016f095764e72fca8d01657e1d4028)
2022-10-22 20:33:17 -04:00
arkon
e38b1390e6 Maybe avoid extensions list rendering crashes
(cherry picked from commit 4138a17e29348c7057ae885a0b8d9d5c3f29cc07)
2022-10-22 20:32:07 -04:00
arkon
d0f3bd077c Avoid some IndexOutOfBoundsExceptions
(cherry picked from commit eb742b29f8b75eb900cf47f6178053dcf68f74bc)
2022-10-22 20:31:48 -04:00
arkon
7f7602f9b7 Use fade transition in Voyager screens to mimic existing Conductor change handler
(cherry picked from commit 2921be620a2cc2bd3a7be84aaa6d6136c651367c)
2022-10-22 20:29:40 -04:00
arkon
5a55c66532 Perform download cache renewal async
Don't block on cache renewals, but notify library on updates so that the badges show up when ready.

We skip the cache when checking if a chapter is downloaded for the reader assuming that it's a
relatively low cost to check for a single chapter.

(Probably) fixes #8254 / fixes #7847

(cherry picked from commit 7e40680af02505f82fa3655d2d693092c6bd43a1)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadCache.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
2022-10-22 20:28:57 -04:00
arkon
9fafe15081 Remove redundancy in ExtensionManager
(cherry picked from commit 93925a72866892358b7f46645e1f189b2cf3bc1d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchPresenter.kt
2022-10-22 20:24:41 -04:00
arkon
893443222d Proper DI instantiation for some more download related classes
(cherry picked from commit b04807e53a355af210e280d42f705976a478c6e5)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/chapter/interactor/SyncChaptersWithSource.kt
#	app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/DownloadPageLoader.kt
2022-10-22 20:16:12 -04:00
arkon
5ff3c39d68 Defer library download counts if not needed
(cherry picked from commit 93827aba34e98c6f70397d0e767580f3aaf5136b)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadCache.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-10-22 20:11:36 -04:00
AntsyLich
b5f3114cb4 Hide reader "Split tall images" option in release build (#8235)
(cherry picked from commit 44cabf2f0b9db3ae60d5739676fb8777c474ea6b)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderPreferences.kt
2022-10-22 20:03:16 -04:00
arkon
d79784f292 Avoid crashing if invalid download and backup location is set
Fixes #8252

(cherry picked from commit a8ca7b690fe56f8588d3fff9dbfef95062e6442f)
2022-10-22 19:52:59 -04:00
stevenyomi
6ba4c9b139 Clean up strings and resources (#8253)
* Clean up strings and resources

* fix pringle's typo

* restore catching file pick errors

* add back file chooser title

* revert #7740 and remove try-catch of chooser-wrapped intent

* swap xmlns lines

* swap xml tools lines

(cherry picked from commit 824d5e22bc35a9b511929be21ffbc85b734e5fcd)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/res/drawable/card_gradient_shape.xml
#	app/src/main/res/menu/download_queue.xml
2022-10-22 19:52:46 -04:00
stevenyomi
cc605759d3 Fix language/theme settings dialog and remove delay (#8244)
* Fix language/theme settings dialog and remove delay

* inline UI preferences

* use `by remember`

* remove unused variable

* remove unused import

(cherry picked from commit d03cbbe0cdc699ad15618a326c91e811f5c2e385)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsGeneralScreen.kt
2022-10-22 19:38:52 -04:00
Ivan Iskandar
b29fc922cb Fix crash when saving a page from certain chapters (#8242)
(cherry picked from commit 84bcd8d1d228e9687f4542e429407c74e73684bd)
2022-10-22 19:37:57 -04:00
Jobobby04
62446a0737 Add _sy to the backup name 2022-10-22 17:11:03 -04:00
Jobobby04
82793b7a41 Minor cleanup 2022-10-18 17:53:45 -04:00
arkon
49d5d797b3 Fix download cache not updating on location change
(cherry picked from commit 6756bfab7592bdbc424aa4a478769728cf991a54)
2022-10-18 17:52:13 -04:00
Andreas
fed8ef09af Tweak library view (#8240)
- Move category join to improve performance
- Move bookmark calculation into query
- Move unread calculation into domain

(cherry picked from commit 8d97b980e354d50a7682e87677ef336833b760fe)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/data/manga/MangaMapper.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/sqldelight/migrations/22.sqm
#	app/src/main/sqldelight/view/libraryView.sq
2022-10-18 17:51:34 -04:00
stevenyomi
a31e8282cb Clean up OkHttp methods and parse from Okio directly (#8238)
(cherry picked from commit 2d19729869d1c88a46c0d1a4582d29a80d7ab9cb)

# Conflicts:
#	core/src/main/java/eu/kanade/tachiyomi/network/OkHttpExtensions.kt
2022-10-18 17:35:23 -04:00
Ivan Iskandar
a7c45ab61e More settings stuff (#8226)
* title size

* move about screen to settings

keeping shortcut inside more screen

* more

* shrink texts

* scrollable create backup dialog choices

* search back button

* cleanups

* delay changes that require activity recreate

* lessen horizontal padding

(cherry picked from commit f5bde3726ad235587da59e484a0c82fbe48790da)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/about/AboutScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/database/components/ClearDatabaseDialogs.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/ClearDatabaseScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsMainScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/more/AboutController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreController.kt
2022-10-18 17:24:57 -04:00
AntsyLich
de10803c2f Fix selection in library (#8233)
(cherry picked from commit ea092fa175e39dc9b868ef865d6fcfef81407157)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryComfortableGrid.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryCompactGrid.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryCoverOnlyGrid.kt
2022-10-18 16:53:58 -04:00
Andreas
2f748b025a Tweak Crash activity (#8229)
- Scroll entire content body
- Edge2Edge

(cherry picked from commit fed914827a3a84efb0beb12f885a85413fba7b98)
2022-10-18 16:52:20 -04:00
Andreas
d07ea91c27 Add Crash activity (#8216)
* Add Crash activity

When the application crashes this sends them to a different activity with the cause message and an option to dump the crash logs

* Review changes

(cherry picked from commit 4178f945c9b6bcae9323c02534d7e620136a4e76)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
2022-10-17 00:10:30 -04:00
arkon
767059e7a3 Always renew download cache if no sources have been loaded yet
Fixes #7705. Somewhat janky solution to handle when loading the sources on app start is slower than
the initial download cache priming.

(cherry picked from commit 558aad1a7170a71c454ce7c056b98f446a6eea95)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadCache.kt
2022-10-17 00:09:36 -04:00
AntsyLich
639eb50dbc Tweak library query (#8214)
* Tweak library query

Co-Authored-By: Quang Kieu <kieuq@wit.edu>

* Update app/src/main/sqldelight/migrations/21.sqm

* Update app/src/main/java/eu/kanade/domain/library/model/LibraryManga.kt

* Update app/src/main/sqldelight/view/libraryView.sq

* Update app/src/main/java/eu/kanade/data/manga/MangaMapper.kt

* Update app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt

* Update app/src/main/java/eu/kanade/data/manga/MangaMapper.kt

* Bump version

Co-authored-by: Quang Kieu <kieuq@wit.edu>
(cherry picked from commit d6cbff2837bdf0de679bdf1cc8b93dbf3eadb487)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/data/manga/MangaMapper.kt
#	app/src/main/java/eu/kanade/data/manga/MangaRepositoryImpl.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/sqldelight/migrations/21.sqm
2022-10-17 00:05:52 -04:00
arkon
2144221250 Remove dead code
Mostly from settings rewrite, but some other things too.

(cherry picked from commit 69cdba71eb842865586309d8549de78480cdbe0e)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/database/ClearDatabaseScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAppearanceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsBackupController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsBrowseController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsGeneralController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsLibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsReaderController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsSecurityController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/database/ClearDatabasePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/search/SettingsSearchHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/track/TrackLoginDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/widget/materialdialogs/MaterialAlertDialogBuilderExtensions.kt
#	app/src/main/java/eu/kanade/tachiyomi/widget/preference/IntListPreference.kt
#	app/src/main/java/eu/kanade/tachiyomi/widget/preference/LoginDialogPreference.kt
#	app/src/main/res/drawable/ic_done_green_24dp.xml
#	app/src/main/res/layout/pref_account_login.xml
#	app/src/main/res/layout/pref_library_columns.xml
2022-10-16 22:58:07 -04:00
Ivan Iskandar
a2f6b90547 Settings: M3 and two pane ui (#8211)
* Settings: M3 and two pane ui

* TrackingLoginDialog: Move close button

* Use small top bar

* Revert "Update voyager to v1.0.0-rc02"

This reverts commit 570fec6ea622a7deae44668f4d9c3317699de2aa.

https://github.com/adrielcafe/voyager/issues/62
(cherry picked from commit 5c5468f9af74be984d0d9cb79da804370ee0e775)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsMainScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/widget/TextPreferenceWidget.kt
2022-10-16 22:39:58 -04:00
arkon
0b5b9cb5cc Control library badge visibility with props instead
Fixes #8174

(cherry picked from commit 6635dd2990851d830e83a628b7e62091bd20cb43)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryComfortableGrid.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryCompactGrid.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryContent.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryCoverOnlyGrid.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryGridCover.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-10-16 22:20:47 -04:00
Ivan Iskandar
57dcd16cb9 Full Compose settings (#8201)
* Uses Voyager for navigation.
* Replaces every screen inside settings except category editor screen since it's
called from several places.

(cherry picked from commit 890f1a3c7b0f2ceefa86a77cb40c11567e2b5a46)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsMainController.kt
2022-10-16 21:53:23 -04:00
Swords
1ac63787bd Add bookmark filter (#8198)
* feat: add bookmark filter

* feat: add getBookmarkChaptersByMangaId query + interactor to be used for filtering

(cherry picked from commit 3fdcd636d75e3862e75779077faef3d70365bcf6)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
2022-10-15 12:11:24 -04:00
Jobobby04
80c53adf29 Fix open in webview issue 2022-10-15 12:09:38 -04:00
arkon
a82b86bec8 Minor cleanup
(cherry picked from commit bc1fbfac9d3bd6a13b755acb5ac0a2ed702ba1a2)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/chapter/interactor/SetReadStatus.kt
#	app/src/main/java/eu/kanade/domain/manga/repository/MangaRepository.kt
#	app/src/main/java/eu/kanade/presentation/library/LibraryScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceExtensions.kt
2022-10-15 12:09:35 -04:00
arkon
7da8484d81 Attempt to avoid duplicate update rows
Related to #7713

(cherry picked from commit 7e92921f84905fefa46a9514c096593520c52076)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/recent/updates/UpdatesPresenter.kt
2022-10-15 12:09:34 -04:00
d-najd
aef2dab957 Range selection in library (#8186)
* logic and a bit of cleanup

* cleanup done

* grammar fix

* fixing format

* Auto stash before checking out "HEAD"

* Revert "Auto stash before checking out "HEAD""

This reverts commit 202374a36ff444b7da3fcdb2a9859ca71a7c046e.

* Update app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt

Co-authored-by: arkon <arkon@users.noreply.github.com>

* cleanup

Co-authored-by: arkon <arkon@users.noreply.github.com>
(cherry picked from commit e1adb89ff8ed1759fcab08ed70b596b41bf3c88c)
2022-10-15 12:09:33 -04:00
arkon
78d87b866a Upgrade to Kotlin 1.7.20
Also run formatter and address some deprecation warnings.

(cherry picked from commit 26a42ba9c01c670f60bedfca41bd72c99aa2a278)

# Conflicts:
#	core/src/main/java/eu/kanade/tachiyomi/network/NetworkHelper.kt
2022-10-15 12:09:30 -04:00
stevenyomi
1b6c970cc2 Fix download progress indicator (#8188)
(cherry picked from commit b1e104319f90678bc7ed501797d9d7d5b98902b5)
2022-10-15 12:09:30 -04:00
Platiplus
46b268491a Overwrite saved images instead of creating new ones (#8162)
* Implementing overwrite instead of saving duplicated images

* Using filename instead of hardcoding image type

* Refactoring method to accept lambda for default value

* Removing extra parenthesis

(cherry picked from commit a3afb3553990a6a0faac8999c867b3ddefd5b101)
2022-10-15 12:09:29 -04:00
Jobobby04
861481bf26 Fix some Feed add bugs 2022-10-15 12:09:27 -04:00
Ivan Iskandar
24593da484 EmptyScreen: Compose-ify and apply content padding (#8177)
* Apply content padding to empty screen

except the empty screens in browse

* compose-ify EmptyScreen

* center face when action show

* fix padding

* apply content padding to browse tabs

* fix duplicate bottom insets

(cherry picked from commit 8500add09f475093e4e861f42508496e0f1fd68c)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
#	app/src/main/java/eu/kanade/presentation/library/LibraryScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesTab.kt
#	app/src/main/res/layout/common_view_empty.xml
2022-10-15 12:09:26 -04:00
zbue
86b333384f RemoveMangaDialog: Show manga title in dialog message (#8163)
(cherry picked from commit 737d0fb8f3d87ab7a9d5ff4319d629dbe5213b96)
2022-10-15 12:09:22 -04:00
arkon
ae7c720d6c Fix linting error
(cherry picked from commit b95a30e424c180c654b27f8bc6e432629415731a)
2022-10-15 12:09:21 -04:00
arkon
35758adb8e Clean up download state logic in MorePresenter
(cherry picked from commit 3bfbd58402bcb24e1f24bb5c2d88389767cab2d9)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/more/MorePresenter.kt
2022-10-15 12:09:20 -04:00
Jobobby04
2dadf37711 Fix browse reset button 2022-10-15 12:09:18 -04:00
Jobobby04
22abd02641 Fix multiple issues with saved searches 2022-10-15 12:09:17 -04:00
Jobobby04
2d2f5cdc66 Improve external repo extension handling 2022-10-15 12:09:16 -04:00
Basara-Hatake
7fd4f5ee97
remove dead delegatedsources (#701) 2022-10-15 12:08:26 -04:00
Jobobby04
39c82feb01 Fix mangadex group deeplink not only searching mangadex sources 2022-10-08 19:44:12 -04:00
d-najd
17bb5d1c4b Hiding the keyboard (#8160)
* Hiding the keyboard (#8157)

* Cleanup

* Adding log

* cleanup

* moving code to ViewExtensions.kt

* TrackDialog keyboard fix?

* moving  code to ContextExtensions.kt

* MoreScreen: Remove title (#8158)

* MoreScreen: Remove title

Also removes the state banners as it's redundant

* Add back banners

* Allow manual selection of manga description instead of copying to clipboard

Closes #6548

Notably missing some "standard" options like "Select all" or "Share": https://issuetracker.google.com/issues/226648919

* Allow marking partially read chapters as unread

Closes #3777

* Tablet UI edge-to-edge tweaks (#8159)

* LibraryScreen: Tweak content padding application to draw under nav bar

* BrowseScreen: Tweak content padding application to draw under nav bar

Side note the tab content doesn't actually use its
scaffold (bottom) contentPadding so it's definitely will
be a headache in the future.

* Don't hardcode bottom nav padding

* removed unnecessary import

* refactoring code

* rewriting code

* cleanup?

* cleanup

Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
Co-authored-by: arkon <eugcheung94@gmail.com>
(cherry picked from commit 50f959e5f41fa5d4117e821fb82db761cfdcf33f)
2022-10-08 19:44:12 -04:00
Ivan Iskandar
3596de1c44 Tablet UI edge-to-edge tweaks (#8159)
* LibraryScreen: Tweak content padding application to draw under nav bar

* BrowseScreen: Tweak content padding application to draw under nav bar

Side note the tab content doesn't actually use its
scaffold (bottom) contentPadding so it's definitely will
be a headache in the future.

* Don't hardcode bottom nav padding

(cherry picked from commit 4b4be58d0d2cac6636858d57119e0657b1b56f59)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryContent.kt
2022-10-08 18:42:46 -04:00
Andreas
84c463d648 Fix filter search not triggering when clicking genre from Manga details (#8156)
(cherry picked from commit dcd5541e964b94f0dab9bb86fe207ec41b249296)

# 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/BrowseSourcePresenter.kt
2022-10-08 18:33:28 -04:00
arkon
896bc3253e Add JavaScriptEngine abstraction to extensions-lib (#8155)
This allows us to swap out the implementation in the future and on different platforms
without major changes to the extensions themselves.

(cherry picked from commit 7be68639107caecea879dc05edb92d81a4689a5a)

# Conflicts:
#	core/build.gradle.kts
2022-10-08 18:04:37 -04:00
arkon
48b9135056 Reword some reader settings
(cherry picked from commit caf9219d99c8f46a2c7371e7c4f0cfbba7f546d9)
2022-10-08 18:03:57 -04:00
Alessandro Tedesco
b645bcb1b3 Fix sort by date in LibraryPresenter (#8137) (#8145)
Co-authored-by: Alessandro Tedesco <alessandro.tedesco@zehus.it>
(cherry picked from commit b8fa326c21a3f05ae09e173038e5dc366395ab40)
2022-10-08 17:35:34 -04:00
stevenyomi
17111a4d02 LocaleHelper: use argument for a when expression (#8131)
(cherry picked from commit ff4fb83bff8f271220decb061405937230e0b18f)
2022-10-08 17:35:02 -04:00
arkon
827fe98211 Explicitly reword some locale names
Avoiding some country names in favour of more generic terminology where appropriate.

(cherry picked from commit 0ca14c61c256af770fe31c0d0cc8b7111f4b988b)
2022-10-08 17:34:46 -04:00
AntsyLich
41542517f7 Add methods to get manga and chapter url (#8114)
* Add methods to get manga and chapter url

Some fork supports directly opening chapters with webview hence `getChapterUrl`

* Review Changes

* Add since to javadoc

(cherry picked from commit de23226591376e998e4ff1ff7b2d4c2a0a805b09)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
2022-10-01 19:16:27 -04:00
AntsyLich
71076bd56a Move LibraryManga to domain layer (#8126)
(cherry picked from commit ea8383978b1783fd60d6057deb6c91cb5a85c505)

# Conflicts:
#	app/src/main/java/eu/kanade/data/manga/MangaMapper.kt
#	app/src/main/java/eu/kanade/presentation/library/LibraryState.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/LibraryManga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryItem.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-10-01 19:14:58 -04:00
AntsyLich
37fd74f141 Reduce some usages of toDbManga (#8116)
Co-Authored-By: stevenyomi <95685115+stevenyomi@users.noreply.github.com>

Co-authored-by: stevenyomi <95685115+stevenyomi@users.noreply.github.com>
(cherry picked from commit b04d1e5f50b1a3622e8bfde3ddced7e5a7cd8e2e)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
2022-10-01 18:39:11 -04:00
AntsyLich
30e3cc46c8 Downloader: Don't trust index provided by source (#8122)
(cherry picked from commit 98c459a6b69a26338d310afe7f2629fa939d6f89)
2022-10-01 18:33:18 -04:00
AntsyLich
c1df5adf2c Don't download completely read chapter if it was in queue (#8113)
(cherry picked from commit 00f442b77ee6b04a486f842bdad83487efb349d5)
2022-10-01 18:33:12 -04:00
Ivan Iskandar
1eb1763342 HistoryScreen: Remove paging (#8125)
* HistoryScreen: Remove paging

Per my testing performance-wise there's virtually no
difference in loading time.

* cleanups

* add key and contentType

(cherry picked from commit 42b0e3e4389b78556ccf34b93edc7d454de5881e)
2022-10-01 18:33:02 -04:00
Andreas
dbeb6c721a Tweak behavior on Browse screen (#8121)
* Tweak behavior on Browse screen

- Fix system back popping controller
- Add behavior to system back to cancel search toolbar before clearing current search or popping controller

* Review changes

(cherry picked from commit 6ac17363ed68487b2262308ee9d671ad301f2754)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
2022-10-01 18:30:01 -04:00
Ivan Iskandar
8e4f038e9a ExtensionScreen: Adjust item visual (#8120)
* ExtensionScreen: Adjust item visual

* Move install status view and add progress indicator
* Add secondary item modifier to info texts
* Wrap info texts with FlowRow in case of unavailable space
* Remove language text in non-installed items

Extra content:
* Change the list key to be more consistent
* General cleanups

* typo

(cherry picked from commit 58c47c4c50936f061e65434f60af56a92a51dfb2)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
2022-10-01 18:15:27 -04:00
Shamicen
d540d83574 Fix ComicInfo.xml not being read if .noxml file exists too (#8111)
* gives ComicInfo.xml files priority over noxml files if both are at the chapter root.

* delete the noxml file if both a noXml file and a ComicInfo file exist

(cherry picked from commit 80b2ebc45b5f04bcd832ed2497d3f2f6ea4adf10)
2022-10-01 18:06:30 -04:00
AntsyLich
5002bafa22 Fix total item count in library app bar (#8117)
(cherry picked from commit ef2c9460b5dc15bb9af6a430fa0a93765debcef4)
2022-10-01 18:06:14 -04:00
AntsyLich
54dcb640bb Improve DelayedTrackerStore (#8109)
* Improve DelayedTrackerStore

* Review changes

(cherry picked from commit ad84a8c3e9bd56025ab59beb5c024a7b7d6e2b35)
2022-10-01 18:06:05 -04:00
Alessandro Jean
d8e0344624 Improve search toolbar UX a little bit (#8102)
* Improve search toolbar UX a little.

* Fix wrong stringResource import.

* Revert `FocusRequester` change in favour of #8093.

(cherry picked from commit 5a37f2398a45949bb327a61210ab46d5207d09cb)
2022-10-01 18:02:18 -04:00
Ivan Iskandar
ca36adca29 manga-refresh-state (#8090)
(cherry picked from commit 98a4f6cccb85d39fb37c95aa99da71bb7abfd134)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-10-01 18:02:01 -04:00
Ivan Iskandar
1f444185da UpdatesScreen: Fix selection state after deleting download (#8100)
(cherry picked from commit 633bd6eb462ee187fb3c1d6c3f8f025cb0f9eedc)
2022-10-01 17:40:08 -04:00
stevenyomi
20a4a3af98 Remove cache control on already cacheless image request (#8085)
(cherry picked from commit f4c684b4b8729fb91b685f9990b33ba344dfa9c2)

# Conflicts:
#	source-api/src/main/java/eu/kanade/tachiyomi/source/online/HttpSource.kt
2022-10-01 17:38:10 -04:00
Jobobby04
89b30bd8d8 Probably fix random source crashes 2022-09-26 14:00:15 -04:00
arkon
1e9dca95cb Fix date added when adding from browse source
Fixes #8059

(cherry picked from commit ec272f6c4ee9731dac5f6639c02c07fedd523698)
2022-09-25 21:13:01 -04:00
Ivan Iskandar
d5fcd3a67e BrowseSourceScreen: Adjust browse mode chips placement (#8076)
The chips row is now scrollable too and filter fab is removed

(cherry picked from commit 0190c36d20a0ef070fad8a6ab55906c25390144c)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceComfortableGrid.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
2022-09-25 21:11:29 -04:00
Alessandro Jean
2d2ee54c99 Add support to update strategy on global update (#7902)
* Add support to update strategy.

* Add JavaDoc and bump the LIB_VERSION_MAX constant.

* Fix a word typo.

* Store update strategy enum as integer in the DB.

(cherry picked from commit ba533f30ce70bdcfbfaaae3e7758dbe38fe6fb1b)

# Conflicts:
#	app/src/main/java/eu/kanade/data/DatabaseAdapter.kt
#	app/src/main/java/eu/kanade/data/manga/MangaMapper.kt
#	app/src/main/java/eu/kanade/data/manga/MangaRepositoryImpl.kt
#	app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupManga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/MangaImpl.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/sqldelight/data/mangas.sq
#	app/src/main/sqldelight/migrations/20.sqm
2022-09-25 21:04:10 -04:00
Jobobby04
3da5a2a20d Minor cleanup 2022-09-25 20:41:31 -04:00
Andreas
1f4bfc4764 Split the rest of the preferences in PreferencesHelper (#8074)
* Split the reset of the preferences in PreferencesHelper

* Capitalize ThemeMode

(cherry picked from commit 29fa93e829ca7f9c3a28c58f3de146bc2bd15aad)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
#	app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceValues.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionGithubApi.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/base/delegate/SecureActivityDelegate.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
2022-09-25 20:41:19 -04:00
Ivan Iskandar
0d0513cff7 GlobalSearchController: Auto focus search view when initial query is empty (#8073)
(cherry picked from commit 0fabe4bd013a1980b0fa3e70306e851acd1b5bc3)
2022-09-25 19:19:31 -04:00
Ivan Iskandar
fc8b15916a DownloadController: Fix first active download status not updating (#8069)
(cherry picked from commit f98b4f4e39514a48aab34ef4afee675bbd5bd6ac)
2022-09-24 23:26:20 -04:00
Ivan Iskandar
1fe34a35d7 SecureActivityDelegate: Fix cold-start only lock behavior (#8066)
(cherry picked from commit 467ceacb17770399fd1f276aebe887bafb516f49)
2022-09-24 23:25:14 -04:00
stevenyomi
5da4353730 Improve chapter recognition (#8050)
(cherry picked from commit 4b4a138eee71cfe6385085bc6795ea731f7e8c85)
2022-09-24 23:24:39 -04:00
Andreas
02a154bb85 Move chapter preferences from PreferencesHelper to LibraryPrefrences (#8061)
(cherry picked from commit b5dca2eb09c008563e6e977fb3379fb7548d1144)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/domain/library/service/LibraryPreferences.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
2022-09-24 23:24:28 -04:00
Andreas
1d9237d3ee Clear search query before popping controller when navigating up (#8055)
(cherry picked from commit d3520419d49f4c283b96de23fa12ac68b3f2db60)
2022-09-24 23:14:06 -04:00
Andreas
e5b99c0147 Recreate reader settings when opening sheet (#8054)
(cherry picked from commit acb8ab15b2e73ba2f161eb201e93ba3a36df2867)
2022-09-24 23:13:59 -04:00
Andreas
34735166ec Split backup preferences from PreferencesHelper (#8051)
(cherry picked from commit 5cdcc1679f2eb8a79586bf407d4d2f6fc60c2c49)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
2022-09-22 12:58:54 -04:00
arkon
7f29d6fc74 Minor cleanup
Also add POST_NOTIFICATIONS permissions to make Android Studio stop complaining about it.

(cherry picked from commit b37b3767f3c55a74bede78d11300249ab419a4c7)
2022-09-22 12:48:23 -04:00
Andreas
416db76218 Split download preferences from PreferencesHelper (#8048)
(cherry picked from commit e82963c9ef15416f6bf818c4043cf802c3033105)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/chapter/interactor/SetReadStatus.kt
#	app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-09-22 12:47:25 -04:00
happywillow0
02fe0df8f6 Update BrowseSourcePresenter.kt (#8040)
Set filters to default when reset is pressed.

(cherry picked from commit ec34977a64ae21c5dfe5533064882554ba964d44)
2022-09-22 12:36:22 -04:00
Jobobby04
8fb2faca12 Don't uselessly override the search in SearchController 2022-09-22 12:36:02 -04:00
Andreas
bdc45fb8aa Split track preferences from PreferencesHelper (#8046)
(cherry picked from commit e568951396220b95447a025615a4b57b273f8864)
2022-09-21 11:47:02 -04:00
Andreas
bcc3a40b36 Split reader preferences from PreferencesHelper (#8042)
(cherry picked from commit e275897bf9f3def5ccf17978d64b2969c8c85de7)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderGeneralSettings.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderReadingModeSettings.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/ViewerConfig.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerConfig.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsReaderController.kt
2022-09-20 16:57:00 -04:00
arkon
9a3c4e9d13 Remove redundant preference keys
(cherry picked from commit 2b089648a34c7b193f307647be67a057ca9196bb)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/library/service/LibraryPreferences.kt
#	app/src/main/java/eu/kanade/domain/source/service/SourcePreferences.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsReaderController.kt
2022-09-20 16:28:02 -04:00
AntsyLich
7041ce777a Cleanup logic in UpdatesPresenter (#8035)
(cherry picked from commit c2a831dded39c7ed4fab90647d2056aa557d7e05)
2022-09-20 16:17:33 -04:00
Andreas
b7363706d7 Split library preferences from PreferencesHelper (#8036)
(cherry picked from commit c740558327f0f40f1b58d04ca5d5baed9285f048)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/category/interactor/SetDisplayModeForCategory.kt
#	app/src/main/java/eu/kanade/domain/category/interactor/SetSortModeForCategory.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
#	app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsLibraryController.kt
2022-09-20 16:17:17 -04:00
arkon
d73e7aee9d Clean up UpdatesController
- Move loading state into scaffold (closes #7704)
- Move logic into presenter
- Make some composables private

(cherry picked from commit 0e3176a77c925bb7f9d9f87bf68476563f9b9e9e)
2022-09-20 15:55:28 -04:00
Jobobby04
b479d5a4f1 Fix crash 2022-09-20 15:50:14 -04:00
arkon
00bb74f330 Clean up base classes
Should be able to throw away some of the search controller stuff after Global Search is migrated

(cherry picked from commit 0225711f6f91417af0ae41d42f81c70c86a572ab)
2022-09-20 11:08:23 -04:00
arkon
966bd31d61 Catch error properly when app update check fails (fixes #8019)
(cherry picked from commit 7ec822503a50700153840d34095ac994415bcac2)
2022-09-20 11:08:14 -04:00
arkon
6c3183af8d Minor cleanup/fixes
- Add FAB collapsing in clear database screen (fixes #7935)
- Don't allow multiline category names to be entered
- Consolidate Downloaded Only / Incognito Mode banner components
- Fix see-through migrate screen sticky header

(cherry picked from commit 83871fc013d6ab8b44d64cf8ff3ce2ef27d61946)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryDialogs.kt
2022-09-20 11:08:05 -04:00
Andreas
f40477cf6e Split security preferences from PrefrencesHelper (#8030)
(cherry picked from commit b668364afbfdde9e91fda6621c80c96262c6492a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateNotifier.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceValues.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsSecurityController.kt
2022-09-18 13:25:51 -04:00
arkon
bffecf3833 Avoid invalid locales in language picker (fixes #7950)
We should probably prune the translations though.

(cherry picked from commit 877ae041a419be60d2f094130cf58096dc7f0120)
2022-09-18 13:08:54 -04:00
arkon
42a4d154cc Read metadata from ComicInfo.xml files in Local source (#8025)
Co-authored-by: Shamicen <84282253+Shamicen@users.noreply.github.com>
Co-authored-by: Andreas <andreas.everos@gmail.com>
Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>
(cherry picked from commit 1395343f116bfbc9c3ee04eed372299ea36aa22d)
2022-09-18 13:08:31 -04:00
Andreas
5d1dfb5290 Split source preferences from PreferencesHelper (#8029)
(cherry picked from commit 30b3b2d3ffd5d90aee293e9ae22b3cb2a4924c2b)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceExtensions.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesFilterPresenter.kt
2022-09-18 13:08:22 -04:00
Andreas
41c9c20e26 Use 1.x preference abstraction (#8020)
* Use 1.x preference abstraction

- Uses SharedPreferences compared to 1.x impl which uses DataStore but it breaks all settings screens currently
- Move PreferencesHelper to new PreferenceStore
  - PreferencesHelper should be split into smaller preference stores and be in core or domain
- Remove flow preferences as new PreferenceStore handles changes for us

Co-authored-by: inorichi <3521738+inorichi@users.noreply.github.com>

* Fix PreferenceMutableState not updating

* Fix changes not emitting on first subscription

Co-authored-by: inorichi <3521738+inorichi@users.noreply.github.com>
(cherry picked from commit 0086743a5311c22fb8c07f596ab5de384862a68a)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/source/interactor/GetEnabledSources.kt
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
#	app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateNotifier.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
#	core/src/main/java/eu/kanade/tachiyomi/network/NetworkHelper.kt
2022-09-18 12:31:49 -04:00
Ivan Iskandar
853ed03242 ExtensionsPresenter: Use StateFlow for extensions list (#8017)
(cherry picked from commit f54adb49a1af381798a8d65db3d82cc92e221139)
2022-09-16 13:59:09 -04:00
Ivan Iskandar
5d5cc22020 Fix always-on app lock on cold start (#8018)
# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/base/delegate/SecureActivityDelegate.kt
2022-09-16 13:58:58 -04:00
arkon
a27b25f7c6 Always attempt automatic backup creation
- Defaults to every 12 hours
- Minimum number of backups is now 2, just to offer some level of redundancy in case something happens
- If it's missing storage permissions, it'll fail but that's the user's loss if they somehow haven't granted that permission yet

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
2022-09-16 13:57:19 -04:00
arkon
22b6231a68 Remove some dead code
# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/widget/preference/SwitchPreferenceCategory.kt
2022-09-16 13:55:13 -04:00
Andreas
8a322ea28e Extract source api from app module (#8014)
* Extract source api from app module

* Extract source online api from app module

(cherry picked from commit 86fe85079413f8ed6e1109b46e6131a9b788b988)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
#	core/src/main/java/eu/kanade/tachiyomi/network/NetworkHelper.kt
#	source-api/src/main/java/eu/kanade/tachiyomi/source/Source.kt
#	source-api/src/main/java/eu/kanade/tachiyomi/source/model/SManga.kt
2022-09-16 13:49:41 -04:00
Ansh
b975b9b86f Fix stacking of Settings menu in the reader on multiple taps (#8002)
* fix : conditional check added to avoid stacking of dialog

In onClickListener, bottom sheet is being opened depending on status of dialog sheet, if it's showing or not.

* chore : refactored conditional logic

* Update ReaderActivity.kt

(cherry picked from commit 30ac94181b2c410aedead964a815b080ef3e62ee)
2022-09-15 23:11:50 -04:00
Ivan Iskandar
897651a75a Fix derivedStateOf errors (#8008)
(cherry picked from commit 6865c21c75b67708b26cc78d68747945ea206641)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryContent.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-09-15 23:11:35 -04:00
Ivan Iskandar
2f7a8d0505 LibraryItem: Fix equality check (#7999)
Proper equality check is needed by compose for state changes.

(cherry picked from commit 7270c48f26bf61780aca5f588c742839fd3e9c2f)
2022-09-15 22:58:42 -04:00
Jobobby04
3e6a7b666b Fix filtered_scanlators messing up again 2022-09-15 22:57:17 -04:00
Jobobby04
39be552302 Fix browse fetching manga info for all manga 2022-09-13 21:51:45 -04:00
Jobobby04
5cb7047173 Source category fixes 2022-09-13 21:11:26 -04:00
Jobobby04
4eef4b5988 Rename pre_migration_controller xml to pre_migration_list 2022-09-13 21:09:24 -04:00
Jobobby04
f28342601b Minor improvements to browse source 2022-09-12 00:10:04 -04:00
Jobobby04
7920eeb278 Fix saved searches for sources without filters 2022-09-12 00:01:45 -04:00
Jobobby04
d6bbb69966 Fix saved searches not working in source feed 2022-09-11 23:52:04 -04:00
Jobobby04
97641e7692 Handle query search in source feed 2022-09-11 23:45:29 -04:00
Jobobby04
10d3df5b6c Handle back button when there is a search query in source feed 2022-09-11 23:42:28 -04:00
Jobobby04
01525c30f2 Add database subscriptions for feed and better thumbnail fetching 2022-09-11 22:19:26 -04:00
Jobobby04
8799f0c091 Syncronize networkToLocalManga because of data races 2022-09-11 21:13:30 -04:00
Jobobby04
8b8b17bb2d Linting 2022-09-11 20:38:18 -04:00
Jobobby04
20ae97cd98 Prevent okhttp from caching page previews 2022-09-11 19:57:42 -04:00
AntsyLich
81faf22562 Flatten available extensions with its source (#7956)
* Flatten available extensions with it's source

We should also do something similar for installed extensions

Supersedes #7200

* Dedupe sources

(cherry picked from commit c51e83c048b9575b322690fdadddba0001690d4d)
2022-09-11 19:49:32 -04:00
stevenyomi
4bab900459 Prevent okhttp from caching covers and chapter images (#7967)
(cherry picked from commit 52fa28c16a4f9771dd4214aed1772fde1185d93a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/source/online/HttpSource.kt
2022-09-11 19:49:20 -04:00
AntsyLich
e5bf6664f7 Change logic in BitmapFactory.Options.splitData (#7989)
(cherry picked from commit 935c8e7d827ebf1db624c7d26ab7310d312b590c)
2022-09-11 19:47:38 -04:00
arkon
359d855e21 Check the actual folder when deleting source folder in case of stale cache
(cherry picked from commit f9bbbce466310147927ffb7317f432e2f3fc478a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadCache.kt
2022-09-11 19:47:23 -04:00
Andreas
25ac8a3a70 Count the downloads under each header instead of count the number of headers (#7990)
(cherry picked from commit 0215b66098ec1fae2c1f9f845345c6bc67cb812d)
2022-09-11 19:45:47 -04:00
Jobobby04
3562816e89 SY linting 2022-09-11 19:43:45 -04:00
arkon
228f2c78d2 Bump dependencies + linting
(cherry picked from commit cd3cb72b65d2f5f6ec038eb319717e21e3a1731e)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
2022-09-11 19:32:45 -04:00
arkon
a80730748e Remove unused resources
(cherry picked from commit 28594bba2c7ffc71bad3164640d04b612b1a6920)
2022-09-10 14:20:53 -04:00
AntsyLich
10f351de66 Cleanup logic of onStripSplit in WebtoonPageHolder 2 (#7976)
(cherry picked from commit 56826fb4771488ce5759828137355432b24455cc)
2022-09-10 14:19:09 -04:00
arkon
23a7001f6d Remove unused resources
(cherry picked from commit 448978ac8a51be1b0f87a13717908c8316b43292)
2022-09-10 14:18:37 -04:00
Jobobby04
b44afb6013 Minor cleanup 2022-09-10 14:17:54 -04:00
Jobobby04
eba7d137ee Convert biometric times to compose 2022-09-10 14:06:39 -04:00
Jobobby04
fc44ffa5af PreMigrationController: Partial Compose Conversion 2022-09-10 13:25:25 -04:00
Jobobby04
d0518515e9 Control FAB with Compose in SourceFeed 2022-09-10 12:25:30 -04:00
Ivan Iskandar
e6767b747b DownloadController: Partial Compose conversion (#7969)
Item list is not changed as currently there is no fitting Compose component to
replace the drag-drop behavior.

(cherry picked from commit fb9791f5976b9a877adeb656e2decfc4d77420ff)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/tachiyomi/ui/download/DownloadHeaderItem.kt
2022-09-10 11:25:07 -04:00
nzoba
a0a76c99f7 Fix download ahead missing out 1 chapter (#7927)
* Fix download ahead missing out 1 chapter

* Move toLong() function

* Add check whether the next chapter is queued

(cherry picked from commit 07d1b9f3bac5df3c469601b8d08ed024b5e607ec)

# Conflicts:
#	app/src/main/java/eu/kanade/data/manga/MangaRepositoryImpl.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
2022-09-10 11:22:36 -04:00
AntsyLich
a1dd957f2f Cleanup logic of onStripSplit in WebtoonPageHolder (#7955)
* Cleanup logic of `onStripSplit` in WebtoonPageHolder

* Update app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonPageHolder.kt

Co-authored-by: arkon <arkon@users.noreply.github.com>
(cherry picked from commit 6b91f6545704ba6facace7b1d0cdd129ab132f71)
2022-09-10 11:11:03 -04:00
AntsyLich
0e2dba8cd4 LocalSource: Create cover file if it doesn't exist (#7954)
(cherry picked from commit 0c7b1bda7f3e9bf3b017b734f64f3ad4b093c22a)
2022-09-10 11:10:53 -04:00
arkon
4a2822bd2c Bump default user agent string
(cherry picked from commit 26d8e47bb9ca51418d46eb90b12d660823febf33)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
2022-09-10 11:10:37 -04:00
AntsyLich
cb0bd82170 Webtoon Split: Improve performance (#7947)
(cherry picked from commit d55c854ebf671a7a50c57a6f8a41d9429b2a5d57)
2022-09-10 11:09:29 -04:00
Andreas
138fc03d1b Fix Filter not being applied in Browse Source (#7945)
(cherry picked from commit 6b2b21edfa63f01b956ec27386b0c729be2e6d18)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
2022-09-10 11:09:16 -04:00
Ivan Iskandar
25ad9c7fab Fix missing downloaded only/incognito banners in Browse Source (#7936)
(cherry picked from commit 99270e370e1aba37c3ab5d8954363dd335ca0353)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
2022-09-10 11:05:48 -04:00
Jobobby04
53df21d8db Make sure to cancel the migrations when closed 2022-09-07 21:20:09 -04:00
Jobobby04
96f24e0600 Rewrite migration, shove all logic into a presenter instead of the UI 2022-09-04 19:42:08 -04:00
Jobobby04
6e1e42fefd Address some OkHttp nullability issues 2022-09-03 19:55:30 -04:00
arkon
0c1ac913cb Reimplement extensions search
Not sure if I should abstract this out to per-tab though. Maybe when we need it...

(cherry picked from commit 21804bfc45b05c67fe6198cd0452cd67b05bc3e8)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowseController.kt
2022-09-03 19:50:22 -04:00
arkon
33c04e4778 Address some OkHttp nullability changes
(cherry picked from commit 38950f7bc8b10ccf86995ebacc83f86ca1a6958e)
2022-09-03 19:45:47 -04:00
arkon
da69f7876d Fix missing downloaded only/incognito banners in Browse
(cherry picked from commit bbf5c86b4699703048fb95f4c7922a9c147e164d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowseController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowsePresenter.kt
2022-09-03 19:45:38 -04:00
Andreas
99d5d8b91f Merge Latest and Browse into one screen (#7921)
* Merge Latest and Browse into one

* Add back Latest button

* Change context to IO instead of launching a job

* Use loading screen when loading initial page

(cherry picked from commit cc6aef693e1a15f695ffa7eebd968004a6557010)

# Conflicts:
#	app/src/main/java/eu/kanade/data/source/SourceRepositoryImpl.kt
#	app/src/main/java/eu/kanade/presentation/browse/BrowseLatestScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/SourcesScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseLatestToolbar.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceComfortableGrid.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowsePagingSource.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/latest/LatestUpdatesController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/latest/LatestUpdatesPresenter.kt
2022-09-03 19:43:55 -04:00
AntsyLich
3ba39f6557 Remove download source folder when empty (#7928)
(cherry picked from commit 5a320d87e80e84814e92c1f727201eaadaff294e)
2022-09-03 18:42:06 -04:00
AntsyLich
3fc05b03f5 Lessen the use of GlobalScope launchIO (#7916)
* Lessen the use of GlobalScope `launchIO`

* Wrap some calls with `NonCancellable` context

(cherry picked from commit da95ecb6869314f35eb73c6d9245b4e0d127f22d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-09-03 18:41:58 -04:00
Ivan Iskandar
8c92b2fe72 Adjust app lock mechanism (#7924)
Now uses enum to also handle timed lock

(cherry picked from commit 774a87a42ac0ad0410fe50272da9121796c1c95d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/base/delegate/SecureActivityDelegate.kt
2022-09-03 18:40:59 -04:00
AntsyLich
e6d0f90b95 Fix tmp cbzs are counted towards manga download count (#7909)
* Fix tmp cbzs are counted towards manga download count

* Review Changes

* Review Changes 2

(cherry picked from commit a43754e1a67beb24810ee67a10989c882cd28e56)
2022-09-03 18:29:00 -04:00
arkon
0f702d52a2 Fix webtoon viewer pages not loading
Partial revert of fddca151823d066cad7f12da2e0b8d1c65f2b9d1

(cherry picked from commit 8ef200861cbc9c0332fedf4622ee7cf9394230a8)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonPageHolder.kt
2022-09-03 18:28:52 -04:00
arkon
ce9dec14b1 Bump OkHttp and re-enable fast fallback
It wasn't very stable last time, but we'll see how it goes in preview builds.

(cherry picked from commit 30b86e530b5e44c95415beaba5ec2747a73a66be)
2022-09-03 18:27:42 -04:00
Andreas
e009398c0f Resolve review comments for BrowseSourceScreens (#7912)
(cherry picked from commit 2f26982e346d65de82d0809d7262a17f737d9eb2)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseLatestScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseLatestToolbar.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/latest/LatestUpdatesController.kt
2022-09-03 18:27:33 -04:00
arkon
57b336b2b8 Maybe fix extensions list crash
Also fix weird animation of last updated text in Updates

(cherry picked from commit 4c1da1bd1daa9ce51778546021de727c17ef65ba)
2022-09-03 17:55:00 -04:00
arkon
946432abca Clean up interceptors a bit
(cherry picked from commit dc62d0ea8bf0a09303c30cd48d48cb1787f78da4)
2022-09-03 17:54:47 -04:00
AntsyLich
aa411dc3e8 Don't update page progress and allow preload when on StencilPage (#7899)
Also cleanup a little in WebtoonPageHolder

(cherry picked from commit fddca151823d066cad7f12da2e0b8d1c65f2b9d1)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonPageHolder.kt
2022-09-03 17:54:38 -04:00
AntsyLich
5efdd07362 Manually handle HTTP 103 through WebView (#7907)
* Manually handle HTTP 103 through WebView

* Review Changes

(cherry picked from commit 81f49f34efe046bbf7cd63cbda1fea1521434a4d)
2022-09-03 17:53:44 -04:00
arkon
9318b0d803 Minor cleanup
(cherry picked from commit c39a1b7867976bddc85d3bfbffeeb717b8bf4501)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowseController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrateSourcesTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesTab.kt
2022-09-03 17:53:12 -04:00
Andreas
16ea8aa3b7 Use Compose on BrowseSourceScreens (#7901)
(cherry picked from commit d4b764fa317ddcb04b8fefb982cd6b9a6dfc1598)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryGridCover.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/Pager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceComfortableGridHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceCompactGridHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceItem.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceListHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/latest/LatestUpdatesController.kt
#	app/src/main/res/layout/source_comfortable_grid_item.xml
#	app/src/main/res/layout/source_compact_grid_item.xml
#	app/src/main/res/menu/source_browse.xml
2022-09-03 17:41:24 -04:00
AntsyLich
0bcdbc9f26 Add "Njalla" dns provider (#7908)
* Add "Njalla" dns provider

Details ~~Tho there is none~~: https://dns.njal.la/

* Lint

(cherry picked from commit d85af2fec624aabfd9f2b2c829e8ea02dee09ad0)
2022-08-31 19:01:43 -04:00
arkon
7c6ab4edcf Implement nicer UI for migrate list sorting
(cherry picked from commit 90c08303fa484ca241d3c87dcc2e55f423328815)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/MigrateSourceScreen.kt
2022-08-31 19:00:56 -04:00
arkon
8c182df784 Initial conversion of browse tabs to full Compose
TODO:
- Global search should launch a controller with the search textfield focused. This is pending a Compose rewrite of that screen.
- Better migrate sort UI
- Extensions search

(cherry picked from commit 92e83f702c775d5ab5a0b4248995308155150811)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/MigrateSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/SourcesScreen.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryTabs.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowseController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrationSourcesController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesPresenter.kt
2022-08-31 18:55:00 -04:00
Jobobby04
aaa2a961ae Convert Debug Menu to a FullComposeController 2022-08-31 17:04:50 -04:00
Jobobby04
9dad9a6551 Use FullComposeController for Source Feed 2022-08-31 17:01:10 -04:00
Jobobby04
a760198981 Convert Source Feed to Jetpack Compose 2022-08-31 16:21:26 -04:00
Jobobby04
493a1ab4a6 Convert Feed to Jetpack Compose 2022-08-31 15:20:29 -04:00
Alessandro Jean
5ee6029395 Enable sub-languages on app first run (#7127)
* Enable sub-languages on app first run.

* Fix wrong language code string parsing.

* Fix some build issues due to rebase.

* Use PreferenceHelper and remove an extra preference.

* Remove a constant.

(cherry picked from commit 084e6a964ee2f2a8499b861e5e3e58938ddab6e9)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt
2022-08-31 11:19:09 -04:00
stevenyomi
e2d496560c Rewrite RateLimitInterceptor (#7889)
(cherry picked from commit 532f662b057d269893d84967f9a8fd361e6bfb85)
2022-08-31 11:18:13 -04:00
AntsyLich
6383bade26 Rename source download folder on source rename (#7898)
* Rename source download folder on source rename

* Review Changes

* Review Changes 2

(cherry picked from commit 53f5ea7fe9e0a918a0970c88521ba978c0def012)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceManager.kt
2022-08-31 11:18:05 -04:00
AntsyLich
e0f70bf194 Reword "All" source/ext lang to "Multi" (#7895)
* Add "multi" as a recognized source/ext lang

* Review Changes

(cherry picked from commit fc6946ed61361cfca026a28d13a00d8b39acb3f0)
2022-08-31 11:17:20 -04:00
arkon
588d11c14f Convert settings main and search views to full Compose
(cherry picked from commit f5c7aa1142eec366092722d6301af939f19ae970)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryToolbar.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/base/controller/ComposeController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsMainController.kt
2022-08-29 19:01:59 -04:00
arkon
46b369036e Convert extension details to full Compose
(cherry picked from commit 761635b572f4cffa0c4979df32635bba91c0b6cb)
2022-08-29 18:50:22 -04:00
arkon
1e344385ea Update chapter progress upon registering tracker (closes #7209)
Co-authored-by: Saud-97 <Saud-97@users.noreply.github.com>
(cherry picked from commit 488d8ab8cfbee2cab6121154b546f4764852f088)
2022-08-29 18:49:01 -04:00
arkon
f5fd4526d3 Remove some usages of global scope
(cherry picked from commit 8efb20439a3d06766f257227f68bf1b762f9c432)
2022-08-29 18:48:52 -04:00
arkon
ae64f9fabd Add last update time to Updates Tab (closes #5466)
Co-authored-by: datreesezcup <datreesezcup@users.noreply.github.com>
(cherry picked from commit 43c195e14a13aff9a3d2552f4f4a08ecee2d0b63)
2022-08-29 18:46:36 -04:00
arkon
829bd7b247 Show number of unique library items (closes #6522)
- Filters do affect this
- Won't be shown if tabs aren't visible and there's more than 1 category (so it'd always show the per-category count), but a separate stats page should show that info instead

(cherry picked from commit 8a3a7418d055b500517ef6c9c5623328ae01bc10)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-08-29 18:46:08 -04:00
Jobobby04
2784794634 Fix sources after Jsoup update 2022-08-29 18:13:12 -04:00
Andreas
65f6e14a46 Tweak flag classes for Library (#7829)
* Tweak flag classes for Library

- Add interface for Flag and Mask
- Merge Sort Type and Direction into one class
- Use custom serializers for preferences
  - Mainly to not break the old

* Review changes

(cherry picked from commit 880407442c598d1b63db8be43f4848550dc17ff1)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/domain/category/interactor/SetDisplayModeForCategory.kt
#	app/src/main/java/eu/kanade/domain/category/interactor/SetSortModeForCategory.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceItem.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/setting/SortDirectionSetting.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/setting/SortModeSetting.kt
2022-08-29 18:12:37 -04:00
renovate[bot]
bee3d24ae8 Update dependency org.jsoup:jsoup to v1.15.3
(cherry picked from commit 3b34a878a75ca75e651e3e296f36cdc74659dad1)
2022-08-29 16:01:52 -04:00
AntsyLich
ceec0421c8 Fix IndexOutOfBoundsException when using Split tall images (#7892)
Also little cleanup

(cherry picked from commit b79340989f39a5d58e69617ce7d2470d45d38474)
2022-08-29 16:01:35 -04:00
AntsyLich
715a5dcab2 Long strip split fixes 2.0 (#7882)
options was having issues in returning width for some reason

Fixes #7880
Fixes #7881

(cherry picked from commit 0e526c36bed52670237165c2e870b154966661b6)
2022-08-28 13:17:14 -04:00
Jobobby04
a0f2094c51 E-Hentai set gallery id as hidden scanlator 2022-08-28 12:06:20 -04:00
AntsyLich
bd1acc3ae7 Long strip split fixes (#7875)
* Fix image width in `splitStrip`

* Fix reader switch isn't in md3

(cherry picked from commit 1948d55d5da404c47ef5a390e14e0e0c54e3fe36)
2022-08-27 20:50:53 -04:00
arkon
bda100f574 Fix checkbox selection when tapping text in Compose dialogs
(cherry picked from commit cd82c88b9aa8f344d8ee9938eeae8a6293d5f231)
2022-08-27 20:50:25 -04:00
AntsyLich
da611bfa76 Prevent unofficial exts from getting marked as obsolete or updateable (#7871)
* Prevent unofficial exts from getting marked as obsolete

* Prevent unofficial ext `hasUpdate` getting marked as true

(cherry picked from commit 8d40e20b7de49056940a6f07378778934724534a)
2022-08-27 20:50:16 -04:00
arkon
8a4099a5dd Minor cleanup
(cherry picked from commit 31b62b27791cc3135f46bc660bc3d223b02f93e2)
2022-08-27 20:49:56 -04:00
AntsyLich
1e395246dc Long Strip Split for Webtoon (#5759)
* Long Strip Split for Webtoon

* Review Changes

* Review Changes 2 + Rebase

(cherry picked from commit 88b56121a34e613f103bbbfb77c8e66e86f825f6)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderReadingModeSettings.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonViewer.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsReaderController.kt
#	app/src/main/res/layout/reader_webtoon_settings.xml
2022-08-27 20:49:45 -04:00
Mubashir Haroon
5c4481a704 Trim newlines from user agent (#7858)
* trim newlines from user agent

* fix indents

* fix indents for real

* actually fix indents

(cherry picked from commit aab5f083dbae25380b97c7407309beb90a64d845)
2022-08-27 20:09:20 -04:00
arkon
655c0d8c90 Minor tweaks to download custom dialog
- Allow large decrements (just goes to 0)
- Use Material3 text field for proper theming
- Move dialog composable to presentation package

(cherry picked from commit 03b9950fa15974f1a599a96c26177a612bed5c9d)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/database/components/ClearDatabaseDialogs.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
2022-08-27 20:09:09 -04:00
Andreas
5baf87edd0 Move a few Dialogs to Compose (#7861)
* Move a few Dialogs to Compose

- Separating dialogs that are not needed in the PR for the move to Compose on the Browse Source screen
- ChangeMangaCategoriesDialog and AddDuplicateMangaDialog will be removed in the Browse Source screen PR

* Review changes

(cherry picked from commit 2453d1a8861d61b03dce398fad169e556551b400)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibraryState.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-08-27 20:03:05 -04:00
stevenyomi
0d221657b2 Fix chapter download with empty scanlator (#7844)
(cherry picked from commit 4b9a6541d13de64d0a9b85e1afb4e143492cb5fe)
2022-08-27 19:48:36 -04:00
nzoba
a024d8810c Fix stucked downloads when service not started (#7846)
* Fix stucked downloads when service not started

* Fix chapter download restart even if should be deleted

(cherry picked from commit a70b8486468ce8b57ae7a7ddc3ac845337789d45)
2022-08-27 19:48:27 -04:00
Andreas
77245074e8 Add DelicateCoroutinesApi to GlobalScope extension functions (#7848)
(cherry picked from commit ce44c0615ba6efad0d78182885f7c80e02e8a09e)
2022-08-27 19:48:18 -04:00
nzoba
7949865484 Download ahead (#7226)
(cherry picked from commit f207e8772299b55ffc08aa62d06fae8acd23a06d)
2022-08-27 19:48:11 -04:00
Tien Long Lam
d07acb76b7
Revert "Fixes the slider when in 2 page mode (#657)" (#666)
This reverts commit 6347793701.
2022-08-23 10:29:06 -04:00
Tien Long Lam
6347793701
Fixes the slider when in 2 page mode (#657)
* Correct slider step size when on 2-page mode

* Fix reader slider when in 2-page mode
2022-08-22 12:58:13 -04:00
Tien Long Lam
ad6ffe4fec
Able to move 'Merge' button to overflow menu (#655) 2022-08-22 12:57:50 -04:00
Jobobby04
bda2f81c66 Minor cleanup 2022-08-22 12:43:55 -04:00
arkon
37b5b2f2e1 Reorder themes
(cherry picked from commit 2e81e1b7d8cc16e49339500a798d94172f274045)
2022-08-22 12:39:00 -04:00
Batuhan
723ae93ad8 New Theme Tidal Wave (#7825)
* New Theme Tidal Wave

Added a new strong blue theme appearance to Tachiyomi titled Tidal Wave.

* Better Tertiary Color: Seafoam Green

Updated the tertiary color to be lighter and match the blue more. Also changed the active button color to contrast better.

(cherry picked from commit 4b0f54966653c0a313d60cfe0d13d12b2c12ec79)
2022-08-22 12:38:39 -04:00
stevenyomi
90db474512 DownloadProvider: Remove duplicate in valid chapter dir name list (#7826)
(cherry picked from commit 40749dc76709a1792fb01f90fa9a03da03e7e0b7)
2022-08-22 12:38:29 -04:00
stevenyomi
3eb943055e Disable explicit nulls for JSON serializer (#7824)
* Disable explicit nulls for JSON serializer

* format to multiple lines

(cherry picked from commit 3599d53c61dee40e61615dc5424738d2f5779155)
2022-08-22 12:38:21 -04:00
stevenyomi
3ca2174c65 NetworkHelper: log real requests and responses (#7820)
(cherry picked from commit 2156844b87ba0fea303ba6dc160da61cf7d9dc95)
2022-08-22 12:38:05 -04:00
Ivan Iskandar
595380f81d LibrarySettingsSheet: Fix race condition when applying sort mode (#7805)
Also fix sort direction can't be changed for default category

(cherry picked from commit 763288ab137505813f951bb02ca3ba9c1590dbc4)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/category/interactor/SetSortModeForCategory.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/setting/SortDirectionSetting.kt
2022-08-22 12:37:42 -04:00
Andreas
bf0ba54a6d Fix nav bar appearing when going from Library's action mode (#7821)
fixes #7788

(cherry picked from commit 6d6c38ecafc076098c98d0e12b0fbc7cf1c538e4)
2022-08-19 19:51:44 -04:00
arkon
556432eb0d Don't allow setting blank user agent string
(cherry picked from commit 3760b310df8701f929d4ca4acbe7facfa97a2220)
2022-08-19 19:51:36 -04:00
Andreas
ec210de6c5 Fix emoji going crazy and fix tabs being visible when library is empty (#7811)
fixes #7792
fixes #7791

(cherry picked from commit 47b56644dee9a097cfce384ca030ddb75ddadfe5)
2022-08-19 19:51:28 -04:00
stevenyomi
39e0d7f4e8 Remove 1.x source models (#7781)
(cherry picked from commit e36e9d9d5c1b2a7b55f28f2bf0ef064880cbac8f)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/interactor/UpdateManga.kt
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/LocalSource.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/Source.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/model/SManga.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-08-18 15:44:31 -04:00
Andreas
b9db59fa45 Lint changes (#7802)
- Fixes current lint issues
- Changes lint task to lintKotlin on PRs

(cherry picked from commit 09abfc7843ef69d65cb4f1a3459ff8ee2718e4f7)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
#	build.gradle.kts
2022-08-18 14:37:45 -04:00
stevenyomi
128a868ffb Fix notification and add visual cues when triggering a second update (#7783)
(cherry picked from commit 1f34f5277c9500e6a3a8069738a0eeeaf8c49ef5)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibraryScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
2022-08-18 14:25:45 -04:00
Ahmad Azwar Annas
5c2d07d14d Add Mullvad and Control D as DoH providers (#7785)
(cherry picked from commit 80b4b7bee6ad14a4eb7c83f1358a3e15150a7a43)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
2022-08-18 14:22:46 -04:00
stevenyomi
66ee19daaf Fix download chapter dir when scanlator is empty or changed (#7780)
(cherry picked from commit 1f9f9662bc5abe75f24dae30d48e843005d86394)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/chapter/interactor/SyncChaptersWithSource.kt
2022-08-17 15:35:26 -04:00
Jobobby04
9fe7f23b81 Minor fix 2022-08-17 13:52:00 -04:00
Ivan Iskandar
7ef4291763 Reinstate in-app language picker (#7493)
Also add required config for android 13 system picker

(cherry picked from commit 2d690a09b37a55e87ce4365102ee818c5d9d1ba0)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsGeneralController.kt
2022-08-14 16:07:33 -04:00
Ivan Iskandar
aad81d9c79 Use application context to create toast (#7756)
(cherry picked from commit b0520df1dd4ff169f03b744954e181df94459efe)
2022-08-14 16:04:22 -04:00
Jobobby04
a19e808e47 Remove Library settings sheet in library settings 2022-08-13 15:03:55 -04:00
Ivan Iskandar
33e0d34afa UpdatesPresenter: Prevent unnecessary screen recompose (#7742)
(cherry picked from commit 5f378e28b63e9d606fa3be1acf6650b93ff86daa)
2022-08-13 15:02:16 -04:00
Ivan Iskandar
cda5730202 MangaFullCoverDialog: Use the new image picker when available (#7740)
(cherry picked from commit aab5a5689250d44913ac3fe2f1a50a3af95b1296)
2022-08-13 15:01:47 -04:00
AntsyLich
38237ccc4c Some tweaks on Updates screen (#7729)
Based on #7708, #7709 and #7717

Co-Authored-By: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
Co-Authored-By: Andreas <6576096+ghostbear@users.noreply.github.com>

Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
Co-authored-by: Andreas <6576096+ghostbear@users.noreply.github.com>
(cherry picked from commit 1474c8ffb337f824bc7f30f1f0f3e70e27205254)
2022-08-13 15:01:25 -04:00
Ivan Iskandar
c0761e8b19 MainActivity: Fix crash on back pressed (#7731)
(cherry picked from commit 441e7bf8b13d320b39a03d998d76fd5096ac9e60)
2022-08-13 15:01:16 -04:00
Andreas
948abf2798 Change usage of name to visualName when Default category can be shown (#7725)
(cherry picked from commit ff996d282a2aeb1fcd593bf38400e94453fd2e9b)
2022-08-13 15:00:43 -04:00
AntsyLich
0b1afc1b94 Change return value of SyncChaptersWithSource.await() (#7715)
* Change return value of `SyncChaptersWithSource.await()`

`updatedToAdd.subtract(reAdded).toList()` never worked as at this point `updatedToAdd` contained ids from db where `reAdded` had default one. Was the same case before the rewrite.

Removed `toDelete` from return value as it was not being used anywhere

* Add doc string

* Use HashSet

Co-authored-by: stevenyomi <95685115+stevenyomi@users.noreply.github.com>

Co-authored-by: stevenyomi <95685115+stevenyomi@users.noreply.github.com>
(cherry picked from commit 11f640cfee427b8912cdc43fc3efc61e0f774aa7)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-08-13 15:00:32 -04:00
arkon
2999190fad Address misc. build warnings
(cherry picked from commit d6f1534ee8c95c7dc450f1cb86d378007e3bf53b)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchController.kt
2022-08-13 14:50:03 -04:00
arkon
4e4e369188 Fix crash when setting cover errors (closes #7714)
(cherry picked from commit e511f24979b0f40c545345ed151d3557644f79c6)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
2022-08-13 14:33:32 -04:00
Andreas
0b7d0f7f67 Log extension loading errors directly (#7716)
(cherry picked from commit 7892cc1519ef0ecf0dc0b519a0df8806eba05e99)
2022-08-13 14:30:41 -04:00
Ivan Iskandar
f99635bb3a MangaPresenter: Fix incorrect range selection (#7709)
(cherry picked from commit f7b11f2ce92627cbea713c200ed23ec596499d4f)
2022-08-13 14:30:32 -04:00
Ivan Iskandar
2ca853a302 Fix issues related to Manga screen slow load (#7708)
* Fix back handling when manga is still loading

* MangaPresenter: Show what we have earlier to reduce percepted slowness

(cherry picked from commit b4e15263db3d00326abe5886fffb3608c9a85c47)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-08-13 14:30:16 -04:00
nzoba
425b21ec4e Set readStartTime when switching chapters in a single reader session (#7702)
(cherry picked from commit 7845f9430ec15b25efc0ee212142795b7b34025f)
2022-08-13 14:13:44 -04:00
Ivan Iskandar
c13a0a2722 Glance widget fixes (#7706)
* Fix glance failing when there's too much children

* Adjust cover error placeholder

(cherry picked from commit 16abfeeff0eb482482fb60ac8ab6d01d75942531)
2022-08-13 14:13:36 -04:00
Jobobby04
ce16496275 Simplify group by code further 2022-08-07 13:32:41 -04:00
Jobobby04
ffa8cee0ea Fix sorting crashes 2022-08-07 12:18:40 -04:00
arkon
b279c9115f Fix default category showing up in edit manga categories list
Also remove some usages of runBlocking

(cherry picked from commit 3bc6b1e202f8344356720467c60da19239e22ebc)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/more/AboutController.kt
2022-08-07 12:17:48 -04:00
Jobobby04
46fc6d44bc Fix group by settings with only default category 2022-08-07 11:37:41 -04:00
arkon
c0db682476 Minor fixes
- Fix categories modal showing when adding from source with no categories
- Use old categories icon in library bottom action menu

(cherry picked from commit 688cc64dffa8cdf1241d3b4e2467b5e8c8529800)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/components/MangaBottomActionMenu.kt
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
2022-08-06 18:25:28 -04:00
arkon
8b777e1e5a More backup/restore code cleanup
(cherry picked from commit 9f0052eceb8bdbe9ca1ea18a2aac18a4718387bf)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/AbstractBackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/AbstractBackupRestore.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupRestorer.kt
2022-08-06 18:19:05 -04:00
arkon
6f6a9b677c Start cleaning up backup/restore code
The abstraction was useful for handling 2 systems, but it's no longer needed. Cleaning it up will make migrating to domain models easier down the line.

(cherry picked from commit a2bb81b7db457c3927eaa1f03416a9b07985842b)

# 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/Backup.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
2022-08-06 18:06:31 -04:00
arkon
b0fc4dd6d4 Make screen loading indicators more consistent
(cherry picked from commit 5e68fe4fe92dfe281662fce84195288c743f5cb7)
2022-08-06 17:49:22 -04:00
Jobobby04
05f2f79e0d Update EHTags list 2022-08-05 16:34:00 -04:00
Andreas
394e9b3fe6 Move default category into database (#7676)
(cherry picked from commit 914831d51fbb915aea5cbb409b1da552862c380c)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/FullBackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/models/BackupCategory.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/Category.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/CategoryImpl.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
#	app/src/main/sqldelight/migrations/19.sqm
2022-08-05 14:48:37 -04:00
Alessandro Jean
af1ee662ed Add missing Authorization header on MAL refresh token request (#7686)
* Add missing Authorization header on MAL refresh token request.

* Make sure to also close the response when it have failed.

(cherry picked from commit 531546790853dd9adb91777de8d9560a610c4838)
2022-08-05 13:08:12 -04:00
Ivan Iskandar
4da028af6a ExtensionPresenter: Fix crash on first launch (#7685)
* Revert "Use SharedFlow for available extensions to always emit the value (#7609)"

This reverts commit 73901f50c0aee1cb82695642af72ff6ac7bc232d.

* ExtensionPresenter: Explicitly set refreshing status

* Scope coroutines job to presenter

* cleanup

* fix toast

(cherry picked from commit b3426f37e7d36be653363338288f74e2ae252a78)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt
2022-08-05 13:07:50 -04:00
nzoba
374d2d8a97 Save read duration to backup (#7672)
* Save read duration to backup

* Add default value

Co-authored-by: Andreas <andreas.everos@gmail.com>

Co-authored-by: Andreas <andreas.everos@gmail.com>
(cherry picked from commit 3d4e56948d86d10ecd227fb59b92da069f37a89f)
2022-08-05 13:04:27 -04:00
Ivan Iskandar
8aa313378f Reimplement appbar color overlay on scroll (#7663)
only on updates and history screen for now, but the required changes on app bar
is there.

also fix missing incognito-downloaded mode indicator on history screen

(cherry picked from commit 737cf9898db0f3e89752b82753c7fe2a88d7fef9)
2022-08-05 13:04:08 -04:00
Jobobby04
ee2fbedefb Fix resume manga fab not working properly for E-H manga 2022-08-05 13:03:36 -04:00
arkon
72ab3abc2f Remove some unneeded TODOs
(cherry picked from commit 322f3a07e8b49d76bbbcf5178be6aa7a1f91e25b)
2022-07-31 18:20:49 -04:00
Andreas
970e3e3880 Fix null pointer exception on Extension Detail screen (#7666)
(cherry picked from commit 6c7b3d78118c9c01aa51fc3c663c5a12c8f986dd)
2022-07-31 18:20:28 -04:00
arkon
26da2504df Remove unused viewstatepageradapter dependency
(cherry picked from commit 2ca62c4edaaa121dc674ab8a5e5d5f1516d84faa)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/widget/RecyclerViewPagerAdapter.kt
2022-07-31 11:57:20 -04:00
Ivan Iskandar
46cbcfc82e Glance widget for Updates (#7581)
* glance

* glance2

(cherry picked from commit 29e1976b90c5dfdc7cd649740d475d86c321f573)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
2022-07-31 11:51:51 -04:00
stevenyomi
702fdb054a Filter out empty genres before saving manga to database (#7655)
(cherry picked from commit 4efb736e56dd1e9f6438502dac915467f5b64f03)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/model/SManga.kt
2022-07-31 11:36:37 -04:00
Andreas
4b87831bdd Remove deprecated LibrarySort (#7659)
* Remove deprecated LibrarySort

* Apply suggestions from code review

(cherry picked from commit 58acf0a8aa3aa37b5d9c63d99987a05ee2f8790f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySort.kt
2022-07-31 11:35:29 -04:00
MatchaSoba
b729b7f0aa Fix logic for searchWithGenre (#7559)
(cherry picked from commit b563e85c3b744595272718f7e82e3272e2a7c57b)
2022-07-30 12:40:15 -04:00
Andreas
153730447d Use Compose on Clear Database screen (#7639)
(cherry picked from commit 99ac30e59f191bbe3b2e570b4c2e6ec389d64cf2)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/database/ClearDatabaseController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/database/ClearDatabasePresenter.kt
2022-07-30 12:40:03 -04:00
AntsyLich
c22a40bd70 Use Stable interface for Updates screen + Cleanup (#7627)
* Use Stable interface for Updates screen + Cleanup

Co-Authored-By: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>

* Disable swipe refresh in selection mode

* Review Changes

Co-Authored-By: Andreas <6576096+ghostbear@users.noreply.github.com>

* Review Changes 2

Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
Co-authored-by: Andreas <6576096+ghostbear@users.noreply.github.com>
(cherry picked from commit 4774deb1efe023ecff4fd41708dd224edc216c0b)
2022-07-30 12:12:56 -04:00
Andreas
c6e0abb07a Fix library bugs (#7648)
- Fix mixup in Action Menu
- Fix back action not clearing search

(cherry picked from commit db93d1da76ba453e5b499bab0d2482728014786f)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibraryScreen.kt
2022-07-30 09:12:44 -04:00
Jobobby04
5dccae234d Fix group by library updates 2022-07-29 22:16:41 -04:00
Andreas
9b19afb7b4 Merge GetExtensions and GetExtensionUpdates (#7646)
(cherry picked from commit 7d74b174e024f2dee84debec1a9826b942e093e4)
2022-07-29 19:40:58 -04:00
Andreas
e21badf48c Fix number of items not updating when Show category tabs is off (#7644)
(cherry picked from commit e513487caac5ef8d7e1b5a60db60291ee8ec5cba)
2022-07-29 19:40:46 -04:00
Ivan Iskandar
b368a53670 MangaPresenter: Add distinctUntilChanged to db flow (#7629)
* MangaScreen: Disable swipe refresh on action mode

* MangaPresenter: Add distinctUntilChanged to db flow

Now will only emit update when the related entry is changed

(cherry picked from commit 483b204fb5b6790fb6fe59ffd80345cd484ca241)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-07-29 09:11:02 -04:00
Andreas
b592709630 Fix category exclude not working in DownloadManager (#7641)
(cherry picked from commit 56028aff5546222da2f03af2f84d8660917b828e)
2022-07-29 09:02:15 -04:00
Jobobby04
b9956e3123 Lint 2022-07-28 21:53:10 -04:00
Jobobby04
cb62926edf Fix group by status 2022-07-28 21:52:58 -04:00
Jobobby04
bba4b991e8 Fix group by, filtering, sorting, and a few others 2022-07-28 21:44:30 -04:00
bucketmouse
89600fc7aa
Center padding option for Surface Duos/other foldables (#634)
* Add center margin option for horizontal dual page view

* Update readme to make the point of the fork obvious

* Center margins now added to large single images that would display in place of two smaller pages

* Cleanup; reworked preference into an int selector to specify which margins to add

* Suggested fixes and and readme reversion which somehow got skipped last commit

* Missed the build block in readme. Oops.
2022-07-28 19:03:09 -04:00
Ivan Iskandar
9db6d65957 Retain backstack views by default (#7621)
(cherry picked from commit dcafdac036155df76d1f8b013ca1d08634fd57c2)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
2022-07-28 09:09:36 -04:00
Jobobby04
1d593de654 Minor improvements for delegated source id lists 2022-07-26 16:46:06 -04:00
Jobobby04
a44f7db3c6 Improve library search, fix a few edge cases 2022-07-26 16:25:44 -04:00
Ivan Iskandar
1e07cb0682 BrowseSourceController: Fix broken page after opening manga (#7608)
Probably related to 788583e66f6ad355f65f5bd2db303faa85163c5c

(cherry picked from commit 1c8da5fa974b4cfd0fd762b0b1c2a07622ac7662)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
2022-07-25 11:08:07 -04:00
Andreas
7edf8dd555 Use SharedFlow for available extensions to always emit the value (#7609)
- Fixes Extension screen being stuck refreshing due to StateFlow not emitting due to the value being the same

(cherry picked from commit 73901f50c0aee1cb82695642af72ff6ac7bc232d)
2022-07-25 11:06:45 -04:00
Andreas
87d7a47b8e Fix wrong query being used when opening Global Search (#7604)
(cherry picked from commit 76057b84b2d9ae01ad553a720aadb8114732dfab)
2022-07-24 15:28:23 -04:00
Andreas
4b03d3559f Fix infinite loading when user library is empty (#7602)
- If no manga in library add default category this to remove loading state

(cherry picked from commit 164de67a56095335119b63b3b17abab5007703f8)
2022-07-24 15:28:15 -04:00
Andreas
dcf152b5c2 Tweaks on Library screen (#7597)
- Toolbar not having padding in landscape
- Fix library always refreshing everything even though user is refreshing category
- Tab text using primary color
- Fix Grid having to big of a top padding
- Fix Pager crashing when initial page is greater than the number of categories

(cherry picked from commit bc1f6ba5177735e76b2b42f7884edfbe8f30006e)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibraryScreen.kt
2022-07-24 10:38:24 -04:00
Ivan Iskandar
1839eb13d9 MangaPresenter: Don't update fav state when changing categories (#7594)
(cherry picked from commit 59f8c1a2880b1d35e870ea0bca2bc7a9cfc48592)
2022-07-24 10:02:08 -04:00
arkon
22b627ea8d Set splash screen ready state for history and updates pages
(cherry picked from commit cd9487f94cac610cdeb31dcd9139f6cc9dc7026c)
2022-07-24 00:20:51 -04:00
Andreas
5888ca8e7a Fix crash in Extension Detail and set ready to true on Library screen (#7591)
(cherry picked from commit 978489fadef98a05da6dbab49e6cb5b19cdb123d)
2022-07-24 00:20:43 -04:00
arkon
cfe78ff907 Avoid catastrophic failure when cover can't be created in local source (fixes #7577)
(cherry picked from commit d6977e5676377f6090c0e0b4eb15fd043fa01e11)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/source/LocalSource.kt
2022-07-24 00:20:29 -04:00
arkon
53a381ce28 Show better error when trying to open RARv5 file
(cherry picked from commit a84305438853cafa9aff194b89fa221603f2f743)
2022-07-24 00:19:04 -04:00
Andreas
9520494ac5 Use Stable interface for History screen (#7586)
- Adds Stable interface
- Move last Dialog into Compose
- Make History screen be full Compose screen

(cherry picked from commit c751851941796ae7fa10f9dfba9b75396bbbf692)
2022-07-24 00:18:39 -04:00
Andreas
bc1eb0cb30 Cleanup Library after Compose changes (#7584)
(cherry picked from commit 9f2ddaadde0326fb0fcf1ce91a2affc7f4af42c2)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibraryScreen.kt
2022-07-24 00:18:26 -04:00
Andreas
dd0e12999d Remove unused dependencies (#7585)
(cherry picked from commit fc328e141c4d131633f0c308b488d10ddaa7d618)
2022-07-24 00:09:10 -04:00
arkon
30fcd30da8 Remove unused legacy ActionModeWithToolbar
(cherry picked from commit 27bac4fffb782119dc7964f43dbd13dc1c7d3f82)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
2022-07-23 23:55:52 -04:00
arkon
958fe527e4 Remove bottom nav behavior and add bottom padding to root controller contents
(cherry picked from commit 4bf4b167a54791d0f5a7710ebe15473b8de9dd5c)
2022-07-23 23:55:27 -04:00
Andreas
24c2aa1bfb Use Compose for Library screen (#7557)
- Move Pager to Compose
- Move AppBar to Compose
- Use Stable interface for state
- Use pills for no. of manga in category instead of (x)

(cherry picked from commit 2b8d1bcc02994e75e1479b037ef50eb84ae674d7)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryComfortableGrid.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryCompactGrid.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryCoverOnlyGrid.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-07-23 23:55:13 -04:00
nzoba
ea37a5a7a1 Add downloaded icon in TransitionView when chapter is downloaded (#7575)
* Add downloaded icon in TransitionView

* Change icon

(cherry picked from commit e8b7743826e9bf9aa0d15020b81ca0569cbe999d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerViewer.kt
2022-07-23 22:08:40 -04:00
AntsyLich
09e5bcaec1 Fix logic of app unlock (#7569)
(cherry picked from commit 8ea05e852efd621ee987c7e45d6db64a083eeffd)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
2022-07-22 15:37:17 -04:00
Jobobby04
8ef4a7fbbf Use ChapterInfo wherever possible 2022-07-22 15:09:40 -04:00
stevenyomi
d734993349 Fix image MIME issues that cause download errors (#7562)
* Downloader: ignore non-image MIME to prevent .bin extensions

* ProgressResponseBody: allow null content type

Co-authored-by: anenasa <84259093+anenasa@users.noreply.github.com>

Co-authored-by: anenasa <84259093+anenasa@users.noreply.github.com>
(cherry picked from commit 3547d0142f96c44da7fe1ee5bd6424fea679efa6)
2022-07-20 11:33:27 -04:00
arkon
ac4befdb51 Migrate More screen to full Compose
(cherry picked from commit 4d9d587366018e6e794322e2a644712f241cda08)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/MoreScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/base/controller/ConductorExtensions.kt
2022-07-19 13:09:27 -04:00
arkon
bb11d056b5 Misc cleanup
- Migrate sources filter screen to full compose
- Use standard "OK"/"Cancel" actions for delete category dialog
- Abstract some AppBar logic
- Remove some dead code
- Group related strings

(cherry picked from commit e2510c144ad3568caf81660d6ab1b4023202aad4)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/SourcesFilterScreen.kt
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
2022-07-19 13:01:04 -04:00
Ivan Iskandar
2e3b172ba8 MangaScreen: Save selection state (#7560)
(cherry picked from commit 00519e3b933b66bb764f1f58f79fb781b0cb092a)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-07-19 12:48:04 -04:00
Ivan Iskandar
8bd7f95afc Fix download status not updated properly after starting batch download (#7561)
(cherry picked from commit 473dc688f0bbb9732e3d75d137bc7025418d9bcf)
2022-07-19 12:39:31 -04:00
f1998f1998
c69f53a8f4 fix concurrent download (#7552)
* Fix concurrent download

* lower Concurrency

* artist Update app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt

Co-authored-by: Vetle Ledaal <vetle.ledaal@gmail.com>

Co-authored-by: Vetle Ledaal <vetle.ledaal@gmail.com>
(cherry picked from commit b635f02d93502f1021f0fe87533dfd96d052ed2f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
2022-07-19 12:39:08 -04:00
AntsyLich
f1d1f6c466 Migrate Updates screen to compose (#7534)
* Migrate Updates screen to compose

* Review Changes + Cleanup

Remove more unused stuff and show confirmation dialog when mass deleting chapters

* Review Changes 2 + Rebase

(cherry picked from commit d8fb6b893fd9ae6aab3b4762837ebce496a214b3)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/recent/updates/UpdatesPresenter.kt
#	app/src/main/sqldelight/migrations/18.sqm
2022-07-19 12:37:26 -04:00
Jobobby04
cec181f444 Minor cleanup 2022-07-18 09:59:09 -04:00
arkon
37bb6b27ce Migrate more screens to full Compose
(cherry picked from commit cbfe9c30bb2970ad911ce35cf1d14bc044225e30)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrationMangaController.kt
2022-07-16 22:11:30 -04:00
arkon
11737fb9ed Avoid crashes due to SQLite support in older Android versions for debug builds
(cherry picked from commit 459b369feb8569ddd7484267f4fd5f94285e480d)
2022-07-16 22:10:27 -04:00
arkon
879999e69e Fix library column setting jumping in
(cherry picked from commit f6f5b6aeaba6825974f4b05d279fab54a2633d76)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryMangaEvent.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-07-16 20:48:18 -04:00
arkon
d145239d93 Migrate licenses screen to full Compose
(cherry picked from commit 1b2c12385feaa8bc7e32b724289323e5d3e9499e)
2022-07-16 20:39:54 -04:00
arkon
1e3f313ca2 Remove top app bar scroll behavior
This lets us make it more consistent with the Compose screens for now. Maybe it'll return in the future.

This also includes making the AboutController a full Compose controller with a new abstracted TopAppBar composable.

(cherry picked from commit 80c7a453286f296ae4d5d3531c805e63db9ca424)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryTopAppBar.kt
#	app/src/main/java/eu/kanade/presentation/more/about/AboutScreen.kt
2022-07-16 20:39:44 -04:00
arkon
74b360f798 Consolidate Compose content/theme setting
(cherry picked from commit 46ac9fe9701009077fa3edefb0ef0c5faa65f2bc)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/util/view/ViewExtensions.kt
2022-07-16 20:23:01 -04:00
AntsyLich
a99aaade5d MangaPresenter: Incognito and downloaded only label related tweaks (#7535)
When manga screen takes time to load incognito and downloaded only label doesn't show up. It's fixed in the pr.

(cherry picked from commit b034f503f8ce9327187c2024b7ee74779f397bb8)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-07-16 20:16:10 -04:00
Andreas
19fcc129c0 Fix Library List not using correct text color (#7548)
(cherry picked from commit 9ebeff04e6b9beb518d40b94cd92405b06383370)
2022-07-16 20:13:13 -04:00
arkon
9b47b7f204 Minor library view cleanup
- Clean up unused code
- Add text shadow in compact mode
- Tweak some paddings to better match stable

(cherry picked from commit fa73e2403b79deca40590d8f4fa15f00a70e316e)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-07-16 20:13:04 -04:00
Andreas
d8042f7182 Use Flow in ExtensionManager and SourceManager (#7547)
- Replace ExtensionManager relay and observable with Flow
- Inverse SourceManager dependency
    - SourceManager observers ExtensionManager flow
- Separate SourceData from SourceRepository as it created a circular dependency

(cherry picked from commit 35ec5936587799f33a264f57729cb4b75c5a0f72)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceManager.kt
2022-07-16 20:09:33 -04:00
Jobobby04
dd68ef4ba8 Remove drag and drop 2022-07-16 19:49:46 -04:00
Andreas
b4adab5eb4 Use Compose for Library list and grid (#7520)
(cherry picked from commit 905c96922bc7059e99c4c7bd89775747d02028a9)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryCategoryAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryCategoryView.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryComfortableGridHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryCompactGridHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryItem.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryListHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySelectionEvent.kt
#	app/src/main/res/layout/library_category.xml
#	app/src/main/res/layout/library_grid_recycler.xml
#	app/src/main/res/layout/library_list_recycler.xml
2022-07-16 19:11:22 -04:00
Andreas
6df1a0f79e Use Stable interface for Browse screens (#7544)
(cherry picked from commit 018ca71336c893f64e0d0653b48b3d5f39b88d63)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionDetailsScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/MigrateSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/SourcesScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrateMangaPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrationSourcesController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesFilterPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesPresenter.kt
2022-07-16 17:45:36 -04:00
Jobobby04
f3ffd3b930 Handle new default user agent where SY uses it 2022-07-16 17:21:27 -04:00
Andreas
41855c34de Add Stable interface for Category state (#7539)
(cherry picked from commit a21aa8125e63b9e0d4377aa9c97d6614ee4acf7f)
2022-07-16 17:21:09 -04:00
arkon
bcf9398987 Make default user agent string configurable
(cherry picked from commit 4ee1d72b6f8278d84da6f75d218a51261d175e18)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/source/online/HttpSource.kt
2022-07-16 16:47:32 -04:00
AntsyLich
70aeaccbee Little cleanup for stub source (#7519)
* Little cleanup for stub source

Fixes instances where name shows up blank for stub sources

* Review Changes

Co-authored-by: Andreas <andreas.everos@gmail.com>

Co-authored-by: Andreas <andreas.everos@gmail.com>
(cherry picked from commit 902bb35ba7f56f06660985dda0f7f8abf41ee669)
2022-07-16 16:46:36 -04:00
Jobobby04
67e190bffd Page previews for Exh/E-H and NH
- Still needs click image to open chapter
2022-07-16 16:45:27 -04:00
Jobobby04
90ab8f1d94 Add sources to merge data 2022-07-15 11:39:38 -04:00
Jobobby04
4dda69ac40 Bring back merge manga sources string 2022-07-15 11:27:30 -04:00
Jobobby04
bfcbb83c50 Improve favorites sync library action visibility 2022-07-13 10:09:39 -04:00
Jobobby04
56492ae446 Add a dialog before favorites sync initializes 2022-07-13 10:09:13 -04:00
Trevor Paley
bb7dd4e2f6 Fix bug in default category downloading logic (#7525)
(cherry picked from commit 86a018ebad5f43c691c688fd87528738de09d684)
2022-07-13 09:57:26 -04:00
arkon
bc208bac30 Replace some usages of RxJava
(cherry picked from commit 788583e66f6ad355f65f5bd2db303faa85163c5c)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/Pager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-07-11 11:45:19 -04:00
Ivan Iskandar
e63c982fe3 MangaPresenter: Always fetch chapter from source if current chapter is empty (#7507)
(cherry picked from commit 634ee86bbd022612d6fe69baf522b4a2223b506f)
2022-07-11 11:36:39 -04:00
AntsyLich
26632905b5 ExtensionManger: Fix unofficial extension has update (#7503)
(cherry picked from commit 64f60c36e61ea186e246370634835abc6b7c9b0c)
2022-07-11 11:36:30 -04:00
arkon
a66abf82d8 Replace deprecated ACTION_MEDIA_SCANNER_SCAN_FILE intent
(cherry picked from commit 0b4f3f553263281333c6475cdd1a9aea414ce877)
2022-07-11 11:32:00 -04:00
Andreas
e50c24e5e3 Configure SQLite (#7495)
- Turn on `foreign_keys` to cascade on delete properly
- Turn on `journal_mode` and set `synchronous` to NORMAL which may help performance for larger libraries

(cherry picked from commit d977b89af1f2a8850437ebd978535fc3fbfd257e)
2022-07-11 11:31:52 -04:00
arkon
8c19083679 Set content descriptions for bottom nav badges
Doesn't seem to produce #6708, but at least it'll be used by screen readers?

(cherry picked from commit 487ce37d915e07e54fe9381bb33d4e6bbf260102)
2022-07-11 11:31:42 -04:00
Jobobby04
2f78a3d681 Fix build on latest compile SDK 2022-07-11 11:31:29 -04:00
Ivan Iskandar
d3b59768d4 MangaScreen: Improve chapter list scrolling performance (#7491)
* MangaScreen: Improve chapter list scrolling performance

Process chapter title, date and read progress string ahead of time

* Use enum for contentType and add key

(cherry picked from commit 1551891c15eb5d323cb1d425794876a753316091)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-07-11 11:31:04 -04:00
Ivan Iskandar
721238a858 ChapterDownloadIndicator: Fixes and improvements (#7485)
* Increased touch target
* Fix downloaded icon smaller than other states
* Deferred state reads to minimize recompose works
* Move things around to eliminate unnecessary elements

(cherry picked from commit e56f6c10177949c88e61d13e95b23545bef06641)
2022-07-11 11:08:59 -04:00
Ivan Iskandar
d5aecaad21 MangaScreen: Ditch the expanded app bar (#7470)
Animating the content padding that's used for the lazy list is heavy. A simple
fix to *just* offset the list is blocked by a Compose fling issue (b/179417109).

So I decided to go with the previous layout of this screen by putting everything
in the list. MangaInfoHeader is split into separate composables to avoid jank
when the item is being inflated.

(cherry picked from commit 34906a74253e7463ac23ea96496c59198884e0be)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaTopAppBar.kt
2022-07-11 11:08:41 -04:00
Andreas
4e29fd5b2a Use Compose for Category screen (#7454)
* Use Compose for Category screen

* Use correct string for CategoryRenameDialog title

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 86bacbe586bfe5567b1d52eb8d7b7f23724a17d5)

# Conflicts:
#	app/src/main/java/eu/kanade/data/category/CategoryRepositoryImpl.kt
#	app/src/main/java/eu/kanade/domain/category/interactor/InsertCategory.kt
#	app/src/main/java/eu/kanade/domain/category/repository/CategoryRepository.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/category/CategoryAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/category/CategoryHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/category/CategoryItem.kt
#	app/src/main/res/layout/categories_item.xml
2022-07-10 21:27:27 -04:00
Andreas
5869fa0b4f Reset lastPageRead when chapter is marked unread (#7475)
* Reset lastPageRead when chapter is marked unread

* Remove a bit of repetition in SetReadStatus

(cherry picked from commit 5159eabc5dfd77dd7e4a480c1982bd1d2e5fbb92)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-07-08 22:29:34 -04:00
Jobobby04
0263b9ee4e Minor SY LibraryPresenter cleanup 2022-07-08 21:54:41 -04:00
AntsyLich
4f136ca63b Fix auto downloader for "Default" category (#7476)
(cherry picked from commit 038532897bea53d2cd248baf91e9c365acc3e491)
2022-07-08 21:53:37 -04:00
Ivan Iskandar
f1729a1a26 Fix broken downloaded chapter (#7460)
(cherry picked from commit 325a5e37aac77ab305d21ecfe5ce63705a243047)
2022-07-08 21:53:27 -04:00
arkon
d71bf4e6bc Update default user agent string
(cherry picked from commit 7d3fe0ed4374880765fe9dadbd5f6c842e41cc6b)
2022-07-08 21:53:18 -04:00
arkon
bbdab4a703 Add MIME type mapping for image/jxl (fixes #7117)
(cherry picked from commit 591df8abccba95031a670b1ef761fb522b0c0517)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/util/system/ImageUtil.kt
2022-07-08 21:52:57 -04:00
arkon
adae68a294 Increase height of transition view in webtoon viewers (fixes #7242)
(cherry picked from commit 46734c525ff6f893096ed16c23e0266b61e61b57)
2022-07-08 21:51:30 -04:00
Jobobby04
f4a3ef4f1d More domain model usage in SY 2022-07-04 22:20:28 -04:00
Jobobby04
9a10f1300a Fix gallery adder 2022-07-04 22:11:01 -04:00
Jobobby04
6954c299b5 Use domain layer for almost all SY code 2022-07-04 18:45:39 -04:00
Jobobby04
141b0477e7 Use domain layer for saved searches 2022-07-04 18:10:43 -04:00
arkon
485e6719c3 More domain model usage
(cherry picked from commit a3378e6080418e6ba9bab4d027d7f06373556217)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/chapter/interactor/SyncChaptersWithSource.kt
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadPendingDeleter.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-07-03 17:18:20 -04:00
arkon
f1a31e4560 More domain model usage
(cherry picked from commit 3791d8254034ffcab94ddd65ec290c28384e6526)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchCardItem.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-07-03 17:05:44 -04:00
arkon
d48427152e More domain model usage
(cherry picked from commit a3ab8746bf8b1cfca628431e76f9c63ecd973010)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryCategoryAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryCategoryView.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-07-03 16:51:08 -04:00
Andreas
22da633ee3 Cleanup data layer (#7450)
(cherry picked from commit 069bd90c0f76d21bc6d99a51644926876415c113)

# Conflicts:
#	app/src/main/sqldelight/data/mangas.sq
2022-07-03 16:41:43 -04:00
arkon
eb0964d0b6 More domain model usage
(cherry picked from commit 68697e59d71d9875d8a8b8aaaf65e77a084e0b8a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/AbstractBackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/cache/ChapterCache.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/HttpPageLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/util/chapter/ChapterSourceSync.kt
2022-07-03 16:32:00 -04:00
arkon
268911a7c9 More domain model usage
(cherry picked from commit b3dd8b735581ee7ea1ef0ee6dde99507f329e346)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/MangaCategory.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/MigrationFlags.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
2022-07-03 16:22:08 -04:00
Andreas
0ad6e00bca Remove SQLiteOpenHelper as database is migrated to SQLDelight (#7448)
(cherry picked from commit eb2a904b618bcbecd1311fa0db3809425d91d8d5)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DbOpenCallback.kt
2022-07-03 16:00:25 -04:00
Andreas
ea38ffc53e Use SQLDelight for all Manga related queries (#7447)
(cherry picked from commit 17951cfd68159d083df54c3e03094d8d66fe02ec)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/DomainModule.kt
#	app/src/main/java/eu/kanade/domain/manga/repository/MangaRepository.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DatabaseHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DbExtensions.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DbProvider.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/ChapterTypeMapping.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/MangaCategoryTypeMapping.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/MangaTypeMapping.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/RawQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/ChapterProgressPutResolver.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/LibraryMangaGetResolver.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaFlagsPutResolver.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/CategoryTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/ChapterTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/MangaCategoryTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/MangaTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
2022-07-03 15:58:26 -04:00
Jobobby04
d88c769d3b Use SQLDelight for more SY specific things 2022-07-03 13:37:27 -04:00
Jobobby04
e71c9e2775 Use SQLDelight for mass migration 2022-07-03 00:33:09 -04:00
Jobobby04
664f9b1484 Use SQLDelight for most SY specific things 2022-07-02 23:52:03 -04:00
Andreas
3cf4c3128f Use SQLDelight for all MangaCategory related queries (#7441)
(cherry picked from commit 9e3b454b1b79a7725b3d3be4c85c1655ad80e18d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DatabaseHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaCategoryQueries.kt
2022-07-02 20:46:46 -04:00
Andreas
9093663f2f Use SQLDelight for all Chapter related queries (#7440)
(cherry picked from commit 29633b64aa1b3d87392362f31f4fc250d930722b)

# Conflicts:
#	app/src/main/java/eu/kanade/data/chapter/ChapterRepositoryImpl.kt
#	app/src/main/java/eu/kanade/domain/chapter/repository/ChapterRepository.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DatabaseHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/ChapterQueries.kt
#	app/src/main/sqldelight/data/chapters.sq
2022-07-02 20:46:01 -04:00
arkon
9205b568e8 Migrate to more use of domain models
(cherry picked from commit 76c0ead1db3a93f859f00ce6bff69f38b8699bd6)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DatabaseHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/CategoryTypeMapping.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/MangaCategory.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/RawQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/CategoryTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceComfortableGridHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceCompactGridHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceItem.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryCategoryView.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-07-02 20:42:52 -04:00
Andreas
cd2f26a7c9 Use SQLDelight for a Category related queries (#7438)
(cherry picked from commit 2674570792a275abaee7a6ec1ae947d94f69a634)

# Conflicts:
#	app/src/main/java/eu/kanade/data/category/CategoryRepositoryImpl.kt
#	app/src/main/java/eu/kanade/domain/category/model/Category.kt
#	app/src/main/java/eu/kanade/domain/category/repository/CategoryRepository.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DatabaseHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/CategoryQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/util/MangaExtensions.kt
2022-07-02 20:10:20 -04:00
arkon
85898df703 More SQLDelight migrations
(cherry picked from commit 21771e62aa0dc7e1393b27ea8eb146de277cebd9)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/AbstractBackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/models/BackupManga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/ChapterQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
2022-07-02 19:40:55 -04:00
Andreas
2c87a8fd02 Use SQLDelight on Library screen (#7432)
- Uses the new `asObservable` function to change the database calls to use SQLDelight, which should make the impact minimal when it comes to bugs.
- Use interactors where they already exist
- The todos are for the Compose rewrite
- Removed unused StorIO methods/queries
- Tested loading library, move manga to new category, unfavorite multiple manga, move multiple manga from one category to another, change filter, sort and display settings (with and without per category settings), (un)mark chapters, start/delete downloads

Thank Syer for asObservable

Co-authored-by: jobobby04 <17078382+jobobby04@users.noreply.github.com>

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

# Conflicts:
#	app/src/main/java/eu/kanade/data/manga/MangaRepositoryImpl.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DatabaseHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/CategoryQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/TrackQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-07-02 19:10:26 -04:00
AntsyLich
1087f07614 Downloader: Optimize split tall image (#7435)
(cherry picked from commit ff32ab09fbc32eff33cb378d6e1b1aa0d9ef8e1a)
2022-07-02 13:44:21 -04:00
AntsyLich
5f55a0afbb Reimplement chapter download indicator longpress (#7412)
(cherry picked from commit deaded5af2da6645d7f320471d5f73c0ffed3edf)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadManager.kt
2022-07-02 13:44:14 -04:00
Andreas
42ecd912e8 Use SQLDelight on Updates screen (#7423)
(cherry picked from commit 1f10b79ee800fba42aa588cb094d3d280c264245)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/RawQueries.kt
2022-07-02 13:38:36 -04:00
arkon
0e390b5429 Revert some KTX extension changes
These weren't exactly 1:1 replacements. Might be related to #7391.

(cherry picked from commit b9e108eb4d7e93deb6bc8bd6ed32220c780d2576)
2022-07-02 13:23:22 -04:00
AntsyLich
8bf3426afd DownloadProvider: Only provide necessary info and not whole chapter/manga class (#7411)
(cherry picked from commit e1525a5125f83fb419d5e5f05834cffcbcd7fa07)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadProvider.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-07-02 13:22:43 -04:00
arkon
858c3b5a0a Bump dependencies
(cherry picked from commit 7e4c45858f6fd2309f8ca07e1e4c4798ab87b764)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
2022-07-02 13:02:29 -04:00
stevenyomi
ef20995e7d Extension API: change fallback source and logic (#7400)
* Extension API: change fallback source and logic

* remove ghproxy

(cherry picked from commit 284445c364baa47c4f29a524c3e00f1e18360abb)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionGithubApi.kt
2022-07-02 12:57:25 -04:00
Jobobby04
4de4992e4e Fix trash group by tracking code 2022-06-27 18:06:36 -04:00
AntsyLich
58ed2b9752 Fix Mark previous as read (#7396)
(cherry picked from commit 7440086ef1bd63d499945afe1722d6648ab514ac)
2022-06-27 13:00:09 -04:00
AntsyLich
257001d4a6 Sort Manga by title in MigrationMangaScreeen (#7392)
(cherry picked from commit ef3acb8c430f88664dbc3895e666e76836ad163d)
2022-06-27 12:59:57 -04:00
stevenyomi
af82ef436b RateLimitInterceptor: ignore canceled calls (#7389)
* RateLimitInterceptor: ignore canceled calls

* SpecificHostRateLimit: ignore canceled calls

(cherry picked from commit 5b8cd68cf355a15e5d5789280524d08b4c922f23)
2022-06-27 12:59:42 -04:00
Jobobby04
45ba4e77bd Compile fixes 2022-06-27 12:59:29 -04:00
arkon
775ab6479a Migrate usages of SyncChaptersWithTrackServiceTwoWay
(cherry picked from commit 53decfd47b2fba53cebcaa2350fb8cf6a2385e9f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/ChapterQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/TrackQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/network/NetworkHelper.kt
2022-06-27 12:59:11 -04:00
arkon
e6d39ce14c Migrate more track DB calls to SQLDelight
(cherry picked from commit 65264e3ef56b3327d0f0d2f6f5250d79e6e7555f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaFavoritePutResolver.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/track/TrackManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/MigrationFlags.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
2022-06-27 12:52:18 -04:00
arkon
9d8aebc7a6 Fix app update install notification disappearing
(cherry picked from commit 4ca0fc7a4d2232ef9a48890b42cd1bd27450b585)
2022-06-27 12:27:05 -04:00
Jobobby04
1a17f87945 Simplify autoscroll 2022-06-26 22:17:37 -04:00
Jobobby04
ac586560f0 Only enable autoscroll when app is active 2022-06-26 19:11:20 -04:00
Jobobby04
4ddc696fb5 Use image decoder for double pages 2022-06-26 18:12:22 -04:00
Jobobby04
27733aba02 Add virtual visibility tag for E-Hentai 2022-06-26 16:51:51 -04:00
AntsyLich
6f407f6e0a Use sqldelight for direct db calls in MangaPresenter (#7366)
(cherry picked from commit 04f0ca78469573707e14742226fd8f14445853d4)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-06-26 16:03:51 -04:00
jobobby04
1084e7fe9d Fix clicking cover opening random manga (#7387)
(cherry picked from commit 61a44101a273598ec43168be9fbf00247facef58)
2022-06-26 15:52:06 -04:00
Jobobby04
0862c935a1 Minor improvements to backup fix 2022-06-26 13:58:23 -04:00
Jobobby04
e1c183b04d Fix backups and filtered scanlators 2022-06-26 13:52:05 -04:00
Osyx
bd6f778de2 Add new "Lavender" theme (#7343)
* Add new "Lavender" theme

* Add light theme values for Lavender theme

* Fix order of enums

* Fix accented UI elements in set categories sheet being different colors

Co-authored-by: CrepeTF <trungnguyen02@outlookcom>
(cherry picked from commit ad106bd8842dfc9c047c0412b92a0cb1dc1aba1a)
2022-06-26 11:30:47 -04:00
Ivan Iskandar
3fa1c24f8d MangaPresenter: Fix state updates when opening a new manga entry (#7379)
(cherry picked from commit 0e0c1dcdc5f42b0a63d5b865c9aba29db4ab18a6)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-06-26 11:24:57 -04:00
arkon
d2e40a0749 Use primary color for excluded tristate filter icon (fixes #7360)
(cherry picked from commit 3ca1ce463696e2e8eabf63c1e729dbdd2ffe1f71)
2022-06-26 11:09:00 -04:00
Jobobby04
f72b6cf87b Fix imports 2022-06-25 19:34:40 -04:00
Ivan Iskandar
2b7aca710e MangaController overhaul (#7244)
(cherry picked from commit 33a778873af0eb52528a29f741fa59b530679c64)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/LibraryManga.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChapterHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersSettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoHeaderAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/widget/MangaSummaryView.kt
#	app/src/main/res/layout-sw720dp/manga_info_header.xml
#	app/src/main/res/layout/manga_controller.xml
#	app/src/main/res/layout/manga_info_header.xml
#	app/src/main/res/layout/manga_summary.xml
#	app/src/main/res/menu/manga.xml
2022-06-25 17:11:25 -04:00
jobobby04
1e53ad97db Fix downloader crash related to UnmeteredSource (#7365)
Fix crash when starting a download with chaqpters from a UnmeteredSource

(cherry picked from commit 470a5764417ccd63a274ccea0e483a12ec1adbda)
2022-06-25 11:35:05 -04:00
Ivan Iskandar
dfe32071e2 ChapterDownloadView: Convert to compose (#7354)
(cherry picked from commit a77bce7b3735811002be3e80b95dae892029d0f5)
2022-06-25 11:34:47 -04:00
arkon
c48318df73 Fix crashes from KTX extension changes
(cherry picked from commit 915e38f636e2fba9ae53ee8d87026ea1e0edacf3)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceFilterSheet.kt
2022-06-25 11:33:40 -04:00
AntsyLich
14a57b7d4d Use sqldelight in migration (#7331)
* Use sqldelight in migration

* Some more changes

Co-Authored-By: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>

* Review Changes

* Review changes 2

* Review Changes 3

* Review Changes 4

Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit e3b1053c03da17c8c1b66f1914251707134e84a9)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-06-25 11:32:09 -04:00
Taco
9e63d7fb0b Utilize more KTX extensions (#7348)
(cherry picked from commit c2520bff12fc2a9c382b21f2beb82173958c23ff)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceFilterSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/ReaderPageImageView.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/search/SettingsSearchHelper.kt
2022-06-25 11:25:06 -04:00
arkon
eefdeb3c3f Fix accented UI elements in library sheet being different colors
(cherry picked from commit cd5bcc36734e0959569be6dd5ecd3b3813863207)
2022-06-25 11:23:50 -04:00
arkon
e0cfaa707e Minor cleanup
(cherry picked from commit 254f021903030551d781223089d64a74fe130197)
2022-06-25 11:23:39 -04:00
Jobobby04
60e1c9aded Remove unneeded backup functions 2022-06-25 11:23:31 -04:00
Ivan Iskandar
21e03616ba Convert cover dialog view to compose (#7346)
(cherry picked from commit 8fedd2d5f13e56115bdf46a9a38e0ae750681488)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaFullCoverDialog.kt
2022-06-25 11:22:39 -04:00
Jobobby04
f808cbfa69 Minor cleanup 2022-06-19 21:54:11 -04:00
arkon
ea712646fc More minor refactorings
Extracted from #7244

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

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoHeaderAdapter.kt
2022-06-19 21:52:44 -04:00
arkon
0e90c7fa16 Migrate some categories SQL calls to SQLDelight
(cherry picked from commit a7decdb62d6226184827378bb851420f7628f856)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-06-19 21:34:05 -04:00
Ivan Iskandar
29f992fe33 ChaptersSettingsSheet: Single source of truth and use new manga class (#7342)
Currently breaks initial settings state until the source of truth is
properly updated.

(cherry picked from commit 005b9b595cfe41484eea94998d2f3c9918759a94)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersSettingsSheet.kt
2022-06-19 21:29:38 -04:00
arkon
4ca4484362 Migrate duplicate manga check to SQLDelight
Extracted from #7244

Co-authored-by: ivaniskandar <ivaniskandar@users.noreply.github.com>
(cherry picked from commit 9f66c85281e02eb6a73034d79a3441c98803ffd6)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-06-19 21:24:07 -04:00
Ivan Iskandar
4a23c3b105 Convert edit cover function to suspend function (#7330)
(cherry picked from commit 28e7009b4982fb846296a9e0973f4e84f6f46b25)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
2022-06-18 19:37:35 -04:00
arkon
115fc2afdc Delete unused database queries/resolvers
(cherry picked from commit dd983c803b6fe1a29946447ca818eaefdd7928ff)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/HistoryUpsertResolver.kt
2022-06-18 19:33:15 -04:00
Jobobby04
cd4b6a0c27 Build fixes and minor improvements 2022-06-18 19:27:26 -04:00
Ivan Iskandar
a5fe4e1a44 Fix cover fetching in compose views (#7315)
Make sure it passed thru the custom fetcher

(cherry picked from commit 1b804e61cb2b38d7194b058b4152b14607b5e443)

# Conflicts:
#	app/src/main/java/eu/kanade/data/history/HistoryMapper.kt
#	app/src/main/java/eu/kanade/domain/history/model/HistoryWithRelations.kt
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
2022-06-18 19:26:33 -04:00
Andreas
cad93ce77e Fix History not being added when restoring backup (#7324)
(cherry picked from commit c5d84b4f2408b043b7a74ac2a263e0564f2e4b5a)
2022-06-18 19:10:30 -04:00
Ivan Iskandar
791736673f MangaController: Change the workaround for title alpha (#7277)
Now checks for the backstack for any dialog controller when a push exit occurs
before restoring the title alpha.

(cherry picked from commit ae88252cb189283a87c3294c0b6c4bb28064b0f6)
2022-06-18 19:10:21 -04:00
Ivan Iskandar
d7341f0a3f MainActivity: Fix incorrect UI states when activity recreated with dialog controller (#7325)
(cherry picked from commit 3c3d787a2be41de3f1c0f3e1f38d1e4152f7b7ac)
2022-06-18 19:10:09 -04:00
Ivan Iskandar
3c6b22a37e Don't set text colors when creating compose theme (#7316)
This avoids compose snackbar text color issue

(cherry picked from commit 4ef337f1e92fcdbded2de57c8f248b60d7795649)
2022-06-16 12:05:48 -04:00
Andreas
cbb201d63d Use SQLDelight on Category screen (#7310)
* Use SQLDelight on Category screen

* Include category name in DuplicateNameException

(cherry picked from commit 017f6b22f02ef06cd5a3d521715c32c5e3b2b0e6)

# Conflicts:
#	app/src/main/sqldelight/data/categories.sq
2022-06-16 12:05:40 -04:00
Jobobby04
40258139ab Use a custom domain module for SY 2022-06-16 12:04:27 -04:00
nicki
753ed70e1c Add Cancel button to App Update Notification (#7309)
* Add cancel button in app update download notif

Since stuck downloads are a common issue and only solution until now was
to force close the app or download and update the app manually by
downloading from GitHub (which clears the notif away)

Based on commit
4dea924337

Co-authored-by: Jays2Kings <8617760+Jays2Kings@users.noreply.github.com>

* Linting by Android Studio

* commit PR Review Suggestion

Update app/src/main/java/eu/kanade/tachiyomi/data/notification/NotificationReceiver.kt

Co-authored-by: arkon <arkon@users.noreply.github.com>

* Use `launchIO`

copied this over from how j2k was doing it. Launching in IO Thread like
how it was before this PR is sufficient

* Clear previous actions before adding `Cancel`

Otherwise, it led to two identical Cancel buttons

Co-authored-by: Jays2Kings <8617760+Jays2Kings@users.noreply.github.com>
Co-authored-by: arkon <arkon@users.noreply.github.com>
(cherry picked from commit fdf384b8092d09f0a4e68c5688f9c1c1e94c80d0)
2022-06-16 12:03:49 -04:00
arkon
7e8228137c Minor cleanup
(cherry picked from commit d2f4c43526769ff8928d273d2e95e29fc5688bbc)
2022-06-16 12:03:03 -04:00
AntsyLich
8a06bc42d8 Maintain source info in the database. (#6389)
* Maintain Source Info in database

* Review changes and cleanups

* Review changes 2

* Review Changes 3

(cherry picked from commit 9d5b7de1d89a353d0bf73ce6befd9f5667d94d17)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/DomainModule.kt
#	app/src/main/java/eu/kanade/presentation/browse/MigrateSourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceManager.kt
2022-06-16 12:02:38 -04:00
Andreas
70c2f97976 Use SQLDelight in Backup/Restore (#7295)
* Use SQLDelight in Backup/Restore

* Use CoroutineWorker

(cherry picked from commit fd5da2de3ab294988e8408077977f776cca5299a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/AbstractBackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/FullBackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/FullBackupRestore.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/models/BackupCategory.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/models/BackupManga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DatabaseHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/HistoryQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/model/SManga.kt
#	app/src/main/sqldelight/data/categories.sq
#	app/src/main/sqldelight/data/chapters.sq
2022-06-14 11:13:53 -04:00
arkon
ed27491ba9 Minor cleanup
(cherry picked from commit 5ccde61ae1c6f557233dc48d57ad4a953aace6ec)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/chapter/repository/ChapterRepository.kt
2022-06-12 12:47:30 -04:00
nicki
25e0075041 Fix Links to Changelog/Readme/Commits for multisrc (#7252)
* Fix Links to Changelog/Readme/Commits for `multisrc`

working basic fix. Needs to be refactored into `createUrl()`

* Refactor back into `createUrl`

hopefully the logic is understandable
there's three cases:
 - when multisrc, if `path` isn't mentioned, then we're trying to open
   commmit history
 - when multisrc, if `path` is mentioned, then its either a changelog or
   a readme to a multisrc extension, the files are stored in the
   `overrides` subfolder
 - when not multisrc, we're looking at a single source where the links
   are constructed in the same way regardless of it being
   changelog/readme/commit history

(cherry picked from commit e7695aef78c92c10e5bae953b24a19e67ac156af)
2022-06-12 12:47:00 -04:00
AntsyLich
f7ccbd24f8 Fix chapter list live update (#7296)
(cherry picked from commit b96686e6ad0b46a586958179e8cbb1d6a9182323)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-06-12 12:44:34 -04:00
AntsyLich
e3f577a6e2 Update manga metadata on library update with sqldelight (#7293)
Co-Authored-By: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>

Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit 5bb78eb77f2f68c40079548d5fe3b75a11f2bf71)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaLastUpdatedPutResolver.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
2022-06-12 12:20:07 -04:00
arkon
978a8de32c Remove unused database resolvers/queries
(cherry picked from commit d098eca69d0abc1c68e88811a13bad35c750f387)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/MangaChapterHistory.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/ChapterSourceOrderPutResolver.kt
2022-06-11 13:05:58 -04:00
AntsyLich
d1d9c53af3 Make syncChaptersWithSource use sqldelight (#7263)
* Make `syncChaptersWithSource` use sqldelight

Will break chapter list live update on current ui

Co-Authored-By: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>

* Review Changes

Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit 120943a8b37eaf847ca1073676a8293288c28e12)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/AbstractBackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/util/chapter/ChapterSourceSync.kt
#	app/src/main/sqldelight/data/mangas.sq
2022-06-11 12:51:49 -04:00
arkon
c4def072f6 Convert clear database queries to SQLDelight
(cherry picked from commit e15a867106bea490ed92d78b046535d3985ba1d0)

# Conflicts:
#	app/src/main/java/eu/kanade/data/source/SourceRepositoryImpl.kt
#	app/src/main/java/eu/kanade/domain/DomainModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/RawQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/database/ClearDatabasePresenter.kt
2022-06-11 12:20:29 -04:00
arkon
4b7b710b7c Actually compare chapter numbers as numbers when sorting (fixes #7247)
(cherry picked from commit da8669c826e6575a76751842bda3da59dc2f07c7)
2022-06-11 12:01:25 -04:00
Ivan Iskandar
29bf8b2378 Change cover memory key (#7276)
Use different key for custom cover and add last modified time for updating
cover without clearing the whole memory cache

(cherry picked from commit 59837bbb903dcfc2cf824972977b6247c713507b)
2022-06-11 12:01:19 -04:00
Rohit Mane
105bbdb4dd Update ChapterSourceSync.kt (#7271)
(cherry picked from commit 20c14a0a005fabb2d95311c70f218fd13c5942c8)
2022-06-11 12:01:07 -04:00
AntsyLich
1ad8893148 Make ChapterRecognition return the result (#7279)
(cherry picked from commit 06fdfcdb23a47e5d98935509c979da4ee80a044f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/util/chapter/ChapterRecognition.kt
2022-06-11 12:00:58 -04:00
arkon
d463f987b3 Minor cleanup
Fixing some things that were errors when compiling against SDK 33.

(cherry picked from commit cf48bbc176a164bf49a9dd3a0ccd3fe7cf4c6f2e)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
2022-06-11 11:58:54 -04:00
arkon
adbf52a347 Don't show clipboard copy confirmation toast on Android 13 or above
(cherry picked from commit 40f5d26945a61de0a6bea27bcee53e7b536174c6)
2022-06-11 11:58:21 -04:00
kasperskier
d957f2fa8b Add more DoH providers (#7256)
* Add more DoH providers

* Fix IPs

(cherry picked from commit 18ea6c4f655cfde314eb6b6d8061af313ba3f78b)
2022-06-11 11:58:13 -04:00
Andreas
76f5625948 Use Requery to enhance SQLite (#7260)
(cherry picked from commit 161c8bcf9e4d2604ddf99645045b74908ec9b0a2)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
2022-06-06 09:47:31 -04:00
arkon
571d1f29ca Minor cleanups
Pulling out some of the smaller changes that aren't related to the manga controller changes in #7244

(cherry picked from commit 7fdbf40cd23132915bd90cf623e4a69fb560dd26)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/MigrationFlags.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersSettingsSheet.kt
2022-06-04 20:43:05 -04:00
Jobobby04
44ea254f52 Use launchUI in MangaPresenter 2022-06-04 20:36:43 -04:00
Jobobby04
706315625e Start preparing for Manga Info Compose 2022-06-04 14:11:17 -04:00
Saud-97
ed39b61ee9 New: Migrating titles maintains custom covers (#7196)
* New: Migrating titles maintains custom covers #7189

* Added Custom Covers to MigrationFlags.kt, strings.xml

* Reworded covers --> cover

* Updated logic to show/hide Migration flags titles depending on manga.

(cherry picked from commit 5ea03fad8793a810514b41fe8308f89b25368c4d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/MigrationFlags.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
2022-06-04 13:14:10 -04:00
kasperskier
1d00dee9b7 ChapterSourceSync: set default timestamp to max timestamp (#7197)
(cherry picked from commit dd5da56695d8787ce5cf154b5d83aafaadf49def)
2022-06-04 12:55:13 -04:00
Jobobby04
8f868c0813 Fix auto-downloading for merged manga 2022-06-04 11:59:29 -04:00
Jobobby04
46bf8b58b5 Support edited manga info in domain 2022-06-04 11:31:11 -04:00
Andreas
cd1972f4cd feat: add read last read chapter shortcut (#7230)
Supersedes #6861

Co-authored-by: Pierre-Monier <65488471+Pierre-Monier@users.noreply.github.com>

Co-authored-by: Pierre-Monier <65488471+Pierre-Monier@users.noreply.github.com>
(cherry picked from commit 4560033e66bac13859af6aff5816925a4181a376)
2022-06-03 19:10:32 -04:00
Jobobby04
f0f8a2a0a2 Fix mangadex blocked uploaders 2022-06-03 19:07:58 -04:00
Jobobby04
0df61a9f28 Fix on hiatus status category 2022-06-03 19:07:34 -04:00
Jobobby04
0c7ceb059e Merged source stop ddos 2022-06-03 19:06:29 -04:00
arkon
6e85e69268 Remove logic for restoring legacy JSON backups
- Protobuf backups have been around for 1.5 years now
- The ability to restore online-dependant data from JSON backups gets harder as time goes on and sources drift
- If users really need a way to restore them, they can use an older version of the app, or a separate tool for translating between the formats could be created

(cherry picked from commit d1be221d7aaa811e50417235021c7e038704d276)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/AbstractBackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/FullBackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/legacy/LegacyBackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/legacy/LegacyBackupRestore.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/legacy/models/Backup.kt
2022-05-29 18:54:44 -04:00
arkon
2ae1b6ac3e Replace history query with actual upsert
(cherry picked from commit cd0294b1b697b5dedb79374a1007ad81d90781c9)
2022-05-29 18:44:41 -04:00
Andreas
8f9aefe1b7 Make Storio follow new database table structure (#7217)
(cherry picked from commit b36ca92dd936af1928e032712632d68a03024b03)
2022-05-29 18:43:27 -04:00
Andreas
8b1bc71e72 MangaUpdates tweaks (#7205)
* MangaUpdates tweaks

* Review changes

Co-authored-by: arkon <4098258+arkon@users.noreply.github.com>

* Use built in functions instead of Jsoup

Co-authored-by: arkon <4098258+arkon@users.noreply.github.com>
(cherry picked from commit c8468c29f1b65ce5e3a3680b3f095cf003d2f89d)
2022-05-29 18:43:19 -04:00
arkon
2b766863f5 Minor cleanups
(cherry picked from commit 3c40010afffa807017f0b56634d8c5323154b4e4)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsLibraryController.kt
2022-05-29 18:43:11 -04:00
Chris
dd8dc8fbe9 Fix global update ignoring network constraint (#7188)
* update library update network constraint logic

* add explicit 'only on unmetered network' update constraint

(cherry picked from commit 63238b388d1af3a0036f1d9a43cb4d2e87aabf5e)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsLibraryController.kt
2022-05-29 18:42:37 -04:00
AntsyLich
f0fb91b84b Reader: Save reading progress with SQLDelight (#7185)
* Use SQLDelight in reader to update history

* Move chapter progress to sqldelight

* Review Changes

Co-Authored-By: inorichi <len@kanade.eu>

* Review Changes 2

Co-authored-by: FourTOne5 <59261191+FourTOne5@users.noreply.github.com>
Co-authored-by: inorichi <len@kanade.eu>
(cherry picked from commit 809da49301cceacd433f38354fb04fc616efcc5f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
2022-05-29 18:38:40 -04:00
arkon
c4dfbd4768 Minor cleanup
(cherry picked from commit 87661eb85a54fc938defe4f5e1d046b34585f08b)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/source/LocalSource.kt
2022-05-24 20:01:07 -04:00
FourTOne5
6fd79f4838 Local Source - qol, cleanup and cover related fixes (#7166)
* Local Source - qol, cleanup and cover related fixes

* Review Changes

(cherry picked from commit ad17eb138609d684fd5929c3cb7dc644e3a3ec95)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/source/LocalSource.kt
2022-05-24 20:00:15 -04:00
Andreas
d7a93e254f Add MangaUpdates as a tracker (#7170)
* Add MangaUpdates as a tracker

- jobobby04 co-authored for suggestion in BackupTracking.kt

Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>

* Changes from code review

Co-authored-by: arkon <arkon@users.noreply.github.com>

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

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/track/TrackManager.kt
2022-05-24 19:54:09 -04:00
arkon
1a1bb412c0 Migrate settings search view to Compose
(cherry picked from commit 9b0d85bf6c9cf1a6b476be477255f52ac07195c4)
2022-05-24 19:47:10 -04:00
saud-97
7466dcc48c Fixes: incorrect sorting when chapter name contains hyphens '-' (#7161)
* Fixes: incorrect sorting when chapter name contains hyphens '-'

* Added a test case for hyphen in ChapterRecognitionTest.kt

* Removed chapter range test case since it will be replaced by chapterContainingHyphensCase

(cherry picked from commit 3e07100dc2725cb2d42050571232dd5d485b4de5)
2022-05-24 19:46:15 -04:00
arkon
cf980adb8e Minor cleanup
(cherry picked from commit 9a75232ca40e8f6f3dd6a6f73cc0c2f3912e3ced)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/SourcesScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesFilterController.kt
2022-05-24 19:45:39 -04:00
FourTOne5
dc70fdac43 Migrate extensions language filter screen to compose (#7169)
(cherry picked from commit fd9510e18fe9e9d42631c40bcaf254453604337b)
2022-05-24 19:31:41 -04:00
CVIUS
c0362faaf8 Fix reader menu appearing then disappearing in webtoon viewer when there is no next chapter (#7115)
(cherry picked from commit 6580f5771f634b0e2c25f8cd42fa1596b2ea4e1c)
2022-05-24 19:30:13 -04:00
CVIUS
31ac3aece2 Fix webtoon viewer showing transition view when going to next/prev chapter using next/prev button (#7133)
(cherry picked from commit b21bcc2d45859ea86d6042b5df9d7c6f30d259cc)
2022-05-24 19:30:04 -04:00
S97
836b66fe83 Fixed Splitting Height for Tall Images (#7148)
* Fixed Splitting Height for Tall Images #7140

* Update app/src/main/java/eu/kanade/tachiyomi/util/system/ContextExtensions.kt

Co-authored-by: FourTOne5 <59261191+FourTOne5@users.noreply.github.com>

Co-authored-by: FourTOne5 <59261191+FourTOne5@users.noreply.github.com>
(cherry picked from commit 4481c54376fbdedc26e29a7942cd8752567ef4a3)
2022-05-24 19:29:56 -04:00
kasperskier
bbdbaa1de6 Change jsDelivr CDN URL to Fastly (#7156)
(cherry picked from commit 7b242bf11833ebd6dda34df295dfa7cd45cb88d0)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionGithubApi.kt
2022-05-24 19:29:48 -04:00
arkon
530f91d774 Theme Compose SwipeRefresh indicator like XML version
Also rename some screens/controllers to better represent that they're the list views.

(cherry picked from commit 01e04e31bf63a9fed18d214f0d12b4c45c72f948)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/SourcesFilterScreen.kt
2022-05-24 19:27:33 -04:00
arkon
1c86a7c94b Minor cleanup
# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowseController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesPresenter.kt
2022-05-24 19:24:41 -04:00
arkon
4458f74f6c Use jsDelivr as fallback when GitHub can't be reached for extensions (closes #5517)
Re-implementation of 24bb2f02dce135e0ceb2856618ecfc0e30dce875

(cherry picked from commit d61bfd7cafa09ff6c5f159c945984f2e8d9904b9)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionGithubApi.kt
2022-05-24 19:10:04 -04:00
arkon
6fc99bef25 Migrate extension details page to Compose
(cherry picked from commit 13943f77f7c06d7978165a1d9ba139e72dfed853)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/SourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/details/ExtensionDetailsHeaderAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrationMangaController.kt
2022-05-15 22:06:54 -04:00
Andreas
fdcd3aa7eb Convert Extension tab to use Compose (#7107)
* Convert Extension tab to use Compose

Co-authored-by: jobobby04 <17078382+jobobby04@users.noreply.github.com>

* Review changes

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

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/ExtensionHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/ExtensionPresenter.kt
2022-05-15 21:54:12 -04:00
CVIUS
a506cde219 Settings cleanup (#7126)
* Settings cleanup

* Oops

* Also hide "Invert tap zones" if tap zones is set to "Disabled" in ReaderReadingModeSettings

(cherry picked from commit 4c9331c4e94d384393708eb6751b918bb31c5d06)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
2022-05-15 21:16:49 -04:00
CVIUS
eebeeb092d Add long click action on chapter download button (#7125)
(cherry picked from commit 5002692bda658354f1df6285cade002b29747d59)
2022-05-14 11:39:11 -04:00
FourTOne5
e5a0d95156 Minor cleanup in ImageUtil and SourceFilterPresenter (#7106)
* Minor cleanup in `ImageUtil` and `SourceFilterPresenter`

* Fix missed stuff

(cherry picked from commit 71bb8ed975bcf790d170310121afbfe94228dbb1)
2022-05-14 11:39:03 -04:00
Jobobby04
95bd0141d4 Cherry picking fixes 2022-05-14 11:38:38 -04:00
CVIUS
9322624886 Save reader progress when activity is paused (#7121)
(cherry picked from commit f1ab34e27cbd8f26f87e34238af0863d4650b960)
2022-05-14 10:50:02 -04:00
CVIUS
58db04d8dd Fix category tabs incorrect scroll position (#7120)
(cherry picked from commit 6d655ff7574c0c51c41cfc6b3abed57fb2115acc)
2022-05-14 10:49:55 -04:00
nzoba
f7a57d2ddd Add switch to DownloadPageLoader when chapter is downloaded (#7119)
(cherry picked from commit 63627c81ebd6b3a9b1ee017f385a72b6fc8c8a49)
2022-05-14 10:49:46 -04:00
arkon
0bb16937c7 Update reset viewer flags strings
(cherry picked from commit 5dc688dc2e581ff0098f9012a3922de2ef85d2f3)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
2022-05-14 10:49:34 -04:00
FourTOne5
c24f134b28 Add option to reset viewer flags (#7062)
* Add option to reset viewer flags

* Review Changes

* Run `resetViewerFlags()` content with `launchIO`

(cherry picked from commit 08fb2fe467a786e1273bf22531361d33ae898a38)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
2022-05-14 10:48:57 -04:00
CVIUS
afd1c3b491 Detect identical mangas when long pressing to add to library (#7095)
* Detect identical mangas when long pressing to add to library

* Use extracted duplicate manga dialog to avoid duplication

* Partially revert previous commit

* Review changes

* Review changes part 2

(cherry picked from commit f1afeac0bcd3904c323e24d67dd945c85c666f92)
2022-05-14 10:48:12 -04:00
S97
3a2ef3f134 Fixed splitting logic and CBZ compression logic (#7098)
* Fixes:
- spliiting fails when the page was already been split and processed before
- Moved CBZ logic a little earlier to avoid marking a download as complete before the CBZ compression was completed

* Added a single space for readablity

* Added 2 spaces for readability

* Moved the splitting logic to happen inside getOrDownloadImage()

* Minor cleanup

* - Improved error handling when splitting fails due to OOM exception caused by BitmapFactory.decodeFile. - Changed logic from throwing error to only notify to allow the download to complete even if splitting failed.

* reverted auto formatting changes

* removed an extra loop

* Merged to Upstream, cleaned up

* Removed unused localized string

* Minor cleanup

(cherry picked from commit f75d63274089c5a0cfe0e1afde8703017b521870)
2022-05-14 10:48:04 -04:00
CVIUS
054e6b839e Fix "Move to top" showing at the most top item in download queue (#7109)
(cherry picked from commit b26daf8824e09922f063db6d6410b78d6281957b)
2022-05-14 10:47:54 -04:00
arkon
6d1dcf0deb Update Compose
Fixes #7004

(cherry picked from commit 393fc146303c3dc6185842e4158c3bd3f006017b)
2022-05-14 10:47:43 -04:00
arkon
61ff7f8b21 Minor cleanup
(cherry picked from commit c7707dc50edb817652d4e850f4f0806ab05307df)

# Conflicts:
#	.github/renovate.json
2022-05-14 10:47:25 -04:00
arkon
409162d3d7 Bump dependencies
(cherry picked from commit 37199a10bf13ef838bfa839da384969101a32f40)
2022-05-14 10:46:51 -04:00
arkon
393d7a1174 Address some build warnings
(cherry picked from commit b950370f12680e4113c1f736e656181fdf306579)
2022-05-14 10:46:37 -04:00
arkon
24c5563a02 Update linter
(cherry picked from commit ae7df4fb7fa4fc996ba26a9f6dbbb6b5277a939b)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/domain/source/model/Source.kt
#	app/src/main/java/eu/kanade/presentation/source/MigrateSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/source/SourceFilterScreen.kt
#	app/src/main/java/eu/kanade/presentation/source/SourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourceFilterPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcePresenter.kt
2022-05-14 10:45:26 -04:00
arkon
334be13d40 Minor cleanup
- Add pending intent immutable flags to satisfy lint warnings
- Change AddDuplicateMangaDialog arg to a function instead to avoid leaking controller-specific logic into it
- Require WebView 99+

(cherry picked from commit d3f9232a3fa50e02af110b5320b4fcf4bcccb3cd)
2022-05-14 10:39:37 -04:00
FourTOne5
6adf5927ab Fix download splitter potentially throwing OOM on huge images (#7099)
* Fix download splitter potentially throwing OOM on huge images

Also move the splitting to ImageUtil

* Change variable name and logcat output

(cherry picked from commit 9f655e0d41a690752ac440d9bc8fb56188d4ef0c)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/util/system/ImageUtil.kt
2022-05-14 10:39:20 -04:00
nicki
81bdc19075 Check for app updates by comparing semver (#7100)
Instead of just checking whether the current app version *matches* with
latest app version in GitHub Releases, compare the semver from the tag
names to check whether the latter is greater and the app needs an update

Reference: semver spec #11 https://semver.org/#spec-item-11

Co-authored-by: Andreas <6576096+ghostbear@users.noreply.github.com>

Co-authored-by: Andreas <6576096+ghostbear@users.noreply.github.com>
(cherry picked from commit e7ed130f2a4fcd7452737476189687fbd130c80d)
2022-05-14 10:38:37 -04:00
arkon
aecb2e92dd Extract add duplicate manga dialog into a controller
(cherry picked from commit e421eb61bc7b4bcaf10b7e165358de83d2bfe368)
2022-05-14 10:36:48 -04:00
nicki
1269d71d1a Don't save categories in backup if not selected (#7101)
Currently, manually created backups contain list of categories even if
Categories option is not selected during Backup Prompt. This leads to
empty categories being created when restoring such backup files

This commit adds a check before saving categories list info to the
backup file. The check is the same check which is used while backing up
category info of manga in library

Tested and worked successfully on app installed on Android 12

(cherry picked from commit 11c01235ac32c8fd3de864c37cab82367b4a9e41)
2022-05-14 10:36:23 -04:00
arkon
7403709ecd Adjust inset consumption in Compose controllers (fixes #7085)
Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>
(cherry picked from commit 6993e88265c3a759916e5e9677cdf28351ca85d2)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/base/controller/ComposeController.kt
2022-05-08 10:50:41 -04:00
arkon
f675fc78ef Fix crash when using renamed library sort methods (fixes #7092)
(cherry picked from commit 681e9396b3f9baf9c6f0e66f596830c662dbadb9)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/setting/SortModeSetting.kt
2022-05-08 10:49:40 -04:00
arkon
4aa5c6107c Don't allow swiping away app update install notification
Also show the new version number in the notifications.
2022-05-07 17:26:27 -04:00
arkon
33c8dcb70c Fix tall image split math issues
- Round up per-split height to ensure the entire page ends up being split
- Handle the last split of a page potentially being shorter than the others
2022-05-07 10:48:16 -04:00
arkon
1f263b9cfc Minor cleanup
- Remove some unused StorIO queries
- Clean up tall image splitting a bit (no need for creating an unscaled scaled bitmap copy, or tracking coordinates)
- Clean up library updater a bit (still needs a lot of work though)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/ChapterQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/HistoryQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/util/system/ImageUtil.kt
2022-05-07 10:48:04 -04:00
S97
6bacc3808e Add option to automatically split tall downloaded images (#7029)
* Auto split long images to improve performance of reader

* Auto split long images to improve performance of reader - fixed the sorting

* Improved performance of splitting by getting rid of 1 extra loop

* Cleaned up code and moved the functionality to work during the downloading process (unsure how this affects download speed)

* Replaced the import .* with the actual used imports

* Fixes for Bugs discovered during my testing

* Fixed last split missing bug.

* Reordered the download progress to be updated before splitting instead of after to reflect more meaningful progress of download

* Reverted last commit since it had no effect

* Improved progress tracking when a download is paused then resumed.

* Implemented the recommended changes to enhance the feature.

* Apply suggestions from code review

Co-authored-by: arkon <arkon@users.noreply.github.com>

* Update app/src/main/res/values/strings.xml

Co-authored-by: arkon <arkon@users.noreply.github.com>

Co-authored-by: arkon <arkon@users.noreply.github.com>
2022-05-07 10:33:05 -04:00
FourTOne5
f966940d15 Fix removing manga from library reverts during global update (#7063)
* Fix removing manga from library reverts during global update

* Review Changes

* Review changes 2
# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
2022-05-07 10:32:56 -04:00
FourTOne5
3865384ccc Add -r flag to ShizukuInstaller createCommand (#7080) 2022-05-07 10:32:02 -04:00
FourTOne5
ea20b44865 Reword and Fix library sort (#7068)
# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/setting/SortModeSetting.kt
2022-05-06 20:45:33 -04:00
Jobobby04
7c8d6bb282 Minor cleanup saved search database info 2022-05-06 20:32:56 -04:00
Jobobby04
a3989030aa Fix merged source selection crash 2022-05-06 20:32:54 -04:00
jobobby04
1c7a81b7ad Properly modify StateFlow value (#7059)
(cherry picked from commit ed8a54bd2ae58f9fb58d1d92318b5dcb4c7ce3f5)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcePresenter.kt
2022-05-02 17:25:26 -04:00
FourTOne5
c6c6cb3033 Properly show history state (#7052)
* Make `HistoryState` similar to `MigrateState`

* Review Changes

* Also cache the transformation

Co-authored-by: Andreas <andreas.everos@gmail.com>

* Fix States

Co-authored-by: Andreas <andreas.everos@gmail.com>
(cherry picked from commit 5bd5b215430c6d19c1e4314bdaf4264eb43e9d29)
2022-05-02 17:23:04 -04:00
FourTOne5
bb5732055e Make MigrateSourceState similar to MigrateState (#7054)
(cherry picked from commit aef1dc6eaffd96a5ea14cf897f78b9f26db48167)
2022-05-02 17:19:50 -04:00
FourTOne5
222f8a7d7a Make SourceState similar to MigrateState (#7053)
* make `SourceState` similar to `MigrateState`

* Review Changes

(cherry picked from commit bd45bf7407716bceec5cc226d3680676bb211fea)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/source/SourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcePresenter.kt
2022-05-02 17:19:38 -04:00
Jobobby04
7e380582a6 Fix crashing when creating a backup 2022-05-02 17:04:06 -04:00
arkon
0a908464f7 Add newer methods to StubSource
(cherry picked from commit e3f6cfa2df1c8406f89ca353230d0953870d9fe9)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceManager.kt
2022-05-01 16:59:56 -04:00
saud-97
28e0a00ece Notify user of error during a page download failure (#7047)
* Notify user of error during a page download failure

* Included the manga title in the error notification

(cherry picked from commit 5763201307551bcd6a1f25ca81c8125f6f434c0a)
2022-05-01 16:55:55 -04:00
arkon
03b03ba342 Update navigation bar padding in Compose screens
(cherry picked from commit dee783079363acef241e574bc9c5600bc8f27bf3)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/source/interactor/GetSourcesWithFavoriteCount.kt
#	app/src/main/java/eu/kanade/presentation/history/HistoryScreen.kt
2022-05-01 16:54:50 -04:00