127 Commits

Author SHA1 Message Date
arkon
fd527afe5f Tweak library continue reading button
(cherry picked from commit c76d5dd30cbbaa5dafdd03a05e4ec7014e84484d)
2022-11-11 14:19:57 -05:00
Ivan Iskandar
7b1bc790b3 Full Compose MangaController (#8452)
* Full Compose MangaController

* unique key

* Use StateScreenModel

* dismiss

* rebase fix

* toShareIntent

(cherry picked from commit 18ccde082d5529766ad1297f9850752508805156)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/ChaptersSettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/track/TrackAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/track/TrackHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/track/TrackSearchAdapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/track/TrackSearchDialog.kt
#	app/src/main/res/layout/track_chapters_dialog.xml
#	app/src/main/res/layout/track_controller.xml
#	app/src/main/res/layout/track_item.xml
#	app/src/main/res/layout/track_score_dialog.xml
#	app/src/main/res/layout/track_search_dialog.xml
#	app/src/main/res/layout/track_search_item.xml
2022-11-11 13:55:01 -05:00
Ivan Iskandar
5b88385ccc Voyager on History tab (#8481)
(cherry picked from commit bc3bb82651e85a8b0584a645e0fa07ab97ab1767)
2022-11-11 11:07:53 -05:00
d-najd
1903453ce7 Add "Play" button on manga in library (#8218)
* resume manga button in libarary

* work on resume button

* Backup

* work on opening the last read chapter

* backup

* renaming

* fab instead of image

* done with logic

* cleanup

* cleanup

* import cleanup

* cleanup...

* refactoring

* fixing logic

* fixing scopes

* Reworking design

* adding ability to turn on/off the feature

* cleanup

* refactoring, fixing logic, adding filter logic (partial)

* backup

* backup

* logic done

* backup before merge fix

* merge conflict....

* merge conflict...

* reworking ui logic

* removing unnecessary file

* refactoring

* refactoring

* review changes + minor parameter position movement

* commiting suggestion

Co-authored-by: arkon <arkon@users.noreply.github.com>

* fixing minor mistake

* moving ChapterFilter.kt

Co-authored-by: arkon <arkon@users.noreply.github.com>
(cherry picked from commit ba00d9e5d2c00b9cf415932bb2821bf9914fe248)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/components/CommonMangaItem.kt
#	app/src/main/java/eu/kanade/presentation/library/LibraryScreen.kt
#	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/LibraryContent.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryPager.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/library/LibrarySettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
2022-11-11 11:07:42 -05:00
zbue
41f99fe3ec Perform haptic feedback where appropriate (#8378)
(cherry picked from commit 38c6702b8f88c4e9b0920804df769b86aafd336f)
2022-11-01 13:37:35 -04:00
AntsyLich
762f383fb6 Set softWrap to true again for Pill text (#8391)
(cherry picked from commit 8b0affe9bd15d05b0aad7033d0069d17fb478852)
2022-11-01 13:37:09 -04:00
zbue
ffa45ffea1 Disable ChapterHeader & ChapterDownloadIndicator click when in selection mode (#8350)
* Disable `ChapterHeader` click when in selection mode

* Disable `ChapterDownloadIndicator` click when in selection mode

* Review changes

* Merge remote-tracking branch 'origin/master' into patch-7

* Merge remote-tracking branch 'origin/master' into patch-7

* Revert back to old implementation

(cherry picked from commit 8dce7b3e9eee1ea3d4a279e2d2e4ea9d600279a8)
2022-11-01 13:36:28 -04:00
arkon
b2565c7f8b Clean up library download chapters logic
We can probably clean up the same logic in the manga controller at some point too, but that stuff's messy.
Also fixes the spacing issue that the new icon introduced.

(cherry picked from commit 33e90d64497f920be825b803e1342a2e6c937111)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-11-01 13:36:11 -04:00
Swords
dd08da26e8 Add different download options within the Library (#8267)
* feat: add download options to library

* feat: use max instead of min

* feat: remove download all option

* feat: applied requested changes + rename some functions

* feat: merge downloadAllUnreadChapters and downloadUnreadChapters into one function

* Apply suggestions from code review

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

* feat: apply lint suggestions + fix code

feat: apply lint suggestions + fix code

* feat: revert onClickDownload back to onDownloadClicked

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

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
2022-11-01 12:46:33 -04:00
arkon
f9b49aa7f6 Add warning about F-Droid build support in More screen
(cherry picked from commit 725fcbba0e45488c8553f2a5a88fbdfb2a63982c)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionDetailsScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/updater/AppUpdateChecker.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreController.kt
2022-11-01 12:24:45 -04:00
stevenyomi
e8e7ff55c0 Refactor search toolbar and fix browse source (#8360)
(cherry picked from commit a078f1ab1bd288d604edd8b8a21dcf2e88f47065)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
2022-11-01 12:17:26 -04:00
arkon
ad444ac761 Use Compose fast* functions in more places
(cherry picked from commit 86c3d8c06469245d061ddaaa86da5793f48e8787)
2022-11-01 12:07:09 -04:00
Ivan Iskandar
c505f31ad3 Tabs: Don't explicitly set text color in the text (#8365)
The container already provides color option for both states

(cherry picked from commit 156191af4454d756e51e331f67cba7e19efbbb38)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/components/Tabs.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryContent.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryTabs.kt
2022-11-01 12:06:58 -04:00
arkon
3be06eacaa Remove redundant preference composables
(cherry picked from commit dd1923fe88bbb1e7f838d560806598a4ba2174f8)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/components/Preferences.kt
2022-11-01 12:00:14 -04:00
arkon
81d9ac81ce Refactor overflow menus into a composable
(cherry picked from commit df773ee15c814e03267fdfcd81d4e12d38a3508b)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryToolbar.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaToolbar.kt
2022-11-01 11:43:19 -04:00
Ivan Iskandar
1256646e91 Rebase Scaffold fork (#8353)
This adds content window insets supports that will be passed to
all components used except top and bottom bar.

(cherry picked from commit 16f9fb2f40e0569c5c22de4a062cd890b4b64d4e)
2022-11-01 11:23:54 -04:00
arkon
b941c34c3f Use remember var delegates in more places
(cherry picked from commit 0849111247d28fa5a74abe6759c992097bfa7109)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryDialogs.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaToolbar.kt
2022-11-01 11:20:34 -04:00
Ivan Iskandar
257d45c598 New Pager implementation (#8323)
Minimal implementation using new Compose SnapFlingBehavior

(cherry picked from commit f9c25b350ed1eb5cb418e804a829f40ecfb0af2e)
2022-11-01 11:19:07 -04:00
stevenyomi
b2c4fc0ec5 Clean up strings and icons (#8326)
* Clean up strings and icons

* fix incorrect usages of label_more

* restore strings and reduce usage of android.R

* removing icon desc of FABs anyway as app's not for visual impaired users

(cherry picked from commit 4b60138d41ea33e5e4c3defb0dc626b599216f3f)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
#	app/src/main/java/eu/kanade/presentation/components/MangaBottomActionMenu.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
2022-10-29 18:57:56 -04:00
arkon
5e3c9fcf50 Make Compose DropdownMenu overlap the trigger
Closes #8329

(cherry picked from commit 69635ee66a9e7f230860bd72f1b4f85836258463)
2022-10-29 18:45:59 -04:00
arkon
e1f841e78a Use MaterialTheme.shapes in more places
(cherry picked from commit 401134fa8ed0e0134e166e2c5f78de09d744a553)
2022-10-29 18:24:09 -04:00
Ivan Iskandar
ab7d9006b2 Touch up manga grid/list items (#8307)
* Touch up library item touch indicator

Now the touch indicator has the same coverage as the selection indicator.
Experimental Modifier.Node API is used to draw the selection indicator

* Unify library and browse source list item layouts

(cherry picked from commit 87391832bafff1e9f90fdfe064725fe8d1ec0184)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceComfortableGrid.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceCompactGrid.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceList.kt
#	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/presentation/library/components/LibraryGridCover.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryPager.kt
2022-10-29 18:24:01 -04:00
AntsyLich
d0d689b1df Center the Text inside Pill (#8304)
(cherry picked from commit 37c55abc2ac464675c278bb9bc7abeced189b834)
2022-10-29 17:26:53 -04:00
arkon
6d46283aee Use kotlin.time extensions in some more places
(cherry picked from commit 5c868d784679b55e413366c5d4bdea75253bf8f4)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
2022-10-22 21:46:13 -04:00
stevenyomi
46fe5dfd4f Tweak tablet UI mode setting (#8262)
(cherry picked from commit d558f9e1d6bcc8eb8f69359e6e7516f7ea24a408)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
2022-10-22 20:47:54 -04:00
arkon
d0f3bd077c Avoid some IndexOutOfBoundsExceptions
(cherry picked from commit eb742b29f8b75eb900cf47f6178053dcf68f74bc)
2022-10-22 20:31:48 -04:00
Jobobby04
29790dd362 Limit tab lines 2022-10-22 19:37:15 -04:00
Ivan Iskandar
a2f6b90547 Settings: M3 and two pane ui (#8211)
* Settings: M3 and two pane ui

* TrackingLoginDialog: Move close button

* Use small top bar

* Revert "Update voyager to v1.0.0-rc02"

This reverts commit 570fec6ea622a7deae44668f4d9c3317699de2aa.

https://github.com/adrielcafe/voyager/issues/62
(cherry picked from commit 5c5468f9af74be984d0d9cb79da804370ee0e775)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsMainScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/widget/TextPreferenceWidget.kt
2022-10-16 22:39:58 -04:00
arkon
aebfef345b Center EmptyScreen message
Fixes #8212

(cherry picked from commit 27e52563051832ff1f71219df89c8f5e742925ec)
2022-10-16 22:01:11 -04:00
arkon
fb675a82cc Tweak source view type menu radio icon to match stable
(cherry picked from commit dbd93cf5d1f853988f408f5e45bb7a71e0d2f9ed)
2022-10-16 22:00:01 -04:00
arkon
b13a848121 Minor settings cleanup
- Fix dark mode setting title
- Enforce usages of translated strings for screen titles
- Use LocalUriHandler where applicable instead of Android context

(cherry picked from commit c2eaf1c86bff1ab9072f79dc3ee7b80df1480805)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAppearanceScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsSecurityScreen.kt
2022-10-16 21:59:50 -04:00
zbue
2903e0d98e BrowseSourceToolbar: Match display mode dropdown to stable and change toolbar icon based on display mode (#8200)
* BrowseSourceToolbar: Match display mode dropdown to stable and change toolbar icon based on display mode

* Review changes

* Review changes 2

(cherry picked from commit 3d7e44726d799294e808ce44fa1f0c8e5ff42e7a)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
2022-10-15 12:10:43 -04:00
stevenyomi
754df5babb Fix empty screen font style (#8197)
(cherry picked from commit 4e544005fed41d7f817bd6903d6cb03ad4df9f0b)
2022-10-15 12:09:33 -04:00
Ivan Iskandar
4e38cdfe80 Fix Scrollbar when the list contains sticky header (#8181)
* Fix Scrollbar when the list contains sticky header

* Fix VerticalFastScroller when the list contains sticky header

* exposé

(cherry picked from commit fba244423f451ef0b715702454ec242a5b73ec1b)
2022-10-15 12:09:28 -04:00
Ivan Iskandar
24593da484 EmptyScreen: Compose-ify and apply content padding (#8177)
* Apply content padding to empty screen

except the empty screens in browse

* compose-ify EmptyScreen

* center face when action show

* fix padding

* apply content padding to browse tabs

* fix duplicate bottom insets

(cherry picked from commit 8500add09f475093e4e861f42508496e0f1fd68c)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
#	app/src/main/java/eu/kanade/presentation/library/LibraryScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesTab.kt
#	app/src/main/res/layout/common_view_empty.xml
2022-10-15 12:09:26 -04:00
arkon
37a14cb392 Minor UI fixes
- Remove M3 styling from search toolbar
- Use secondary alpha for subtitles for Sources and Migrate items
- Update some content descriptions

(cherry picked from commit 23bfa1f18f615ba39be42f62cd7b337a6c51bc8e)
2022-10-15 12:09:26 -04:00
arkon
f50497290e Bring back overscroll in SwipeRefresh for A12+
It's more consistent with the rest of the overscroll behaviour in the app. We'll wait for the upstream fix.

(cherry picked from commit b4f2da12ea58b2f386f4d49356074c0a38351083)
2022-10-15 12:09:25 -04:00
arkon
da9877f91a Don't wrap tab pills
It may sometimes overlap the text a bit, but it's less awkward than wrapped pills

(cherry picked from commit b84a31ba9259ae1cd903bcec4f6339fc88d44831)
2022-10-15 12:09:24 -04:00
arkon
f71f9dbb93 Document copied M3 component customizations
(cherry picked from commit d0950cb02687ad99a1f7947b136419ee27ca5b7d)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryDialogs.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/database/components/ClearDatabaseDialogs.kt
2022-10-15 12:09:24 -04:00
stevenyomi
19f01c75ee Refactor SwipeRefresh and fix some issues (#8169)
(cherry picked from commit 404f53b16b59b3882069c5c8f3b20890a85ccd0d)
2022-10-15 12:09:23 -04:00
Ivan Iskandar
3596de1c44 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

(cherry picked from commit 4b4be58d0d2cac6636858d57119e0657b1b56f59)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryContent.kt
2022-10-08 18:42:46 -04:00
Ivan Iskandar
b9f1bfb9ff MoreScreen: Remove title (#8158)
* MoreScreen: Remove title

Also removes the state banners as it's redundant

* Add back banners

(cherry picked from commit cf6407c4d414a34949c3b97a451b14585db852df)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/MoreScreen.kt
2022-10-08 18:35:08 -04:00
Ivan Iskandar
4c3309177e MangaScreen: Adjust insets (#8097)
I should have done this when Scaffold was rebased

(cherry picked from commit 6b1d597d34f903fabfc65ac9cd6bd561fc38f505)
2022-10-01 18:02:24 -04:00
Alessandro Jean
d8e0344624 Improve search toolbar UX a little bit (#8102)
* Improve search toolbar UX a little.

* Fix wrong stringResource import.

* Revert `FocusRequester` change in favour of #8093.

(cherry picked from commit 5a37f2398a45949bb327a61210ab46d5207d09cb)
2022-10-01 18:02:18 -04:00
Ivan Iskandar
b1b05fa313 Fix missing focus when single TextField shown (#8098)
(cherry picked from commit f19c288bec5c441170ff4a959f9aaa5fb0e0aea7)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryDialogs.kt
2022-10-01 17:39:59 -04:00
arkon
27e494e8b7 Replace deprecated SmallTopAppBar
(cherry picked from commit 2d56ad1ad975b709c68609ac3486bf9aa0c5bedb)
2022-09-22 12:47:53 -04:00
arkon
6c3183af8d Minor cleanup/fixes
- Add FAB collapsing in clear database screen (fixes #7935)
- Don't allow multiline category names to be entered
- Consolidate Downloaded Only / Incognito Mode banner components
- Fix see-through migrate screen sticky header

(cherry picked from commit 83871fc013d6ab8b44d64cf8ff3ce2ef27d61946)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryDialogs.kt
2022-09-20 11:08:05 -04:00
arkon
81a4f16a34 Add some padding to tab indicators
(cherry picked from commit 19be0d68b6c560d0969b6c4e069f88ea380c95fd)
2022-09-11 19:47:31 -04:00
arkon
228f2c78d2 Bump dependencies + linting
(cherry picked from commit cd3cb72b65d2f5f6ec038eb319717e21e3a1731e)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
2022-09-11 19:32:45 -04:00
arkon
0c1ac913cb Reimplement extensions search
Not sure if I should abstract this out to per-tab though. Maybe when we need it...

(cherry picked from commit 21804bfc45b05c67fe6198cd0452cd67b05bc3e8)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowseController.kt
2022-09-03 19:50:22 -04:00