* Add Filters to Updates screen
Behaves basically like the filters in the library:
- Unread: Show/Don't show unread chapters
- Downloaded: Show/Don't show downloaded chapters
- Started: Show/Don't show chapters that have some progress but aren't
fully Read
- Bookmarked: Show/Don't show chapters that have been bookmarked
Started behaves differently from its Library counterpart because the
actual manga data is not available at this point in time and I thought
calling getManga for each entry without caching would be a pretty bad
idea.
I have modelled this closely on the filter control flow in the
Library, but I'm sure this can be simplified/adjusted in some way.
* Move most filtering logic to SQL
Unread, Started, and Bookmarked filters are now part of the SQL query.
Download state cannot be filtered in the database so it remains in
Kotlin.
Because the Downloaded filter has to be run in Kotlin, the combine
flow uses the preferences flow twice, once to get the SQL query params
and once for the Kotlin filters (only Downloaded at this time).
* Add "Hide excluded scanlators" to update filters
Based on the work done in mihonapp/mihon#1623 but integrated with the other filters
in this PR. Added the user as a co-author for credit.
Co-authored-by: Dani <17619547+shabnix@users.noreply.github.com>
---------
Co-authored-by: Dani <17619547+shabnix@users.noreply.github.com>
---------
* Merge Panorama toggle into Filter diaglog
* Make Panorama toggle persistent and share it with History
* Implement toggleSwitch method for preference management to avoid create new function on every composition
Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
(cherry picked from commit bbe9aa8561360f030072fbc49f79748e71c6535e)
* feat(history): Add indicator for un-finished reading & has more un-read chapters
* Fix StateProvider
* Show reading progress in History screen
* Don't count bookmark excluded chapters in unread dot for History
* Don't count bookmark excluded chapters in Library unread count
* Exclude bookmark filtered chapters from continue-reading list
* Bundle `applyFilter` for bookmark & scanlator together
* Remove parentheses
Remove the inline-code and move it to database
* merge queries for Updates view
* merge queries for Library view
* add comment
* fix spotless
* also migrate database
* switch off integrated H to show E-H source & extension
* More languages for E-H/ExH, also more popular with rate 5
* Don't hide Multi source when toggle Integrated H
* Avoid crash trying to load ehentaiBrowseDisplayMode
* change source ID to matching general extension
* migration old source ID to new source ID
* Allow importing of EHentai extension backups
* limit library update & metadata source to only Multi lang
* update app version
* fix spotless
* also migrate saved search/feed & pinned EH/EXH source ID when restore from backup or update app
* migrating
* - Fix Broadcaster
- Include Updater for Debug
- json to emulate Github call
* - resetup AppUpdateJob when changing settings
- Fix ACTION_MY_PACKAGE_REPLACED
* improve notification
* update icon
* app update to high important
* - Run auto install on AppUpdateJob
- Add release link to job
* idle state & network aware
* fix duplicated job start
* don't show notification & start job for peek-into-preview
* allow cancel auto update job when set to NEVER
* always notify on install complete
* rearm AppUpdateJob each time MainActivity already checked for update
* MainActivity checks every 2 days, rearm AutoUpdateJob in 3 days
* - fix install error notification ID
- add timeout for manual installation if package manager crash
* settings & spotless
* restriction settings & auto run download-install if not in restrictions
* clean up
- A dedicated screen in Settings for error list when updating library
- Allow to jump to Error screen if click on notification
- Allow to migrate error entry
- Create error on each entry updated instead of waiting for the whole updating list to finished
- Overwrite entry's error if new error happens after updating
- Clear entry's error if it successfully updated
- Clear un-relevant errors (entry which was removed from Library) on next update
- List of errors can jump to top/bottom or next/previous errors group
- Won't create error file anymore
* Added library update errors screen
(cherry picked from commit 7cf37d52f959ac65f53cf7657563fb4428bd9188)
* Open library update errors screen on clicking library update error notification
(cherry picked from commit d2d22f437a1d61b086f1e19dfbcd2c0a2bc125f4)
* LibraryUpdateErrorScreen's bottom UI with scroll to top/bottom buttons
(cherry picked from commit 859ce54474d456232510e21f4f6795af65489be2)
* migrate to AppBar
* sticky header
* scroll to next/previous group of errors
* insert error entry one by one
* delete error from DB when successfully updated
* clean un-relevant errors from DB on every updates
* fix errors & clean up
* catch exception & fix notification intent
---------
Co-authored-by: ImaginaryDesignation <108343184+ImaginaryDesignation@users.noreply.github.com>
* support hide categories (merged from Aniyomi)
* styling CategoryScreen: always showing all categories & shading the hidden one
* Hide categories directly on Library tab and load it as a flow
* fix: hidden categories got reset after delete/reorder
* remove unnecessary code