* Migrate History screen database call to SQLDelight
- Move all migrations to SQLDelight
- Move all tables to SQLDelight
Co-authored-by: inorichi <3521738+inorichi@users.noreply.github.com>
* Changes from review comments
* Add adapters to database
* Remove logging of database version in App
* Change query name for paging source queries
* Update migrations
* Make SQLite Callback handle migration
- To ensure it updates the database
* Use SQLDelight Schema version for Callback database version
Co-authored-by: inorichi <3521738+inorichi@users.noreply.github.com>
* Migrate History screen to Compose
- Migrate screen
- Strip logic from presenter into use cases and repository
- Setup for other screen being able to migrate to Compose with Theme
* Changes from review comments
This is a partial revert/evolution of 538dd60580
- Back to notifications, because Android 12+ may cut off toasts
- Notifications now automatically dismiss after 30s on Android 8+ (taken from J2K)
- Also warn if more than 30 chapters are queued for download
Users should better curate their chapter folder/file names if need be. There's legit reasons for a chapter to start with or contain the same word(s) that the manga title consists of.
* Added basic move to top series feature
* Remove intermediate List
* Change text string
* Remove spanish manual translation
* Changed algorithm to use "partition"
Considering there's no pagination for this list, the data loading can take some
time. So this will show the existing refresh indicator instead of empty view
while the list is loading.
* Use existing worker for manual backup creation
This will show the "creating backup" notification when auto backup is
running. Complete or error notification will continue to be shown only on
manual job.
* Make sure disabling auto backup don't cancel running manual backup job
Reappear stably on the api30 Android Studio Emulator,
first save a large backup file,
then save a small backup file, overwriting the previous larger backup file,
so you get a backup file with a larger size but only the first part is meaningful,
* fix: getPageHolder would always return the first split, as they share the same index
* split pages have the same number, we need an extra check to know whether we move forward or back
* No title grid added to library and source
* Else added to display title in case image is null or empty
* No title grid renamed and now only available in library
* Spanish strings about cover only grid removed
Co-authored-by: micaelagimenez <micaela.gimenez@ext.prosegur.com>
* pan if the image is zoomed instead of navigating away
quickly display full landscape image before zooming to fit height in fit to screen
* add Tap to pan preference, defaults to true
add landscape zoom preference, defaults to false
* hide landscape image zoom option if scale is not fit screen
* fix landscape image zoom for first image and loading image
* properly reload pagerholders when landscape zoom option is changed
* enable landscape zoom by default
* added duplicate manga check
When adding a manga to your library, the app will go through each manga previously added and compare their names. If a match is detected, it will prompt the user and ask for confirmation. On this prompt there is also an option to view the other manga.
* added german translations for newly added strings
* Revert "added german translations for newly added strings"
This reverts commit 71ada620671651daeeb2546aecd02400a4bc86bc.
* changed `AlertDialog.Builder` to `MaterialAlertDialogBuilder`
* using SQL query instead of filtering entire library with Kotlin
* Reduce notifyDataSetChanged calls when category count is disabled
* Fix category tabs briefly showing when it's supposed to be disabled
Also fix tabs showing when activity recreated
* Lift appbar when tab is hidden
Check against tab visibility instead of viewpager
* Restore selected nav item after recreate
* Simplify SHORTCUT_MANGA intent handling
Don't need to change controller if the topmost controller is the target