* Hide reader menu when user starts reading again
* Hide menu on zoom and scrolling around during zoom
Didn't work for webtoon
* Only listen when menu is visible
* Use CircularProgressIndicator on PageHolder
Manually rotate the CircularProgressIndicator inside a wrapper view instead of
drawing our own custom indicator.
* Use CircularProgressIndicator on TransitionHolder
* Fix Cover sharing and saving
The newly added manga cover sharing only worked with manga saved to the library (due to the implemented CoverCache only recording covers of library manga).
The changes made with this commit fixes that behaviour by implementing a fallback: the cover can now also be retrieved from the Coil memoryCache.
* Removal of coil MemoryKey usage
No longer uses the coil memory key, instead starts a new Coil request for the cover retrieval.
* Removed try-/catch-wrapper and added context-passing
useCoverAsBitmap lost its try-/catch-wrapper and doesn't call for the context anymore.
Instead shareCover and saveCover now pass their activity as context to useCoverAsBitmap.
* Added missing parameter description for useCoverAsBitmap
* 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
* Added "Ninomae" theme
Based on the lovely Ninomae Ina'nis, for Arkon and Flat
* Use updated colors from Ghostbear
Adapted after feedback
Co-Authored-By: Andreas <6576096+ghostbear@users.noreply.github.com>
* Tweak the Ninomae theme further
* Sort themes alphabetically
- Sorts themes alphabetically.
- Use the same capital word system in colors.xml for themes.xml as well.
- Rename AMOLED theme to AMOLED mode in theme.xml and color.xml references.
* More tweaks
* Style incognito bar
Uses a dark purple which looks super clean instead of a washed out gray
This sets the groundwork for other themes too
* Tweak final onPrimary color
* Rename Ninomae to Tako
RIP
Co-authored-by: Andreas <6576096+ghostbear@users.noreply.github.com>
* 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 TachiyomiImageDecoder for Coil
Is currently used to decode AVIF and JPEG XL images.
* LocalSource: Check against file name for cover
This allows file with all supported formats to be set as cover
* TachiyomiImageDecoder: Handle HEIF on Android 7 and older
* Merge AMOLED and regular dark themes
This allows all variants of dark themes to use black backgrounds as a
separate preference.
* Merge light and dark themes
* Fix ReaderSeekBar color on Dark Blue theme
* Color fixes
* Fix Dark Blue bars ripple
* Simplify night mode check
* Imported implementation for updating library by next expected update from Neko. This sort uses the last 4 updates for a manga to compute an average time between updates and then extrapolates when the next update should occur.
Currently seems to work perfectly. However, I may have silently messed something up along the way.
All code and algorithms are credited to kyjibo on GitHub. The original commit adding this functionality is here: 681003926a
* Imported implementation for updating library by next expected update from Neko. This sort uses the last 4 updates for a manga to compute an average time between updates and then extrapolates when the next update should occur.
Currently seems to work perfectly. However, I may have silently messed something up along the way.
All code and algorithms are credited to kyjibo on GitHub. The original commit adding this functionality is here: 681003926a
* Remove commented-out line from LibraryUpdateRanker
I missed removing this when first committing. The removed line is a holdover from Neko, which requires 7+, but I removed the function that requires this.
* Tracking sheet and search visual adjustments
* Remove track item divider
* Add start margin to "add tracking" button
* Fix track search dialog crash when no item chosen
* Show "remove" action only when track item is previously set
* Remove placeholder for total chapters
* Cleanups
* Add track search error/empty result message
* Make track search dialog fullscreen
* Use AutofitRecyclerView for track search dialog
* Fix text input overlapping
* Run track search from IME action instead
* Remove deprecated method
* Reformat
* Set track search error message on the placeholder
* Use payload to notify track search item change
* Fix track search action icon tint color
* 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`
* Fix ReaderActivity system bars behavior
* Fix ReaderActivity transition view text color
* Don't change reader navbar color when windowLightNavigationBar is not available
* 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