* 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
* extend library search to enable -<source> search
library search already allows for <source> search to select manga from a
particular source. Similarly, -<source> allows to search for manga that
aren't from the said source. TachiyomiSy has this feature but it heavily
depends on exh methods
A problem when you directly add a negation check is that although
it will work, the genre search kicks in adds back every manga since
-<source> returns true for all genres of a manga
Thus, the solution I decided on was do source search first, and then
move to genre check when it fails. A perhaps useful addition is that,
now you're able to search like this:
<genre1>, -<source>, -<genre2>
* make if-else statements more readable
* refactor containsSourceOrGenre() using `when`
* add comment describing the function
* remove lazy
not really required anymore now that containsSourceOrGenre was rewritten
using `when`
* 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
* Added text to ChangeMangaCategoriesDialog if invoked with empty category list
* Change dialog text, add negative button, and change positive button to open CategoryController
* Tiny bit of code cleanup and reorganizing
* Add onPause\onResume persistence to searchView. Fixes issue #3627
* New controller subclass with built-in SearchView support
* Implement new SearchableNucleusController in SourceController
* Add query to BasePresenter (for one field it is not worth create a subclass in my opinion), convert BrowseSourceController to inherit from SearchableNucleusController
* move to flows to fix an issue in GlobalSearch where it would trigger the search multiple times
* Continue conversion to SearchableNucleusController
* Convert LibraryController, convert to flows, Known ISSUE with empty string being posted after setting the query upon creation of UI
* Fix issues with the post being tide to the SearchView queue which is not processed until shown. Add COLLAPSING state capture which should wrap this up.
* refactoring & enforce @StringRes for queryHint
* Allow to filter for each tracker logged in
* Simplify filter logic
* Use variable names instead of it
and rename variables
* Change how trackFilters and items are setup
* Use variable name instead of it and try cleanup filterFnTracking
* Changes from feedback
* Fix phantom anchor bug in manga chapters list when multi-selecting
* Fix phantom bug when long pressing selected items not at top of stack
* Fix phantom anchor bug in library page
This was a bigger headache than it was worth. To note, phone landscape wasn't considered, so the navbar overlaps the content on the side. Additionally, the ability to programatically control the navbar scrim is missing, so it'd have to manually be added.