* Hiding the keyboard (#8157)
* Cleanup
* Adding log
* cleanup
* moving code to ViewExtensions.kt
* TrackDialog keyboard fix?
* moving code to ContextExtensions.kt
* MoreScreen: Remove title (#8158)
* MoreScreen: Remove title
Also removes the state banners as it's redundant
* Add back banners
* Allow manual selection of manga description instead of copying to clipboard
Closes#6548
Notably missing some "standard" options like "Select all" or "Share": https://issuetracker.google.com/issues/226648919
* Allow marking partially read chapters as unread
Closes#3777
* Tablet UI edge-to-edge tweaks (#8159)
* LibraryScreen: Tweak content padding application to draw under nav bar
* BrowseScreen: Tweak content padding application to draw under nav bar
Side note the tab content doesn't actually use its
scaffold (bottom) contentPadding so it's definitely will
be a headache in the future.
* Don't hardcode bottom nav padding
* removed unnecessary import
* refactoring code
* rewriting code
* cleanup?
* cleanup
Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
Co-authored-by: arkon <eugcheung94@gmail.com>
(cherry picked from commit 50f959e5f41fa5d4117e821fb82db761cfdcf33f)
* Add methods to get manga and chapter url
Some fork supports directly opening chapters with webview hence `getChapterUrl`
* Review Changes
* Add since to javadoc
(cherry picked from commit de23226591376e998e4ff1ff7b2d4c2a0a805b09)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
* Tweak behavior on Browse screen
- Fix system back popping controller
- Add behavior to system back to cancel search toolbar before clearing current search or popping controller
* Review changes
(cherry picked from commit 6ac17363ed68487b2262308ee9d671ad301f2754)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
- Move loading state into scaffold (closes#7704)
- Move logic into presenter
- Make some composables private
(cherry picked from commit 0e3176a77c925bb7f9d9f87bf68476563f9b9e9e)
* Use 1.x preference abstraction
- Uses SharedPreferences compared to 1.x impl which uses DataStore but it breaks all settings screens currently
- Move PreferencesHelper to new PreferenceStore
- PreferencesHelper should be split into smaller preference stores and be in core or domain
- Remove flow preferences as new PreferenceStore handles changes for us
Co-authored-by: inorichi <3521738+inorichi@users.noreply.github.com>
* Fix PreferenceMutableState not updating
* Fix changes not emitting on first subscription
Co-authored-by: inorichi <3521738+inorichi@users.noreply.github.com>
(cherry picked from commit 0086743a5311c22fb8c07f596ab5de384862a68a)
# Conflicts:
# app/src/main/java/eu/kanade/domain/source/interactor/GetEnabledSources.kt
# app/src/main/java/eu/kanade/tachiyomi/App.kt
# app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
# app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateNotifier.kt
# app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
# core/src/main/java/eu/kanade/tachiyomi/network/NetworkHelper.kt
* Lessen the use of GlobalScope `launchIO`
* Wrap some calls with `NonCancellable` context
(cherry picked from commit da95ecb6869314f35eb73c6d9245b4e0d127f22d)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
- Allow large decrements (just goes to 0)
- Use Material3 text field for proper theming
- Move dialog composable to presentation package
(cherry picked from commit 03b9950fa15974f1a599a96c26177a612bed5c9d)
# Conflicts:
# app/src/main/java/eu/kanade/presentation/more/settings/database/components/ClearDatabaseDialogs.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
* Move a few Dialogs to Compose
- Separating dialogs that are not needed in the PR for the move to Compose on the Browse Source screen
- ChangeMangaCategoriesDialog and AddDuplicateMangaDialog will be removed in the Browse Source screen PR
* Review changes
(cherry picked from commit 2453d1a8861d61b03dce398fad169e556551b400)
# Conflicts:
# app/src/main/java/eu/kanade/presentation/library/LibraryState.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
* Change return value of `SyncChaptersWithSource.await()`
`updatedToAdd.subtract(reAdded).toList()` never worked as at this point `updatedToAdd` contained ids from db where `reAdded` had default one. Was the same case before the rewrite.
Removed `toDelete` from return value as it was not being used anywhere
* Add doc string
* Use HashSet
Co-authored-by: stevenyomi <95685115+stevenyomi@users.noreply.github.com>
Co-authored-by: stevenyomi <95685115+stevenyomi@users.noreply.github.com>
(cherry picked from commit 11f640cfee427b8912cdc43fc3efc61e0f774aa7)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
* Fix back handling when manga is still loading
* MangaPresenter: Show what we have earlier to reduce percepted slowness
(cherry picked from commit b4e15263db3d00326abe5886fffb3608c9a85c47)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
Also remove some usages of runBlocking
(cherry picked from commit 3bc6b1e202f8344356720467c60da19239e22ebc)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/more/AboutController.kt
* MangaScreen: Disable swipe refresh on action mode
* MangaPresenter: Add distinctUntilChanged to db flow
Now will only emit update when the related entry is changed
(cherry picked from commit 483b204fb5b6790fb6fe59ffd80345cd484ca241)
# Conflicts:
# app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
- Migrate sources filter screen to full compose
- Use standard "OK"/"Cancel" actions for delete category dialog
- Abstract some AppBar logic
- Remove some dead code
- Group related strings
(cherry picked from commit e2510c144ad3568caf81660d6ab1b4023202aad4)
# Conflicts:
# app/src/main/java/eu/kanade/presentation/browse/SourcesFilterScreen.kt
# app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
* Migrate Updates screen to compose
* Review Changes + Cleanup
Remove more unused stuff and show confirmation dialog when mass deleting chapters
* Review Changes 2 + Rebase
(cherry picked from commit d8fb6b893fd9ae6aab3b4762837ebce496a214b3)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/recent/updates/UpdatesPresenter.kt
# app/src/main/sqldelight/migrations/18.sqm
When manga screen takes time to load incognito and downloaded only label doesn't show up. It's fixed in the pr.
(cherry picked from commit b034f503f8ce9327187c2024b7ee74779f397bb8)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt