* Implement new extension install methods
* Fixes
* Resolve feedback
* Keep pending status when waiting to install
* Cancellable installation
* Remove auto error now that we have cancellable job
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.
* 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>
* 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
* 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
* Use Core Splashscreen for splashscreen stuff
* Keep splash screen until activity ready
Ready as in the data inside starting screen is finished showing
* Use custom splash screen exit animation on older android version
* Add splash screen minimum duration to prevent exit jank
* Fix broken AMOLED theme
* Improvements
* 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
* 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
* 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
* fix: prevent crash if TrackService.getScoreList() is empty
* disabled track score button if service doesn't support scoring
* first implementation of the Komga tracking
this doesn't work for read lists
* auto track when adding to library
* handle refresh
* 2-way sync of chapters for unattended tracking services
* Update app/src/main/java/eu/kanade/tachiyomi/ui/manga/track/TrackSheet.kt
Co-authored-by: Andreas <andreas.everos@gmail.com>
* group strings together
* support for read lists
* sync read chapters on bind
* only mark local chapters as read during 2-way sync (incoming)
* local progress from read chapters will be sent to remote tracker on bind/refresh
this enables syncing after reading offline
* remove unused variable
* refactor the 2-way sync in a util function
* handle auto add to track for unattended services from the browse source screen when long clicking
this will also sync chapters, as it is possible to have read or marked as read chapters from there
* 2-way sync when library update for TRACKING
* refactor
* better handling of what has been read server side
* refactor: extract function
* fix: localLastRead could be -1 when all chapters are read
* refactor to rethrow exception so it can be shown in toast
* extract strings
* replace komga logo
Co-authored-by: Andreas <andreas.everos@gmail.com>
* Add manga-wised rotation mode settings
Based on #3522
Co-authored-by: bboyz269 <4453811+bboyz269@users.noreply.github.com>
* Fix small mistakes
* Complete TODOs
* Rename functions
rotation -> orientation
* Fix orientation icon not changing
Bug from video
* Fix bug with force portrait not being force if a default value
Bug from video
* Backup viewer_flag as a seperate field in so legacy/forks doesn't crash
* Make viewer_flags nullable so old backups viewer gets restored
* Add migration for old rotation and viewer to new defaults ones
* Rename variable in enums
* Fix migration after OrientationType was changed
* Remove untrue comment
Co-authored-by: bboyz269 <4453811+bboyz269@users.noreply.github.com>