77 Commits

Author SHA1 Message Date
arkon
da69f7876d Fix missing downloaded only/incognito banners in Browse
(cherry picked from commit bbf5c86b4699703048fb95f4c7922a9c147e164d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowseController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowsePresenter.kt
2022-09-03 19:45:38 -04:00
Ivan Iskandar
c7cece3393 Rebase Scaffold fork (#7929)
This changes content insets handling

(cherry picked from commit 3fa68ed2171ae930f8d5070123483e2e6c4cfb4c)
2022-09-03 19:44:07 -04:00
Andreas
e009398c0f Resolve review comments for BrowseSourceScreens (#7912)
(cherry picked from commit 2f26982e346d65de82d0809d7262a17f737d9eb2)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseLatestScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseLatestToolbar.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/latest/LatestUpdatesController.kt
2022-09-03 18:27:33 -04:00
arkon
241517a13a Make top app bar lift behavior more consistent
(cherry picked from commit 504844a892635fe9554a3eb907ad328b94ffab29)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseLatestScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseLatestToolbar.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
2022-09-03 18:10:38 -04:00
arkon
9318b0d803 Minor cleanup
(cherry picked from commit c39a1b7867976bddc85d3bfbffeeb717b8bf4501)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowseController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrateSourcesTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesTab.kt
2022-09-03 17:53:12 -04:00
Andreas
16ea8aa3b7 Use Compose on BrowseSourceScreens (#7901)
(cherry picked from commit d4b764fa317ddcb04b8fefb982cd6b9a6dfc1598)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryGridCover.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/Pager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceComfortableGridHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceCompactGridHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceItem.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceListHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/latest/LatestUpdatesController.kt
#	app/src/main/res/layout/source_comfortable_grid_item.xml
#	app/src/main/res/layout/source_compact_grid_item.xml
#	app/src/main/res/menu/source_browse.xml
2022-09-03 17:41:24 -04:00
arkon
8c182df784 Initial conversion of browse tabs to full Compose
TODO:
- Global search should launch a controller with the search textfield focused. This is pending a Compose rewrite of that screen.
- Better migrate sort UI
- Extensions search

(cherry picked from commit 92e83f702c775d5ab5a0b4248995308155150811)

# Conflicts:
#	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/presentation/library/components/LibraryTabs.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowseController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrationSourcesController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesPresenter.kt
2022-08-31 18:55:00 -04:00
arkon
588d11c14f Convert settings main and search views to full Compose
(cherry picked from commit f5c7aa1142eec366092722d6301af939f19ae970)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryToolbar.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/base/controller/ComposeController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsMainController.kt
2022-08-29 19:01:59 -04:00
Andreas
d2199b81ec Fix overflow in ChangeCategoryDialog (#7883)
(cherry picked from commit be7108a2ee341d9f8f16d5489bb6a5a63195264f)
2022-08-28 13:15:29 -04:00
Andreas
4ae581f6c9 Fix issue with removing categories from manga for ChangeCategoryDialog (#7874)
(cherry picked from commit 9c49a5ed22e9c501cea7d8020b90f9dd11ca4ee5)
2022-08-27 20:50:44 -04:00
arkon
bda100f574 Fix checkbox selection when tapping text in Compose dialogs
(cherry picked from commit cd82c88b9aa8f344d8ee9938eeae8a6293d5f231)
2022-08-27 20:50:25 -04:00
Ivan Iskandar
66cb3c03b8 Bump Compose M3 to 1.0.0-beta01 (#7867)
(cherry picked from commit 655fa25b511a423bc17f1f88282150e335df0cd9)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryToolbar.kt
2022-08-27 20:39:09 -04:00
arkon
655c0d8c90 Minor tweaks to download custom dialog
- 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
2022-08-27 20:09:09 -04:00
Andreas
5baf87edd0 Move a few Dialogs to Compose (#7861)
* 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
2022-08-27 20:03:05 -04:00
Andreas
ec210de6c5 Fix emoji going crazy and fix tabs being visible when library is empty (#7811)
fixes #7792
fixes #7791

(cherry picked from commit 47b56644dee9a097cfce384ca030ddb75ddadfe5)
2022-08-19 19:51:28 -04:00
arkon
c0db682476 Minor fixes
- Fix categories modal showing when adding from source with no categories
- Use old categories icon in library bottom action menu

(cherry picked from commit 688cc64dffa8cdf1241d3b4e2467b5e8c8529800)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/components/MangaBottomActionMenu.kt
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
2022-08-06 18:25:28 -04:00
arkon
b0fc4dd6d4 Make screen loading indicators more consistent
(cherry picked from commit 5e68fe4fe92dfe281662fce84195288c743f5cb7)
2022-08-06 17:49:22 -04:00
Ivan Iskandar
353eef34b5 Add scroll overlay to LibraryToolbar (#7669)
Works when category tab is not shown

(cherry picked from commit afceac15c89f274d571dcb61da18c6273a550f65)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibraryScreen.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryToolbar.kt
2022-08-05 13:06:42 -04:00
Ivan Iskandar
8aa313378f Reimplement appbar color overlay on scroll (#7663)
only on updates and history screen for now, but the required changes on app bar
is there.

also fix missing incognito-downloaded mode indicator on history screen

(cherry picked from commit 737cf9898db0f3e89752b82753c7fe2a88d7fef9)
2022-08-05 13:04:08 -04:00
Ivan Iskandar
758cc4fad4 Library category page performance fixes (#7650)
* Don't compose category page unnecessarily

* Remove unnecessary library pager recompose

Defer and remember the "currentPage" state read since it's only needed when the
pager is composed for the first time.

* Badge opts

* Sync text style with previous impl

Also avoid reallocating by using copy

(cherry picked from commit d49ec41f3a68574601d5d773382045fdbc6624d8)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryGridCover.kt
2022-07-30 12:12:28 -04:00
arkon
1209419e83 Bump dependencies
(cherry picked from commit f90e1b935cf2714025facb5d08aa52e9d827e74b)
2022-07-30 09:12:54 -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
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
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
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
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
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
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
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
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
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
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
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
Ivan Iskandar
4eb45d0ade VerticalFastScroller: Fix incorrect touch target (#7384)
(cherry picked from commit 9ff6ae81bdcb7ce8d1a180f86fad8870324bcf1e)
2022-06-26 13:55:29 -04:00
arkon
24252c388a Fix manga info header using wrong text color (fixes #7368)
(cherry picked from commit 37fe25ac06ff58d9d91f619bfb13cd516b369a90)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
2022-06-26 11:26:31 -04:00
arkon
ec0f572a82 Minor cleanup
- Use outlined icons where appropriate to match previous UI
- Allow tapping entire ChapterHeader to bring up sheet

(cherry picked from commit 8ec91cddab1b77baa631500d6878e60df8c8d13d)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaSmallAppBar.kt
2022-06-25 17:13:34 -04:00
Ivan Iskandar
2b7aca710e MangaController overhaul (#7244)
(cherry picked from commit 33a778873af0eb52528a29f741fa59b530679c64)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/LibraryManga.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChapterHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersSettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoHeaderAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/widget/MangaSummaryView.kt
#	app/src/main/res/layout-sw720dp/manga_info_header.xml
#	app/src/main/res/layout/manga_controller.xml
#	app/src/main/res/layout/manga_info_header.xml
#	app/src/main/res/layout/manga_summary.xml
#	app/src/main/res/menu/manga.xml
2022-06-25 17:11:25 -04:00
Ivan Iskandar
dfe32071e2 ChapterDownloadView: Convert to compose (#7354)
(cherry picked from commit a77bce7b3735811002be3e80b95dae892029d0f5)
2022-06-25 11:34:47 -04:00
Ivan Iskandar
21e03616ba Convert cover dialog view to compose (#7346)
(cherry picked from commit 8fedd2d5f13e56115bdf46a9a38e0ae750681488)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaFullCoverDialog.kt
2022-06-25 11:22:39 -04:00
arkon
a9227a13e1 Minor composable updates
Extracted from #7244

Co-authored-by: ivaniskandar <ivaniskandar@users.noreply.github.com>
(cherry picked from commit 68c47a323879a794c9fc87903233fd418fe2edab)
2022-06-19 21:36:21 -04:00
arkon
bcb0a24a4f Add Composable preview for preferences
...except Android Studio refuses to actually render them.

(cherry picked from commit 11f1482818d70e6b00bcfd267ab70418e3350e83)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/components/Preferences.kt
2022-06-19 21:36:06 -04:00