Since multisource extensions are no longer a thing, we now simply rely on the flag at the extension level, i.e. the per-Source/SourceFactory `@Nsfw` annotation is no longer checked.
We'll have to remove all of the annotation usages from the existing sources, which will also effectively break the setting for older versions of the app.
(cherry picked from commit a2cf210a524894e5c1d1f062e4813086b46777a4)
# 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
* Use QuadState Categories to edit mangas in Library
Add updateMangasToCategories to build build correct Categories list for
each manga using Common and Mix list
Update QuadState Multi-Choice to either Action or Display List
Display list would have different state sequece from Action
Uncheck-> Indeterminate (only if initial so)-> Check
fixup manga categories logic as Windows and push request comments
* fixup: Use QuadStateTextView.State enum
Update function to use QuadStateTextView.State enum that missed in last change
* fixup: missing closing bracket and type cast
Co-authored-by: quangkieu <quangkieu1993@gmail.com>
(cherry picked from commit ee711dc0fb317bf1a661ede66ad392b8d1416274)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.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
* Add IME_FLAG_NO_PERSONALIZED_LEARNING flag to text input when incognito is enabled
Tested with Gboard only.
* Revert "Add IME_FLAG_NO_PERSONALIZED_LEARNING flag to text input when incognito is enabled"
This reverts commit 068399db
* Add IME_FLAG_NO_PERSONALIZED_LEARNING flag to text inputs when incognito is enabled
Source preference is not affected.
* Source preference stuff
(cherry picked from commit 3ea84cf0ce23d37a1787663834ab9922f10577f8)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/details/SourcePreferencesController.kt
* Use ActivityCompat.recreate
* Use more KTX extensions
* Use PackageInfoCompat.getLongVersionCode
* Remove unnecessary compat usages
(cherry picked from commit 12a9d0575d432a4bc2f2c471e864d26205aba953)
* Prepare for edge-to-edge MangaController
* Fix derpy liftToScroll with our own implementation
* Edge-to-edge MangaController
Except when legacy blue theme is used.
* Save app bar lift state for controller backstack
* Fix expanded cover position after the view recycled
* Handle overlap changes when incognito mode disabled
* Tablet fixes
* Revert "Handle overlap changes when incognito mode disabled"
This reverts commit 1f492449
Breaks on rotation changes.
* Fix MangaController's swipe refresh position
* All controllers are now doing lift app bar on scroll by default
They are already doing that before so this pretty much just a cleanups.
* TachiyomiCoordinatorLayout: Support ViewPager for app bar lift state check
I'm willing to revert this if this minute detail solution is deemed too hacky xD
* Fix app bar not lifted when scrolled without fling
* Save app bar lift state across configuration changes
* Fix MangaController's swipe refresh position after configuration change
* TachiyomiCoordinatorLayout: Update ViewPager reference when controller is changed
(cherry picked from commit da16110e1c571526baea34275db41937f68c7e8c)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/base/controller/ConductorExtensions.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoHeaderAdapter.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/more/AboutController.kt
* Use Material Components' dialogs
For all dialogs that has direct replacement.
* Convert text input dialogs
* Convert quad-state multi choices dialogs
* Convert date picker dialogs
This also changes the flow to remove selected start/finish tracking date and
the track item itself
* Remove material-dialogs dependencies
(cherry picked from commit ae97bb04458c6a754c6e0ca05a2a3b96ce16894f)
# 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/main/WhatsNewDialogController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPageSheet.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsBackupController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsDownloadController.kt
* Add Migrate button marginTop and implement Hide not found manga in mass migration
* if else change
* move variable to adapter
* horizontal scroll view for checkboxes in migration_bottom_sheet.xml
* Add flags for sorting per category
* Add logic to LibrarySettingsSheet
* Add logic to LibraryPresenter
* Minor tweaks
* Use enum instead of variables
Also deprecates LibrarySort in favour of the new enum classes
* Remove debug log and suppress deprecation
* Convert DisplayMode setting to enum
Also fix bug were adapter would get de-synced with the current per category setting
* Fix migration crashing app due to values being access before migration
(cherry picked from commit 60890147c3c24ac30a75bfb8c4fab7b8cccd60be)
# Conflicts:
# app/build.gradle.kts
# app/src/main/java/eu/kanade/tachiyomi/data/database/models/Category.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/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/LibraryCategoryView.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryItem.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/main/MainActivity.kt
* Coil: Enable disk cache for source items
* MangaCoverFetcher: Let Coil's OkHttp client handle caching for non-library cover
(cherry picked from commit 3527dedc993afc0d88143c4fd03fbaf953a4e715)
* Edge-to-edge bottom sheet when possible
* ReaderSettingsSheet: Animate background dim changes
* Adjust modal bottom sheet in-out animation
* Use public method to get bottom sheet behavior
* Set bottom sheet peek size to 50% screen height
The current auto peek height gives too low value on landscape orientation
* Set bottom sheet navigation bar scrim when needed
(cherry picked from commit 9f744bc44589a3e44fb8b655615c2184d1748c0a)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt