636 Commits

Author SHA1 Message Date
arkon
279bddee29 Ensure EmptyScreen is scrollable
Also fix padding for loading/empty states in BrowseSourceScreen

(cherry picked from commit 1dd62af188b49586413ad41857be456c856c17dd)
2023-04-09 18:49:30 -04:00
Ivan Iskandar
4e1f74d24b AdaptiveSheet: Wrap inside Dialog (#9279)
Because of Compose issue, the style of the sheet surface is adjusted as
a workaround

Ref https://issuetracker.google.com/issues/246909281

(cherry picked from commit 6f1099b7103ab7838e999e787f4e81344978a091)
2023-04-09 18:49:22 -04:00
arkon
691d08ab6e Make pin source icon lighter
Closes #9274

(cherry picked from commit be8e2f119f1289f5a96cab4720c22ace6f0fb59e)
2023-04-09 18:49:11 -04:00
arkon
dde1bff9ff Use IO dispatcher for some screen model work
Not sure if this is an ideal approach. If it is, we could migrate more usages to this.

(cherry picked from commit 18f9e5ba6b080a74805db553e22f15412ddeab12)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
2023-04-09 18:49:02 -04:00
arkon
9ddd17496b Refactor away some unnecessary lambda expressions
(cherry picked from commit be54b8862e53af94f08549cbfae0afb2cc4c2f3e)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt
2023-04-09 18:46:06 -04:00
arkon
016ca790e0 Don't attempt to initialize manga details from BrowseSource or Search screens
This was effectively DDoSing sources as it does a request for every entry to get the details (primarily a cover image).
The expectation now is that users have to open individual entries to load the details/cover if needed.
This isn't necessary for most sources, which are able to provide covers as part of the listing normally.

(cherry picked from commit 1a61130f0b46addef036687b6c98f930e13147f8)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
2023-04-09 18:43:25 -04:00
stevenyomi
519abe90fc Simplify code in missing chapters warning (#9263)
(cherry picked from commit 0bcc22822d75e074e18387dc62b73ffa89c429d2)
2023-04-09 18:15:32 -04:00
arkon
77dc09ff21 Adjust missing chapters UI
(cherry picked from commit 1ff78173f71f838e57052557eb9e1c6fe3a402f1)
2023-04-09 18:15:24 -04:00
arkon
880b06dd3b Add "Rotate wide pages to fit" setting for paged reader
Originally authored in #7983

Co-authored-by: timothyng-164 <timothyng-164@users.noreply.github.com>
(cherry picked from commit 953720472fe64ef488ecae7ae7fea453b8c7c68b)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderReadingModeSettings.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerConfig.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt
#	app/src/main/res/layout/reader_pager_settings.xml
2023-04-09 18:14:48 -04:00
Felix Kaiser
be17682e3c Added missing chapters count in MangaInfoHeader (#9184)
* Added missing chapters count in MangaInfoHeader

* Added "Might be missing chapters"

* Added missing chapters to MangaAndSourceTitlesLarge function

* Removed comments

* Reworked getMissingChapters to countMissingChapters, moved -1 check

* Attempting detecting sub-chapters

* Moved MissingChapters to ChapterHeader; Adapted design to fit in

* Fixed block comment in one-line-element

* Fixed critical missing-chapter counting bug

* Undid unintentional & unnecessary changes

* Moved & refactored countMissingChapters

* Fixed import order; Mapping chapter object to chapterNumber

* Optimized "No (valid) chapters" detection

---------

Co-authored-by: arkon <arkon@users.noreply.github.com>
(cherry picked from commit f94d902bb6bca5eb37683f0be8e4c92f859fe2cf)
2023-04-09 18:11:10 -04:00
arkon
0382362390 Bump Compose dependencies
(cherry picked from commit da25322572f4994148a040f223b03787256cdcb6)
2023-04-09 18:11:03 -04:00
arkon
be388753a1 Rename Complications -> Overlay
(cherry picked from commit 2e5efadf424541d58eed79da13f0a9a1bc3c0e1f)
2023-04-09 18:10:38 -04:00
arkon
b483bd0729 Revert "Always attempt to split tall images when downloading"
This partially reverts commit 2769525b2c12547b8dc29b1209ea3bc5d22f1e3f.

Keeps the change to silently ignore spliting errors since it falls back to
the original images in those cases.

(cherry picked from commit ac0596a53d74561ad5174db1938c16049a65dd18)
2023-03-20 19:00:27 -04:00
arkon
2a708e8b68 Always attempt to split tall images when downloading
(cherry picked from commit 2769525b2c12547b8dc29b1209ea3bc5d22f1e3f)
2023-03-20 19:00:20 -04:00
arkon
3185ae78c6 Move isLocal extension functions to LocalSource
(cherry picked from commit 7ec5a51eb858c0f585bfe1a2662cf203495d40ef)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/source/interactor/GetEnabledSources.kt
2023-03-20 19:00:06 -04:00
arkon
42146b6d1e Misc cleanup
(cherry picked from commit 3cca4602829fd706c5b850bcf45d472ee95b2a38)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceExtensions.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderPreferences.kt
2023-03-20 18:57:43 -04:00
arkon
10c3d3b150 Clean up WorkManager usages a bit
(cherry picked from commit 859601a46e5d32cd14979177832edaf342615e19)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
2023-03-20 18:45:18 -04:00
arkon
15d52784f8 Convert BackupRestoreService to a WorkManager job
Co-authored-by: Jays2Kings <Jays2Kings@users.noreply.github.com>
(cherry picked from commit cdc160afc2e3bb615fe35c8d7261a3bc16f61996)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupRestorer.kt
2023-03-20 18:42:05 -04:00
Andreas
0f3bb9f7d7 Migrate things to use newer data models (#9239)
* Remove old database models from Coil

* Remove old database models from TrackInfoDialogHome

* Remove old database models from Backup Manager

(cherry picked from commit dfdb688b437c38954b1072b7a1df15921a437868)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupManga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/MangaImpl.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/model/SMangaExtensions.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
2023-03-20 18:27:59 -04:00
arkon
8d0c9969b0 Clean up library display settings tab a bit
(cherry picked from commit 843e748de3d8d4afff7b7b6baa47193e4138191f)
2023-03-20 18:02:15 -04:00
Ivan Iskandar
7e81fa6723 Adjust tab indicator visual (#9219)
Now behaves like the non-compose indicator by showing the swipe progress too

(cherry picked from commit 18e55aa25fe7ea63e66a99d1373fbdb449a358d7)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryTabs.kt
#	presentation-core/src/main/java/tachiyomi/presentation/core/components/material/Tabs.kt
2023-03-20 17:54:33 -04:00
Jobobby04
a92392231c Move some things to the domain module 2023-03-16 20:18:41 -04:00
Jobobby04
36381aca33 Refactor data saver 2023-03-15 18:18:14 -04:00
Wisest_wizard
ae712527f3
Use wsrv.nl service (#778)
* Add wsrv.nl datasaver service

* Add code comments
2023-03-15 17:44:57 -04:00
arkon
5269ad3b87 Refactor tracker status string mappings
Should fix #9195

(cherry picked from commit 47a2d066821d0f65680255f5ce6442fd0af55382)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/track/TrackManager.kt
2023-03-15 00:45:23 -04:00
Ivan Iskandar
98e4ca4804 Revert "Fix banners-related issues" (#9186)
Revert "Fix banners-related issues (#9143)"

This reverts commit 63048d2f0b57477aecb4fd91f1f8c20a66ec9e18.

(cherry picked from commit c0f94ae8afaacd218f05e72d1d30c9d15f1eb09e)
2023-03-15 00:25:07 -04:00
arkon
d71dbdd2f8 Remove download all chapters menu item
Users can still select all the chapters (long press + select all) to download them.

(cherry picked from commit 09acc534835d6aa664b037b54401a817ed44fb45)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
2023-03-15 00:24:22 -04:00
arkon
6fbf250796 Move more things to domain/data modules
(cherry picked from commit bebd4be43d73617de2cfbc1ff4289e81f535a8e6)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsGeneralScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/home/HomeScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	data/src/main/java/tachiyomi/data/source/EHentaiPagingSource.kt
#	data/src/main/java/tachiyomi/data/source/SourcePagingSource.kt
#	domain/build.gradle.kts
#	domain/src/main/java/tachiyomi/domain/category/interactor/SetDisplayModeForCategory.kt
#	domain/src/main/java/tachiyomi/domain/category/interactor/SetSortModeForCategory.kt
#	domain/src/main/java/tachiyomi/domain/history/interactor/GetHistoryByMangaId.kt
#	domain/src/main/java/tachiyomi/domain/library/service/LibraryPreferences.kt
2023-03-15 00:23:28 -04:00
arkon
f930f63670 Use stricter visibility for composables where possible
(cherry picked from commit 9b77759f2496ef98c10b7dd7cf385b7be75313ef)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryDialogs.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt
2023-03-14 23:50:25 -04:00
arkon
9b1f9c9635 Add dot beside unread chapter names
Closes #4261
Also includes changes that might help with #9043

(cherry picked from commit e458de5e9c845ac5a278aec397b7a0cdbd4f94ed)
2023-03-14 23:37:21 -04:00
arkon
bbb18319c2 Use Compose icons instead of drawables
Using:
- https://github.com/DevSrSouza/compose-icons
- https://github.com/DevSrSouza/compose-icons/blob/master/simple-icons/DOCUMENTATION.md

(cherry picked from commit e917349bb7e1fb37b5cf58a130a33d13e1872093)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/AboutScreen.kt
2023-03-14 23:36:39 -04:00
arkon
e4ad723606 Refactor SourceManager/StubSource to domain module
(cherry picked from commit ad4912803bda73e0f1d5e2e0246561a508e72fd7)

# Conflicts:
#	app/src/main/java/eu/kanade/data/source/SourceRepositoryImpl.kt
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/AndroidSourceManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/details/SourcePreferencesScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesScreenModel.kt
2023-03-14 23:35:34 -04:00
arkon
0c037cb89d Move some preferences into domain module
(cherry picked from commit f96f0c58890c0cdc7c2f8142c42db2dbc8fdcbb2)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/chapter/interactor/SetReadStatus.kt
#	app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
2023-03-14 23:14:51 -04:00
arkon
16a23f89a5 Add explicit overflow menu options to refresh library category and manga chapters list
Jetpack Compose treats mouse input differently than just mimicking a touch input, so dragging doesn't actually
invoke the pull to refresh. If that changes in the future, we could consider removing these.

Doesn't seem too necessary for the extensions list, so I skipped that.

Closes #8455

(cherry picked from commit f03a83413689923633c8ebe5634b34c566733961)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaToolbar.kt
2023-03-14 22:27:19 -04:00
arkon
899f0ae86f Minor refactoring
(cherry picked from commit 5b2e937d5fdeadc8a9a994b99b3f6b7a277f2513)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/source/model/SourcePagingSourceType.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
2023-03-14 22:23:54 -04:00
Andreas
b5b5dd0e81 Move Local Source to separate module (#9152)
* Move Local Source to separate module

* Review changes

(cherry picked from commit f27dc19b378f2f38ed2885f40d93f6d8817ef584)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/source/interactor/GetEnabledSources.kt
#	app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt
#	core/src/main/java/tachiyomi/core/util/system/ImageUtil.kt
#	source-local/src/main/java/tachiyomi/source/local/LocalSource.kt
2023-03-14 22:10:00 -04:00
arkon
2b96fa46ba Add menu shortcut to source settings in BrowseSourceScreen
Adapted from TachiyomiSY.

Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>
(cherry picked from commit 2368c50ebb7405a1b3978a6f2eb97b61e395b1af)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt
2023-03-14 21:33:13 -04:00
arkon
e9083fc571 Avoid crash in DeleteLibraryMangaDialog
No clue why it ever gets a -1 index though.

(cherry picked from commit b12c7cf9633a9fc3a728a0ef44b5d50d621a7595)
2023-03-14 21:28:15 -04:00
Ivan Iskandar
87788a49d7 Fix banners-related issues (#9143)
This is most likely Compose issue so these changes will
be reevaluated when new Compose ver is out.

(cherry picked from commit 63048d2f0b57477aecb4fd91f1f8c20a66ec9e18)
2023-03-14 21:26:29 -04:00
arkon
51f655e9d5 Migrate TriState usages to TriStateFilter enum
(cherry picked from commit 7ec87e76db55766e02c28eb732cf18ba4c413b18)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/domain/library/service/LibraryPreferences.kt
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceFilterDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
2023-03-14 21:19:56 -04:00
Ivan Iskandar
fd95de016d TrackDateSelectorScreen: Use M3 date picker (#9138)
(cherry picked from commit ec3ce74af8d6f16b58b368e78acf72f929f3f9e6)
2023-03-14 20:48:01 -04:00
arkon
314a740906 Migrate source filter sheet to Compose (#9135)
(cherry picked from commit 92132c59f5417ef81a7bbba6849be849282fc25e)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/components/SettingsItems.kt
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceFilterSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/filter/GroupItem.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/filter/SectionItems.kt
#	app/src/main/java/eu/kanade/tachiyomi/widget/SimpleNavigationView.kt
#	app/src/main/java/eu/kanade/tachiyomi/widget/listener/IgnoreFirstSpinnerListener.kt
#	app/src/main/res/drawable/empty_drawable_32dp.xml
#	app/src/main/res/drawable/ic_check_box_24dp.xml
#	app/src/main/res/drawable/ic_check_box_outline_blank_24dp.xml
#	app/src/main/res/drawable/ic_check_box_x_24dp.xml
#	app/src/main/res/layout/navigation_view_checkbox.xml
#	app/src/main/res/layout/navigation_view_checkedtext.xml
#	app/src/main/res/layout/navigation_view_group.xml
#	app/src/main/res/layout/navigation_view_radio.xml
#	app/src/main/res/layout/navigation_view_spinner.xml
#	app/src/main/res/layout/navigation_view_text.xml
#	app/src/main/res/layout/source_filter_sheet.xml
2023-03-14 20:38:57 -04:00
Ivan Iskandar
1a5bf9f763 Bump compose-bom version 2023.02.00-beta02 (#9137)
(cherry picked from commit 36ae3883323d2a141a562cf401da3475f5c7e222)
2023-03-05 19:53:15 -05:00
arkon
563063a6fd Fix per-category sort/display affecting the wrong category
(cherry picked from commit bd47eafeecc837f833a0c370372dd6d5edb62130)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsScreenModel.kt
2023-03-05 19:53:02 -05:00
arkon
654e894aee Bump dependencies
(cherry picked from commit 9432d2d06a817cc22fe147b0d3f33f156de09840)
2023-03-05 19:47:47 -05:00
arkon
61eb128f3b Move CheckboxState to core module
(cherry picked from commit fd7c993b0bfb897ea0770c91e4594367ae9c2316)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
2023-03-05 19:41:36 -05:00
Jobobby04
778c50753a Minor fix with grouping in library sheet 2023-03-05 19:02:39 -05:00
arkon
d2ccd2fd93 Fix height shift when scrolling through themes
(cherry picked from commit 0bd56ab77cb654f016f6ed6c52dd7afd7cd72836)
2023-03-05 18:59:01 -05:00
Ivan Iskandar
a57a813953 Use Compose Foundation's flow layout (#9123)
(cherry picked from commit 6b03dca5f47947a8fe1dd7989b19ff5d23030c2e)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
2023-03-05 18:58:44 -05:00
Ivan Iskandar
fe088b279e Add minLines to comfortable grid item title (#9122)
(cherry picked from commit bd7b21337ca9bee98877cae298784401a4a4e7b7)
2023-03-05 18:49:29 -05:00