183 Commits

Author SHA1 Message Date
Jobobby04
758cf63024 Fix play button showing when there are no unread chapters 2022-07-29 19:40:14 -04:00
Ivan Iskandar
b368a53670 MangaPresenter: Add distinctUntilChanged to db flow (#7629)
* 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
2022-07-29 09:11:02 -04:00
Jobobby04
bba4b991e8 Fix group by, filtering, sorting, and a few others 2022-07-28 21:44:30 -04:00
Andreas
ba631ac055 Add fast scroller to Library screen (#7600)
Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>

Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit 8bde35298f69ceb2c4ae40a8f05f0b8394894220)
2022-07-28 09:09:53 -04:00
Ivan Iskandar
b5120d0149 MangaScreen large UI tweaks (#7625)
* MangaScreen: Fix large UI column sizing behavior

* MangaInfoHeader: Adjust large UI cover sizing behavior

* BottomActionMenu: Change bg shape

(cherry picked from commit 3fe5e53b2546559a91b3373c7bd6329bae7634ab)
2022-07-28 09:09:44 -04:00
Andreas
ffc24b9d14 Wait for library to load before creating Pager (#7623)
(cherry picked from commit f8d8cf9f6a27c536ad3126de8d2d5de373248e04)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibraryScreen.kt
2022-07-28 09:09:04 -04:00
Andreas
1ab0d5cdc0 Use non nullable parameters in the MangaCover invoke function (#7624)
Issue cause the non nullables to become nullable has been fixed since 1.2.0-rc01

(cherry picked from commit 5bb1133f0f3a114d5ac06565abcdb965f8d1c28d)
2022-07-28 09:07:32 -04:00
Andreas
b3720cd241 Make Selection toolbar take precedence over search toolbar (#7611)
(cherry picked from commit 2b96709799c14372e11f6de50167fac642a7dbc4)
2022-07-26 10:59:57 -04:00
Ivan Iskandar
051a9f33df ChapterDownloadIndicator: Optimize further and reimplement error state (#7599)
In the context of a weaker device--remembering objects inside a list item
is expensive. So only do it when we really need to.

This also flattens the download button by drawing a single icon instead of using
separate icon and progress indicator.

(cherry picked from commit aeffb5eeb806be8530aec7707d9075e48a75c9e3)
2022-07-24 15:28:05 -04:00
Andreas
013f7ec4f2 Fix toolbar having bottom padding in portrait (#7601)
(cherry picked from commit 6f947775307296974b9a109578dd895d34179758)
2022-07-24 10:38:41 -04:00
Ivan Iskandar
e6ab9e3815 Fix unnecessary recompose when calling LazyListState.isScrolledToEnd (#7598)
(cherry picked from commit 2e15be59af23de2302d7ccebd7ccea31d4f98da3)
2022-07-24 10:38:31 -04:00
Andreas
dcf152b5c2 Tweaks on Library screen (#7597)
- Toolbar not having padding in landscape
- Fix library always refreshing everything even though user is refreshing category
- Tab text using primary color
- Fix Grid having to big of a top padding
- Fix Pager crashing when initial page is greater than the number of categories

(cherry picked from commit bc1f6ba5177735e76b2b42f7884edfbe8f30006e)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibraryScreen.kt
2022-07-24 10:38:24 -04:00
arkon
22b627ea8d Set splash screen ready state for history and updates pages
(cherry picked from commit cd9487f94cac610cdeb31dcd9139f6cc9dc7026c)
2022-07-24 00:20:51 -04:00
arkon
a39f2626d9 Fix padding in history screen
(cherry picked from commit 07c9af49012f13bf9a5790a130c4fbf501666b83)
2022-07-24 00:20:35 -04:00
Andreas
9520494ac5 Use Stable interface for History screen (#7586)
- Adds Stable interface
- Move last Dialog into Compose
- Make History screen be full Compose screen

(cherry picked from commit c751851941796ae7fa10f9dfba9b75396bbbf692)
2022-07-24 00:18:39 -04:00
Andreas
bc1eb0cb30 Cleanup Library after Compose changes (#7584)
(cherry picked from commit 9f2ddaadde0326fb0fcf1ce91a2affc7f4af42c2)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibraryScreen.kt
2022-07-24 00:18:26 -04:00
arkon
958fe527e4 Remove bottom nav behavior and add bottom padding to root controller contents
(cherry picked from commit 4bf4b167a54791d0f5a7710ebe15473b8de9dd5c)
2022-07-23 23:55:27 -04:00
Andreas
24c2aa1bfb Use Compose for Library screen (#7557)
- Move Pager to Compose
- Move AppBar to Compose
- Use Stable interface for state
- Use pills for no. of manga in category instead of (x)

(cherry picked from commit 2b8d1bcc02994e75e1479b037ef50eb84ae674d7)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryComfortableGrid.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryCompactGrid.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryCoverOnlyGrid.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-07-23 23:55:13 -04:00
Jobobby04
450aeb5a9d Somehow missed this 2022-07-20 11:37:56 -04:00
arkon
ac4befdb51 Migrate More screen to full Compose
(cherry picked from commit 4d9d587366018e6e794322e2a644712f241cda08)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/MoreScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/base/controller/ConductorExtensions.kt
2022-07-19 13:09:27 -04:00
arkon
bb11d056b5 Misc cleanup
- 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
2022-07-19 13:01:04 -04:00
Ivan Iskandar
2e3b172ba8 MangaScreen: Save selection state (#7560)
(cherry picked from commit 00519e3b933b66bb764f1f58f79fb781b0cb092a)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-07-19 12:48:04 -04:00
AntsyLich
f1d1f6c466 Migrate Updates screen to compose (#7534)
* 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
2022-07-19 12:37:26 -04:00
arkon
37bb6b27ce Migrate more screens to full Compose
(cherry picked from commit cbfe9c30bb2970ad911ce35cf1d14bc044225e30)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrationMangaController.kt
2022-07-16 22:11:30 -04:00
arkon
82b16be60f Fix tablet manga screen column ratios
Matches previous stable design. Related to #7401

(cherry picked from commit 3192d478371bd0c913020cd6262021f12b074827)
2022-07-16 20:48:44 -04:00
arkon
879999e69e Fix library column setting jumping in
(cherry picked from commit f6f5b6aeaba6825974f4b05d279fab54a2633d76)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryMangaEvent.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-07-16 20:48:18 -04:00
arkon
d145239d93 Migrate licenses screen to full Compose
(cherry picked from commit 1b2c12385feaa8bc7e32b724289323e5d3e9499e)
2022-07-16 20:39:54 -04:00
arkon
1e3f313ca2 Remove top app bar scroll behavior
This lets us make it more consistent with the Compose screens for now. Maybe it'll return in the future.

This also includes making the AboutController a full Compose controller with a new abstracted TopAppBar composable.

(cherry picked from commit 80c7a453286f296ae4d5d3531c805e63db9ca424)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryTopAppBar.kt
#	app/src/main/java/eu/kanade/presentation/more/about/AboutScreen.kt
2022-07-16 20:39:44 -04:00
arkon
97e9218f75 Consolidate badge components
(cherry picked from commit 2096df301d55ed446db21d0d2881e9d273674fae)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/MigrateSourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-07-16 20:30:16 -04:00
arkon
af83f81034 Tweak categories view
- Remove Compose top app bar behaviour since it's kind of jank -- we'll probably just remove the scrolling behaviour everywhere
- Tap title to rename
- Focus in textfield when opening dialogs

(cherry picked from commit 0b78028cf660e2f576ee30f8315b657eca1f39cd)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryDialogs.kt
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryTopAppBar.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryGridCover.kt
2022-07-16 20:28:56 -04:00
arkon
9b47b7f204 Minor library view cleanup
- Clean up unused code
- Add text shadow in compact mode
- Tweak some paddings to better match stable

(cherry picked from commit fa73e2403b79deca40590d8f4fa15f00a70e316e)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-07-16 20:13:04 -04:00
Andreas
b4adab5eb4 Use Compose for Library list and grid (#7520)
(cherry picked from commit 905c96922bc7059e99c4c7bd89775747d02028a9)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryCategoryAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryCategoryView.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryComfortableGridHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryCompactGridHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryItem.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryListHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySelectionEvent.kt
#	app/src/main/res/layout/library_category.xml
#	app/src/main/res/layout/library_grid_recycler.xml
#	app/src/main/res/layout/library_list_recycler.xml
2022-07-16 19:11:22 -04:00
Andreas
6df1a0f79e Use Stable interface for Browse screens (#7544)
(cherry picked from commit 018ca71336c893f64e0d0653b48b3d5f39b88d63)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionDetailsScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/MigrateSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/SourcesScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrateMangaPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrationSourcesController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesFilterPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesPresenter.kt
2022-07-16 17:45:36 -04:00
Andreas
41855c34de Add Stable interface for Category state (#7539)
(cherry picked from commit a21aa8125e63b9e0d4377aa9c97d6614ee4acf7f)
2022-07-16 17:21:09 -04:00
AntsyLich
8a3c9255e5 Fix extension setting isn't accesiable when it has update (#7537)
Closes #7516

(cherry picked from commit 83e193f1ab2798936aba59482ecab67600574583)
2022-07-16 16:48:03 -04:00
Jobobby04
67e190bffd Page previews for Exh/E-H and NH
- Still needs click image to open chapter
2022-07-16 16:45:27 -04:00
Jobobby04
4dda69ac40 Bring back merge manga sources string 2022-07-15 11:27:30 -04:00
AntsyLich
e6586dbc73 Use Material Icons for untrusted extension's icon (#7518)
(cherry picked from commit 386b8945c8380c63a4e8f935dfe6ef1baab4774b)
2022-07-13 09:57:39 -04:00
Ivan Iskandar
c77b69ed10 Fix scroll animation when system animation is disabled (#7509)
(cherry picked from commit ba93060e591fccf3c85995b50f496bc937ae8ae4)
2022-07-12 12:16:43 -04:00
Ivan Iskandar
dfa559d30f Fix MangaScreen app bar title and nav icon action (#7506)
(cherry picked from commit cbcab5a545369bc06933bdf4c9f2b6289df1f4ca)
2022-07-11 11:36:49 -04:00
Ivan Iskandar
d3b59768d4 MangaScreen: Improve chapter list scrolling performance (#7491)
* MangaScreen: Improve chapter list scrolling performance

Process chapter title, date and read progress string ahead of time

* Use enum for contentType and add key

(cherry picked from commit 1551891c15eb5d323cb1d425794876a753316091)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-07-11 11:31:04 -04:00
Ivan Iskandar
721238a858 ChapterDownloadIndicator: Fixes and improvements (#7485)
* Increased touch target
* Fix downloaded icon smaller than other states
* Deferred state reads to minimize recompose works
* Move things around to eliminate unnecessary elements

(cherry picked from commit e56f6c10177949c88e61d13e95b23545bef06641)
2022-07-11 11:08:59 -04:00
Ivan Iskandar
d5aecaad21 MangaScreen: Ditch the expanded app bar (#7470)
Animating the content padding that's used for the lazy list is heavy. A simple
fix to *just* offset the list is blocked by a Compose fling issue (b/179417109).

So I decided to go with the previous layout of this screen by putting everything
in the list. MangaInfoHeader is split into separate composables to avoid jank
when the item is being inflated.

(cherry picked from commit 34906a74253e7463ac23ea96496c59198884e0be)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaTopAppBar.kt
2022-07-11 11:08:41 -04:00
Andreas
4e29fd5b2a Use Compose for Category screen (#7454)
* Use Compose for Category screen

* Use correct string for CategoryRenameDialog title

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 86bacbe586bfe5567b1d52eb8d7b7f23724a17d5)

# Conflicts:
#	app/src/main/java/eu/kanade/data/category/CategoryRepositoryImpl.kt
#	app/src/main/java/eu/kanade/domain/category/interactor/InsertCategory.kt
#	app/src/main/java/eu/kanade/domain/category/repository/CategoryRepository.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/category/CategoryAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/category/CategoryHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/category/CategoryItem.kt
#	app/src/main/res/layout/categories_item.xml
2022-07-10 21:27:27 -04:00
Ivan Iskandar
2e881758aa VerticalFastScroller: Fix scroller consuming touch when it's invisible (#7484)
(cherry picked from commit 9385b86ecb92bd91e5ad65d0eed2580b6b4c6973)
2022-07-09 19:58:23 -04:00
AntsyLich
3cf809870b ChapterDownloadIndicator: Ensure uniform hit area (#7453)
(cherry picked from commit eef95cef336f805881b124dd2c5f465c3fd73bc6)
2022-07-08 21:53:08 -04:00
AntsyLich
5f55a0afbb Reimplement chapter download indicator longpress (#7412)
(cherry picked from commit deaded5af2da6645d7f320471d5f73c0ffed3edf)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadManager.kt
2022-07-02 13:44:14 -04:00
Ivan Iskandar
4854fcfccf MangaScreen: Hide scroller when appbar is expanded (#7426)
(cherry picked from commit 3072296919089546016de10c274de1a10b0b7234)
2022-07-02 13:42:48 -04:00
Ivan Iskandar
299ac1ca2d MangaScreen: Reuse components between two layouts (#7397)
(cherry picked from commit 388dc2f10301c8dd128b493ad876467fca1b38c3)
2022-07-02 13:03:00 -04:00
arkon
858c3b5a0a Bump dependencies
(cherry picked from commit 7e4c45858f6fd2309f8ca07e1e4c4798ab87b764)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
2022-07-02 13:02:29 -04:00