Commit graph

1017 commits

Author SHA1 Message Date
Ivan Iskandar
8a68bfc2ce Migrate XML themes to Compose (#10152)
(cherry picked from commit 255ed50685845e1a43ee4b86cdfd2484942b1368)
2023-12-23 22:42:42 -05:00
Jobobby04
16d433973c Finish migration to moko resources 2023-12-23 22:40:54 -05:00
arkon
82098460ff Replace remaining Android-specific strings
Also renaming the helper composables so it's a bit easier to find/replace everything
in forks.

(cherry picked from commit 0d1bced1226878336f8156671ae0c224c02f2604)

# 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/SourcesScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryDialogs.kt
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaBottomActionMenu.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaDialogs.kt
#	app/src/main/java/eu/kanade/presentation/more/MoreScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBrowseScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsMainScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsSecurityScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/about/AboutScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/advanced/ClearDatabaseScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/data/CreateBackupScreen.kt
#	app/src/main/java/eu/kanade/presentation/reader/ReaderPageActionsDialog.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/BottomReaderBar.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/presentation/reader/components/ChapterNavigator.kt
#	app/src/main/java/eu/kanade/presentation/reader/settings/GeneralSettingsPage.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateNotifier.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowseTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrateSourceTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesTab.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/SourceFilterDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/history/HistoryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/stats/StatsScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesTab.kt
2023-12-23 20:31:05 -05:00
arkon
1eccf9fad8 Migrate to multiplatform string resources (#10147)
* Migrate to multiplatform string resources

* Move plurals translations into separate files

* Fix lint check on generated files

(cherry picked from commit 46e734fc8eefb8c06a880194e702559ca3fa769d)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	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/SourcesScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceDialogs.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryDialogs.kt
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaBottomActionMenu.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaDialogs.kt
#	app/src/main/java/eu/kanade/presentation/more/MoreScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBrowseScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsMainScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsSecurityScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/about/AboutScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/advanced/ClearDatabaseScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/data/CreateBackupScreen.kt
#	app/src/main/java/eu/kanade/presentation/reader/ReaderPageActionsDialog.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/BottomReaderBar.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/presentation/reader/components/ChapterNavigator.kt
#	app/src/main/java/eu/kanade/presentation/reader/settings/GeneralSettingsPage.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateNotifier.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowseTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/MigrationFlags.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrateMangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrateSourceTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesTab.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/SourceFilterDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/history/HistoryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderPreferences.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/stats/StatsScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesTab.kt
#	build.gradle.kts
#	i18n/build.gradle.kts
#	i18n/src/commonMain/resources/MR/base/strings_sy.xml
#	i18n/src/commonMain/resources/MR/fr/strings_sy.xml
#	i18n/src/commonMain/resources/MR/in/strings_sy.xml
#	i18n/src/commonMain/resources/MR/pt-rBR/strings_sy.xml
#	i18n/src/commonMain/resources/MR/ru/strings_sy.xml
#	i18n/src/commonMain/resources/MR/zh-rCN/strings_sy.xml
#	i18n/src/commonMain/resources/MR/zh-rTW/strings_sy.xml
2023-12-23 20:28:29 -05:00
Ivan Iskandar
adfaa75ae9 Remove animateItemPlacement modifier usage (#10146)
(cherry picked from commit 69aa13bc5655813f1366b2020343091c8d2da009)
2023-12-23 19:25:53 -05:00
Jobobby04
8effc7eb05 Fix build 2023-12-23 19:25:12 -05:00
arkon
91d45cc8b9 Address more Compose lint warnings
(cherry picked from commit 2c032ff70d607f0e0197091e53763491775a0ab3)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/MigrateSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryToolbar.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaToolbar.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsMainScreen.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowseTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrateSourceTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesTab.kt
2023-12-23 19:24:57 -05:00
arkon
adb53a9a45 Migrate to standard M3 TabIndicator
(cherry picked from commit 0af4703b78007b117a233c03b9f5e9be2b8e3ab0)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryTabs.kt
2023-12-23 18:59:15 -05:00
Ivan Iskandar
4660e2cf8f Migrate deprecated tooltip components (#10141)
(cherry picked from commit f9fb034330d6e5c4f0cf9232649aa9a548e9e443)
2023-12-23 18:58:06 -05:00
arkon
25b496ae14 Bump dependencies
(cherry picked from commit 6eb5a25ea1eb8d20b6532013d6562a38c0efbf8b)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryTabs.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchScreen.kt
2023-12-23 18:57:50 -05:00
arkon
5dd041d470 Use immutable collections in more places
(cherry picked from commit 336221a972187c8e35d733d2f9d1d1a99e7b6f1b)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/SourcesScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesScreenModel.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/updates/UpdatesScreenModel.kt
2023-12-23 18:54:37 -05:00
arkon
5d565f436f Minor cleanup
(cherry picked from commit 4a6571d310ecf2bf77e86a303f1788aaaab3df25)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/di/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceExtensions.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/model/SMangaExtensions.kt
2023-12-23 18:36:30 -05:00
Jobobby04
19746904e1 Some linting 2023-12-23 18:23:58 -05:00
arkon
9ab01ec20c Add Compose lint checks
Still need to address most of them though.

(cherry picked from commit cb67f1de526e6120db363f67035966f365467912)

# Conflicts:
#	presentation-core/src/main/java/tachiyomi/presentation/core/components/CollapsibleBox.kt
2023-12-23 18:13:09 -05:00
Jobobby04
86837a6c47 Hopefully fix crash with page previews 2023-12-23 18:11:43 -05:00
arkon
28b980641c Convert create backup dialog to a screen
Allows us more flexibility in adding more options/explanations in the future.

(cherry picked from commit 00b2853d3daaa49a2b3bcada1596e094e8da5156)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupConst.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupCreator.kt
2023-12-23 17:51:38 -05:00
AntsyLich
8434d36498 ScanlatorFilterDialog: Fix crash when no scanlator (#10111)
(cherry picked from commit d7442d771b92b4d1b1c0c762ea6473cb58ece544)
2023-12-23 17:43:18 -05:00
arkon
07af2920ff Group mode dialogs together in bottom reader bar
(cherry picked from commit 3a8aa3e8cd7b725ee73b7fe67d0b1c3111af977b)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/reader/appbars/BottomReaderBar.kt
2023-12-23 17:42:51 -05:00
arkon
4687f81c42 Add separate default/apply buttons to reading mode/orientation selection dialogs
Related to #3453

(cherry picked from commit 9e67abcc8a1e7ca90c0a92acc563e998a7a99886)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
2023-12-23 17:41:21 -05:00
AntsyLich
c8909961c0 Implement scanlator filter (#8803)
* Implement scanlator filter

* Visual improvement to scanlator filter dialog

* Review changes + Bug fixes

Backup not containing filtered chapters and similar issue fix

* Review Changes + Fix SQL query

* Lint mamma mia

(cherry picked from commit b97aa235480e35b5514b7b1489b9d4413cea66d9)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/presentation/manga/ChapterSettingsDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.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/chapter/ChapterRepositoryImpl.kt
#	data/src/main/sqldelight/tachiyomi/migrations/23.sqm
#	data/src/main/sqldelight/tachiyomi/migrations/26.sqm
#	domain/src/main/java/tachiyomi/domain/history/interactor/GetNextChapters.kt
2023-12-23 17:38:22 -05:00
arkon
94fa45597d Replace custom preview annotation
(cherry picked from commit e6ca54fd04668fde5ae12429101a13dc1f03b99e)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/widget/TextPreferenceWidget.kt
#	app/src/main/java/eu/kanade/presentation/reader/PageIndicatorText.kt
2023-11-05 17:38:54 -05:00
arkon
e7aa8c31f1 Clean up reading mode / orientation enum classes
Categorizing the reading modes so we can implement a better
selection UI.

(cherry picked from commit 4502902fb0df21f637c905dc5c4c36625dedc710)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/BottomReaderBar.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
2023-11-05 17:36:37 -05:00
Ivan Iskandar
44bda0a611 MangaScreen: Adjust "missing chapter count" item list styling (#10105)
Text style to labelMedium and set secondary alpha to the whole row

(cherry picked from commit 5f34539525f93a92ca80f3b1fb9e71953b6758a1)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
2023-11-05 17:29:37 -05:00
arkon
d9a6a7be50 Restrict line length with ktlint
(cherry picked from commit 1d144e67678a99ec7198e5efcb1410b5da4bc42e)

# Conflicts:
#	.editorconfig
#	app/src/main/java/eu/kanade/domain/chapter/model/ChapterFilter.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
#	source-local/src/androidMain/kotlin/tachiyomi/source/local/LocalSource.kt
2023-11-05 17:28:46 -05:00
arkon
bd165456ae Show EOL message if update check no-ops due to unsupported Android version
(cherry picked from commit 3a15c6b8438d1a740af0d6ffdec72347eec8cb83)
2023-11-05 16:54:23 -05:00
arkon
aaea2b1720 Ensure page indicator texts are centered
Maybe fixes #9976

(cherry picked from commit 4146c4c31d069ce9fb7ab36d72f1f8fa2be1e050)
2023-11-05 16:53:18 -05:00
arkon
f3fc4c7be1 Revert "Always save pages/covers in subfolders"
This reverts commit 8568d5d6c3ceae0084a350906b330f23dab571e1.

Closes #10052

(cherry picked from commit 4b225a4ff155dc019cf4db00b59d449e0db521ab)
2023-11-05 16:52:57 -05:00
Ota
8496856941 New alphabetical chapter sort (#10073)
* added alphabetical chapter sorting

* Deleted sort_by_alphabet and re-utilized action_sort_alpha

* Accidentally deleted wrong string. Now solved

* Accidentally deleted wrong string. Now solved

Deleted sort_by_source instead of sort_by_alphabet in strings.xml.
Now reverted.

* Alphabetical sorting now uses Collator

* Clean up repeated Collator instances

---------

Co-authored-by: arkon <eugcheung94@gmail.com>
(cherry picked from commit f30ab56fd0a2a748f84dd698874cb16d7a61bd62)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
2023-11-05 16:52:23 -05:00
Caleb Morris
e14cc134a0 Added library sort by mean Tracker score (#10005)
(cherry picked from commit 5d91b77c9340604436c63073c83ad8b37794ddf0)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	domain/src/main/java/tachiyomi/domain/library/model/LibrarySortMode.kt
#	domain/src/main/java/tachiyomi/domain/track/interactor/GetTracksPerManga.kt
2023-11-05 16:51:09 -05:00
AntsyLich
35d8c75aa0 Show missing chapter count between two chapters in chapter list (#10096)
* Show missing chapter count between two chapters in chapter list

Closes #8460

* Fix crash

* Lint

* Review changes

* Lint

(cherry picked from commit 6d538db5f2afc45976a65ae5d202a490d2e08352)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/chapter/model/ChapterFilter.kt
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/util/chapter/ChapterGetNextUnread.kt
2023-11-05 16:38:06 -05:00
Eshlender
aa2afd1402 Text on tabs Overflow Ellipsis (#10095)
* Update TabbedDialog to TabbedScreen

* clean

(cherry picked from commit b3d7c9247530c0522033b4a9130d252bcbf50163)

# Conflicts:
#	presentation-core/src/main/java/tachiyomi/presentation/core/components/material/Tabs.kt
2023-11-05 16:30:02 -05:00
Eshlender
3dd8aeafe5 Combining manga information into a function (#10093)
* Combining manga information into a function

* clean space

* indexes

* context

* clean

* textAlign for Tablet Mode

(cherry picked from commit d862d83511d6bc7dee53609bcac77c20b01bc795)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
2023-11-05 16:29:34 -05:00
arkon
6eac922cbf Use same icon as chapter list items to indicate downloaded chapter in reader transitions
(cherry picked from commit 2ee895ee3c09004666652181fedd653f4aeeb90f)
2023-11-05 16:28:31 -05:00
arkon
cde00282c1 Add basic storage usage info to "Data and storage" settings screen
(cherry picked from commit cb8ea5eab0ec68ea02e8dc98c0a52771c460d5ab)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
2023-11-05 16:28:14 -05:00
Luqman
674d95b783
Shorter Chapter List in Reader (#955) 2023-10-29 18:13:25 -04:00
AntsyLich
8fc04d8cc6
pain (#968) 2023-10-29 18:12:04 -04:00
arkon
23d683133b Record time when last automatic backup was created
Closes #3474

(cherry picked from commit 1aa5222c99f50543c47d5f3bd4bb892e16e31efb)
2023-10-29 13:52:59 -04:00
arkon
32c98b9c50 Abstract out library last updated timespan text
So we can reuse it for showing last automatic backup time.

(cherry picked from commit 298c49f3ab7000ed0457aa177bba9a98072b1339)
2023-10-29 13:52:45 -04:00
arkon
dfb3e2da8e Clean up chapter restoring logic a bit
(cherry picked from commit ce5e10be955d8166f53de8118f8f12e76546b5ea)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	domain/src/main/java/tachiyomi/domain/history/interactor/GetNextChapters.kt
2023-10-29 13:52:28 -04:00
arkon
5f7d56b6d2 Try to ensure that reader page error message is removed if image is loaded
Maybe fixes #5687

(cherry picked from commit 4868dd2d03214d0b1307cb42abd3e0a4cb5e85c6)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt
2023-10-29 12:58:07 -04:00
arkon
ee212460b3 Add option to flash white screen on page change in reader for e-ink displays
Closes #2123

(cherry picked from commit 443d56f69bc1df515ed2edcd5b2936ed8710fb71)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/presentation/reader/settings/GeneralSettingsPage.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
2023-10-29 12:57:02 -04:00
Eshlender
6fa77fe894 Add icons for author and artist in MangaInfoHeader (#10079)
* Mark author and artist

* overall style

* Clean up spacing

---------

Co-authored-by: arkon <eugcheung94@gmail.com>
(cherry picked from commit 7457a18aee15ce7b2afd01fc5bc33f08baa2f6f1)
2023-10-29 12:55:34 -04:00
arkon
80a07631bf Add ability to reset chapter flags to defaults
Closes #10063

(cherry picked from commit 118d3b7fcc5cf8a27e52ff690cb3ecd28860c10c)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/ChapterSettingsDialog.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	data/src/main/sqldelight/tachiyomi/data/mangas.sq
2023-10-29 12:55:08 -04:00
arkon
20352e3f10 Rename "Backup and restore" settings screen to "Data and storage"
We can house more things in here in the future, like:
- A unified storage location setting (with scoped storage)
- Sync
- Disk usage info

(cherry picked from commit c46c39d4aea887503838cc832822047f3a41018a)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
2023-10-29 12:46:31 -04:00
arkon
fd02759a56 Handle reader app bar insets in Compose
(cherry picked from commit 8057f067b964835897a2365cee0307cfdc1472f6)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
2023-10-29 12:41:16 -04:00
arkon
7ccb8eaaf2 Avoid opening blobs as webpages
Fixes #10060

(cherry picked from commit 548f7f415a28529522f5aef0d53546e8bc68957e)
2023-10-29 12:37:45 -04:00
arkon
d949e738f0 Migrate reader low brightness overlay to Compose
(cherry picked from commit d9c0b1ce7d1739da3945622f2d18b171a471fc2e)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
2023-10-29 12:37:30 -04:00
arkon
ae6586be2b Add Compose previews for reading and orientation mode dialogs
(cherry picked from commit 0a0b6861190b087776e60e8e20b5cb21d7e2a855)
2023-10-29 12:35:31 -04:00
Caleb Morris
88efcb5c01 Detached permission request from DiskUtil (#10051)
Being an extension on the DiskUtil couples to a class at a different abstraction
 layer without really needing to. Created PermissionRequestHelper as a place to
 put similar requests if needed in the future.

(cherry picked from commit 3b7ed9bc6d99c9822f3051f3696fb8359b4a8f8a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowseTab.kt
2023-10-29 12:34:05 -04:00
arkon
59a6fd7dca Update Voyager
(cherry picked from commit 012854dd1e13eedecd92419fd6a4d1d5cc900462)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/stats/StatsScreenModel.kt
2023-10-29 12:32:40 -04:00
Caleb Morris
41920d9e75 [dev QoL] Added AndroidStudio previews for [presentation.track] namespace (#10022)
* Created DummyTracker for use in tests and presentation previews

* Added previews for TrackerSearch

* Added previews for TrackLogoIcon

* Added preview for TrackInfoDialogSelector

* Added previews for TrackInfoDialogHome

(cherry picked from commit 6d1e520c6c5c3860bbd588677bb4a05ab06fe830)
2023-10-29 11:51:34 -04:00
arkon
d3ad5d6890 Refresh tracks before updating progress
Closes #1652

Also removes the ability to trigger refreshes for the entire library or
as part of a library update as it should no longer be needed. Opening
the tracking sheet already refreshes the data too, so stale data is
irrelevant there.

Also closes #4775 since it would no longer be relevant.

(cherry picked from commit 489d22720a4343f198c81fe10f69d5b212bfc41a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
2023-10-29 11:08:08 -04:00
Jobobby04
a4ff56e6eb Build fixes 2023-10-29 11:06:23 -04:00
arkon
ada9239c11 Consistent labeled checkbox composable
(cherry picked from commit c53172265b4dfba380a096c8d9107358515bf0e1)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
2023-10-29 11:06:14 -04:00
arkon
ff4c11bab0 Change crash log info to just have actual WebView version
(cherry picked from commit 22df12a680174890fe8f3559218b1819e37bf2f6)
2023-10-29 10:39:20 -04:00
arkon
07f34281c7 Show an error if backup file URI isn't returned to app when attempting restore
Related to #10028

(cherry picked from commit e572abb041cc0c410842fda1ed703f1b80a94d96)
2023-10-29 10:39:09 -04:00
arkon
54caea4daa Minor cleanup
(cherry picked from commit 82a9d36df7c8a22c7dbd7762ecc38dbdacd2626e)

# Conflicts:
#	.github/renovate.json5
#	app/.gitignore
2023-10-29 10:38:15 -04:00
Caleb Morris
80844883ee [dev QoL] Added AndroidStudio previews for [presentation.history] namespace (#10012)
* Added display preview for HistoryDialogs

* Added preview with provider for each branch for HistoryItem

* Added previews for HistoryScreen

Created in-memory preferences construct for when its needed at top-level injection

* Fixed ktlint violations

(cherry picked from commit 447bcb28efa890ea1ebd73183b9ae25e8150be39)
2023-10-29 10:37:16 -04:00
arkon
3842056d9c Migrate top reader app bar to Compose
(cherry picked from commit d18022c25990f1961fef77eabb3924c68f283250)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/reader/appbars/BottomReaderBar.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/widget/listener/SimpleAnimationListener.kt
#	app/src/main/res/anim/enter_from_top.xml
#	app/src/main/res/anim/exit_to_top.xml
#	app/src/main/res/layout/reader_activity.xml
#	app/src/main/res/menu/reader.xml
2023-10-29 00:06:12 -04:00
arkon
868a27110a Remove remaining usages of platform-provided strings
(cherry picked from commit 5619a4c0d995774a4ba4e4030f639a62a708b771)
2023-10-28 15:30:56 -04:00
Ivan Iskandar
70ac8ea629 MangaSummary: Refactor to not use SubcomposeLayout (#10008)
(cherry picked from commit 0026f96fadbe029e8419985e69fb63bd2fe16d7f)
2023-10-28 15:26:27 -04:00
arkon
0fa0384f3d Tweak Cloudflare help message in WebView screen
Catches pages like what Shinigami is currently showing.
Also adjusts the banner to make it look more like part of the top AppBar so it
looks less like part of the webpage.

(cherry picked from commit c386d375dee2a846dd59395e6eda3a07311ed3d5)
2023-10-28 15:26:07 -04:00
arkon
f55f49b2c8 Use AppBar abstraction in more places
(cherry picked from commit 540fb1bb7c36fda0b6c070caacd8fb2a4176ddc0)
2023-10-28 15:25:12 -04:00
arkon
7693076c89 Refactor reader bottom bar to presentation package
(cherry picked from commit 7c012010558d5e7a2ea32a8aaef3c908fdc52799)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/res/layout/reader_activity.xml
2023-10-28 15:23:53 -04:00
Pauline
9f325ea106 Add button to reorder categories alphabetically (#9369)
Closes #6459

Co-authored-by: arkon <arkon@users.noreply.github.com>
(cherry picked from commit 77ebc362f6d6b765ed2de6d1be18a969df4ca1f3)
2023-10-27 19:41:13 -04:00
arkon
5e2700d420 Always save pages/covers in subfolders
Ensures that pages and covers are grouped together.

(cherry picked from commit 8568d5d6c3ceae0084a350906b330f23dab571e1)
2023-10-27 19:41:04 -04:00
Jobobby04
21d898f92f Remove beta webtoon viewer split page
This had a bunch of issues around split pages not showing up properly so things
end up appearing to be missing while reading.
It'd be more worthwhile redoing the reader viewers than trying to get this to work
properly. It'd be better to just enable the split pages on download instead.

Closes #8433

(cherry picked from commit 94cba9324c872b1f0caa3f4d385266f190a9b114)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderPreferences.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonPageHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonViewer.kt
#	core/src/main/java/tachiyomi/core/util/system/ImageUtil.kt
2023-10-27 19:39:49 -04:00
arkon
b9fe9f7f52 Add source preferences to backups
Closes #1857

Co-authored-by: jmir1 <jmir1@users.noreply.github.com>
(cherry picked from commit 0f42b9f1544b188362d1c0046c8ff853827ed270)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBackupScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupConst.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/Backup.kt
2023-10-27 17:28:14 -04:00
arkon
b97dbca402 Add app settings to backups
This should be compatible with Aniyomi's implementation.
Related to #1857

Co-authored-by: jmir1 <jmir1@users.noreply.github.com>
(cherry picked from commit 72024aa44af1622fd148b859c8cea0c3404dc370)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBackupScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupConst.kt
#	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/Backup.kt
2023-10-27 17:23:40 -04:00
LooKeR
1aa2ad1e9c Reduce recomposition of MangaHeader (#9985)
* Reduce recomposition of MangaHeader

* Reuse `Modifier` for `Tags`

Reference:
https://developer.android.com/jetpack/compose/modifiers#reusing-modifiers

* Don't recalculate Read State on recomposition

* Fix Linting issue

* Optimize chapter state calculations

(cherry picked from commit 78aa50bb350b0142a3e0407b3d2f6084b9c1a835)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
2023-10-27 17:18:20 -04:00
arkon
c2488c41a2 Update social media icons
(cherry picked from commit 7f0f67d75249033451f9e0fc841de6359ec28b69)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/about/AboutScreen.kt
2023-10-27 17:16:51 -04:00
arkon
c24cdb598e Tracker-related cleanup
(cherry picked from commit c8e226acb2ef460f78a298ef44412bb5b2915daf)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/track/interactor/TrackChapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/track/TrackerManager.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/BrowseSourceScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/stats/StatsScreenModel.kt
2023-10-01 16:34:14 -04:00
arkon
e2348638f0 Bring back relative timestamp translations
(cherry picked from commit 86edce0d8705beb4f7f750a0c6f5fa4b353ec3c0)
2023-10-01 16:07:24 -04:00
arkon
b5b947400b Bring back simplified relative timestamp setting
Except now it's just an on/off toggle for relative up to a week.

(cherry picked from commit 56d2464870cbd59f1e67dab7cf2a359bddfa0f41)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/presentation/updates/UpdatesScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesTab.kt
2023-10-01 16:07:05 -04:00
arkon
35eb6c7ebe Bump dependencies
(cherry picked from commit 5de72b7d32676fe3d0e9ce2176fe48e29a9f859c)
2023-10-01 16:04:38 -04:00
arkon
326cd14db4 Consistently use absolute date strings everywhere
Closes #9781

(cherry picked from commit b08d604d2a8ae09e623a4375a75cbc844d26a0fa)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesScreenModel.kt
2023-10-01 16:02:28 -04:00
arkon
972ada85ac Clean up fetch interval tests a bit
Also limit the dates we look at to most recent 10 distinct dates only. Closes #9930

(cherry picked from commit 6663abebaf69241741d0702331857951834ba806)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
2023-10-01 16:01:16 -04:00
arkon
47cf4c135d Fix track search item not filling width if content is too short
(cherry picked from commit e5f83d0c6e0a0e55d35dd3a32e71817447824df0)
2023-10-01 16:00:00 -04:00
arkon
fe9f022363 Fix cut off labels in reader sheet toggles
(cherry picked from commit f9754f4f587449f6d9c3a31a99b5c39269d561ac)
2023-10-01 15:58:53 -04:00
arkon
4b3efac857 Tweak reading mode and orientation sheet designs
(cherry picked from commit 8824c7dbe392d586b24234f8e4c0a1c944a77328)
2023-10-01 15:58:42 -04:00
arkon
bc5ba6092b Update website links
(cherry picked from commit ccc9a5a052b133174f8ba361490386ff0361283e)
2023-10-01 15:58:33 -04:00
Soitora
4cf8652b09 Change website URLs to reflect changes (#9916)
Change website URLs

(cherry picked from commit f5e0cee36cae3aed564b89a31317eb99026e4090)

# Conflicts:
#	.github/workflows/issue_moderator.yml
#	README.md
2023-10-01 15:58:27 -04:00
Jobobby04
4a00ef32fd Fix read status in reader chapter list 2023-09-04 12:31:46 -04:00
arkon
0346a4d6b0 Minor updates
(cherry picked from commit 3f0db60a999cb30ff249ae4cc6a720c2a49c319a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
2023-09-04 12:17:45 -04:00
arkon
d8158af43a Switch to different ktlint plugin
Should be better at incremental builds.
To format, run `./gradlew ktlintFormat`.

(cherry picked from commit d29b7c4e5735dc137d578d3bcb3da1f0a02573e8)

# Conflicts:
#	buildSrc/src/main/kotlin/tachiyomi.lint.gradle.kts
#	data/src/main/java/tachiyomi/data/manga/MangaMapper.kt
#	domain/src/main/java/tachiyomi/domain/library/model/LibrarySortMode.kt
#	domain/src/main/java/tachiyomi/domain/library/service/LibraryPreferences.kt
#	domain/src/main/java/tachiyomi/domain/release/interactor/GetApplicationRelease.kt
#	presentation-core/src/main/java/tachiyomi/presentation/core/components/CollapsibleBox.kt
2023-09-04 12:15:09 -04:00
arkon
e776d455f5 Refactor some tracking-related logic
(cherry picked from commit 98d6ce2eaf2c1e85f4763dd37303155d1fc6690d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
2023-09-04 11:47:24 -04:00
arkon
402014adb4 Refactor some tracking-related logic
(cherry picked from commit dde2f42138082f2d71552d573adbe89015cc7ff4)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/track/interactor/TrackChapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
2023-09-04 11:35:19 -04:00
arkon
270ff9064a Add more user-friendly network-related exception messages
(cherry picked from commit 6922792ad110ce9194aa963674bbf2c5c1351ea1)
2023-09-03 23:36:28 -04:00
Mekanik
bef7a42da5 Make some error messages localizable (#9811)
* Make error message of 3 exceptions localizable.

* Revert unnecessary file handle exception change.

(cherry picked from commit 8f395d98e7be976263d2ee9b7559c2638d57b47e)
2023-09-03 23:36:09 -04:00
arkon
347f98b392 Add ResolvableSource interface for potentially opening entries directly based on some URI via a share intent
Implemented as an intermediate step in the existing Global Search share intent workflow.
If any source manages to resolve the URI (e.g., a URL, a slug, etc.), the resolved SManga entry
is directly opened. If nothing gets resolved, continue to a Global Search.

(cherry picked from commit 6d9a8a30e974574b8d92ba478333e6f62b0de2e2)
2023-09-03 23:32:42 -04:00
arkon
105a971a4c Don't run automatic backup or library update jobs if battery is low
(cherry picked from commit 74f74eef56ce83b52cd7969f705e370c7977af87)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
2023-09-03 23:30:10 -04:00
Jobobby04
b717c14cdc Fix tag borders 2023-08-13 12:56:33 -04:00
Jobobby04
e7db248f36 Hide cleanup downloaded chapters for now 2023-08-13 12:43:06 -04:00
arkon
71e0a02003 Minor reader cleanup
(cherry picked from commit 3ebf39bd55cffbf5dc4bfe1c39e91aa22fa93777)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/res/values/arrays.xml
2023-08-13 12:20:49 -04:00
Ivan Iskandar
632ac0ebb2 Add private extension install method (#9710)
* Add private extension install method

Private extensions are put inside private data directory of the running app, so
this kind of extensions can only be used by the running app and not shared with
other apps.

One limitation of private extension is the lack of deeplink handlers (if there's
any) since the extension APK is not installed to the system.

When both kinds of extensions are installed with a same package name, shared
extension (the one installed to the system) will be used unless the version
codes are different. In that case the one with higher version code will be used.

* update

(cherry picked from commit 627f07408e0fe62ab89dcd8881275141591b328d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/extension/model/Extension.kt
2023-08-13 12:07:25 -04:00
arkon
ebb690cbe7 Migrate bottom reader menu to Compose
(cherry picked from commit 8680accd8e6f458a662dd5454bbcdcde482ce0a7)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/res/layout/reader_activity.xml
2023-08-13 11:58:35 -04:00
arkon
eb8685fa7e Migrate reader shortcut menus to Compose
Contents' UIs should probably be improved, but that can happen separately.

(cherry picked from commit 73080902885c9d219f5534002ccf5d16a07a678f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
2023-08-12 16:50:46 -04:00
arkon
50f59befb4 More refactoring of expected next update logic
(cherry picked from commit 81cd765543bbb5901e11a12921adaea99c51810c)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
2023-08-12 16:46:05 -04:00
arkon
83aed3d322 Refactor some Screens to be classes
Not really much point in keeping these as singletons.
Hopefully allows for these to be GC-ed after closing them.

(cherry picked from commit c9a1bd86b58ce4a41bfc0eeb527cac9d30802353)
2023-08-12 16:40:01 -04:00
Alessandro Jean
e0176261ed Show ellipsis in longer OSS library names (#9780)
Show ellipsis in longer OSS library names.

(cherry picked from commit dfbbbadfacc63b2555353a266df596d1230b3553)
2023-08-12 16:39:54 -04:00
arkon
c682308927 Minor cleanup
(cherry picked from commit 0f21d16263b1532953dea61ce1169e0e2a403569)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
2023-08-12 16:39:42 -04:00
arkon
873742f6f4 Remove need for SQLDelight primitive adapters
(cherry picked from commit cd91ea9b7723eec378bbbefd916d3da6407d685e)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
#	data/src/main/java/tachiyomi/data/manga/MangaRepositoryImpl.kt
#	domain/src/main/java/tachiyomi/domain/history/model/HistoryWithRelations.kt
2023-08-12 15:48:39 -04:00
arkon
8bf75e1d20 Avoid badly wrapped buttons in DuplicateMangaDialog
Fixes #9767

(cherry picked from commit db788d519de65fab1dd73f02cf05688714fbccb5)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
2023-08-12 14:56:56 -04:00
arkon
3a2ae59860 Show feedback message when downloads index manually invalidated
Closes #9768

(cherry picked from commit f3e9d5f346d5151f373f7dde2da6d484e1f7ca57)
2023-08-12 14:56:26 -04:00
arkon
cc297da44a Cleanup related to fetch interval display
(cherry picked from commit 3ad4f1114adc88189032e4face152db9ed89df55)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
2023-08-12 14:56:04 -04:00
arkon
781ec229b7 Remove relative timestamps setting
(cherry picked from commit fe90546821092ce8916445ce515ba51404617d62)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/presentation/updates/UpdatesScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesTab.kt
2023-08-12 14:49:02 -04:00
arkon
1abbda5f0b Minor cleanup
(cherry picked from commit 3892c4caac18c0203a3906545bc4cdd1687f0919)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAppearanceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
2023-08-12 14:47:41 -04:00
Quang Kieu
78e3330215 Update Manga in Expected Period (#5734)
* Add Predict Interval Test

* Get mangas next update and interval in library update

* Get next update and interval in backup restore

* Display and set intervals, nextUpdate in Manga Info

* Move logic function to MangeScreen and InfoHeader

Update per suggestion

---------

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

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaDialogs.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
2023-08-12 14:44:43 -04:00
arkon
e1b834072c Show help banner when Cloudflare captcha page is shown in WebView
(cherry picked from commit 6d69caf59e277a2185c1a851ffad8a00a4a93a30)
2023-08-12 14:30:10 -04:00
arkon
12b2d368ab Allow more flexible custom preference composables
(cherry picked from commit 8ff0c9d61a1d5b1cc08a3615ef4bfa3d1f04a5d2)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/PreferenceItem.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/PreferenceModel.kt
2023-08-12 14:28:55 -04:00
arkon
2e9c265a45 Bump dependencies
(cherry picked from commit b6620434b3e1899dfd789594b8ca9dcddc43902f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceFilterDialog.kt
2023-08-12 14:12:52 -04:00
arkon
ae8b478f51 Minor cleanup
(cherry picked from commit abae9bf37dea6bfb351c8b93fe00998c053dba34)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/SourcesScreen.kt
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrateMangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateSearchScreenDialogScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrateSourceTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesFilterScreenModel.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/ReaderViewModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesScreenModel.kt
#	domain/src/main/java/tachiyomi/domain/category/interactor/CreateCategoryWithName.kt
2023-08-12 14:12:07 -04:00
arkon
984bc0b94c Refactor duplicate chapter number formatters
(cherry picked from commit 2556e9f08c768c02a581b5c147d7ea476ff42889)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
2023-08-12 13:55:19 -04:00
arkon
a447b011d0 Clean up preference extensions/items a bit
(cherry picked from commit cf14831fbe6d3b6b07d0fe185194d27d6ac6ae17)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/PreferenceItem.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/presentation/reader/settings/GeneralSettingsPage.kt
#	app/src/main/java/eu/kanade/presentation/reader/settings/ReadingModePage.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/HttpPageLoader.kt
2023-08-12 13:34:39 -04:00
arkon
db2cf166b7 Bump dependencies
(cherry picked from commit ac306547a0ccd28f45882cba8e3b0138f6d6aedc)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	domain/src/main/java/tachiyomi/domain/category/interactor/CreateCategoryWithName.kt
#	gradle/libs.versions.toml
2023-08-12 13:19:48 -04:00
arkon
18b2d575c5 Increase max lines for title in global search to 3
Closes #9729

(cherry picked from commit 262ce3473fb35d31bb8fe9defe069a2111a17438)
2023-08-12 12:59:06 -04:00
arkon
b97a75b763 Remove fast scrollbar from some unnecessary places
(cherry picked from commit 43b9b104f5a1a35adc830117d1a2d9966c880887)
2023-08-12 12:58:57 -04:00
arkon
7b763712f5 Dedupe SearchScreenModels
(cherry picked from commit ca789dca0ee5d24f9fc363be8daaf170f04054a9)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateSearchScreenModel.kt
2023-08-12 12:58:28 -04:00
arkon
2a5c869b1a Minor refactoring
(cherry picked from commit ef7b285151f83b8ef679786417b82ca3227dab35)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupConst.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/cache/ChapterCache.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateSearchScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/SearchScreenModel.kt
2023-08-12 12:51:34 -04:00
arkon
996d47e094 Replicate global search filters to migrate screen
Still needs better refactoring to dedupe all of this stuff though...

(cherry picked from commit dd3ca0c131f4251302e0852265893f68c142f6a4)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateSearchScreenModel.kt
2023-08-12 12:26:24 -04:00
arkon
522b1aea21 Dedupe Global/MigrateSearchContent composables
(cherry picked from commit 8b46e8edad90a60dcc2ecb8f331c2d1674595ff6)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateSearchScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/SearchScreenModel.kt
2023-08-12 12:23:53 -04:00
arkon
d95d4a87cd Constrain reader sheet to max 75% of height
(cherry picked from commit a3a3f44056fbcacd3a9b7e68bf7643099d18f0bf)
2023-08-12 12:20:19 -04:00
arkon
1fa687f7ac Replace reader sheet dropdowns with chips
(cherry picked from commit 22c6dbda3f55d864665228b43954b8decb5dda1f)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
#	app/src/main/java/eu/kanade/presentation/reader/settings/ReadingModePage.kt
2023-08-12 12:20:07 -04:00
arkon
9a9675c16b Use Material3 chips
(cherry picked from commit 34f7caa0fc4a0d9b4fcc4dfd69dc9cb52f11bf38)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
2023-08-12 12:15:44 -04:00
AntsyLich
26dfe4d07d Finish up reader reading mode settings compose migration (#9721)
(cherry picked from commit ec08ba05fcc6cb2c77ae64016b9eafc2125733ba)
2023-07-15 20:26:07 -04:00
arkon
c93edec2fa Replace library sheet display modes with FlowRow of Chips
(cherry picked from commit 30bea8b753fbc40b1c889bdc180cb99f643f89e8)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
2023-07-15 20:09:26 -04:00
arkon
8b090bca49 Replace some reader sheet settings with FlowRow of Chips
(cherry picked from commit 09e4b5a9cd753a7a3a64fa8d3a868ac68dfa767f)
2023-07-15 20:08:54 -04:00
arkon
917434a838 Fix window undimming when reader custom filter settings are open
(cherry picked from commit 5467104b955fc854285f22f9be56083a1d503144)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
#	core/src/main/java/eu/kanade/tachiyomi/network/NetworkHelper.kt
2023-07-15 20:08:24 -04:00
arkon
ef343107fe Use segmented buttons for reader background setting in sheet
(cherry picked from commit 1cf7f9be54fda2385953f7b2dd91191bc01b21ba)
2023-07-15 19:58:24 -04:00
arkon
deb8fe183c Implement showing selected per-series reader settings
(cherry picked from commit fb99577836955bde8d13d79492a20d835cf288c0)
2023-07-15 19:58:11 -04:00
arkon
b5681f0051 Remove legacy settings sheet
The per-series settings aren't quite functional yet, but they're also
accessible outside of the sheet.

(cherry picked from commit 28131ac1357e1134d75c02e2a3bb5e3161a3ecfe)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/reader/settings/ReadingModePage.kt
#	app/src/main/res/layout/reader_activity.xml
#	app/src/main/res/values/attrs.xml
#	app/src/main/res/values/themes.xml
2023-07-15 19:57:59 -04:00
arkon
07d0ceb140 Move all pager/webtoon reader setting to Compose sheet
(cherry picked from commit e40b8d537c2727a9867fedf8971afd01237a661f)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderPreferences.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderSettingsSheet.kt
#	app/src/main/res/layout/reader_pager_settings.xml
2023-07-15 19:25:07 -04:00
arkon
efb0d003f8 Tweak global search source filtering
Pinned only setting is removed in favor of the UI in the global search screen itself, which defaults to pinned only.
This needs more UX improvements, but I'm not really sure what it should be like right now.

(cherry picked from commit 12e7ee9d0caaa56d551908d179788fa637768397)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchScreenModel.kt
2023-07-15 19:05:59 -04:00
zaghdaneh
56f05a55e4 Add filters to Global search (#9691)
* add pinned and available filter chips to global search

* split filter predicate into seperate function

* change the global search available filter to has Results

* reordering of imports

(cherry picked from commit cbcec8c4d9d6f08ecb6ab50eff9aa51d4a3728a0)
2023-07-15 19:02:04 -04:00
arkon
d2bd0055e0 Use system APIs to localize percentage numbers
(cherry picked from commit 8775596a822e8de217a07ed82d1ac49e552607d1)
2023-07-15 19:00:32 -04:00
arkon
0877853ea9 Move boolean reading mode prefs to Compose sheet
Also allow webtoon side padding to be any amount between 0 - 25%.

(cherry picked from commit 2f0133986a60fbd4218e32fce19df6171bad4e71)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderSettingsSheet.kt
#	app/src/main/res/layout/reader_pager_settings.xml
#	app/src/main/res/layout/reader_webtoon_settings.xml
2023-07-15 19:00:21 -04:00
AntsyLich
66f298e1ab Change the wording to "Retry" when page fails to load. (#9701)
(cherry picked from commit 3bd2cad45f028cb0c9b4492049d8b7b2a222cc79)
2023-07-15 18:48:26 -04:00
AntsyLich
2732961f31 Actually retry when a page fails to load in Browse screen (#9700)
(cherry picked from commit 48f7a2de41ed8d107967618f44ccf4eafe58dd5c)
2023-07-15 18:48:16 -04:00
arkon
9455051a67 Fix swipe action preference labels
(cherry picked from commit 3aa6e7ae0e83a93e5c17b7b1f6afd149fbffd67f)
2023-07-15 18:48:04 -04:00
arkon
23ad8d13c9 Initial migration of general reader settings to Compose
(cherry picked from commit 710ebfb7a5e3b57a59103a50da462be1259f0d3b)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderGeneralSettings.kt
#	app/src/main/res/layout/reader_activity.xml
#	app/src/main/res/layout/reader_general_settings.xml
2023-07-15 18:32:46 -04:00
arkon
662609cd20 Move SettingsItems composables to presentation-core
(cherry picked from commit 87bdee59908c73f340c892e43b522727e07b33d2)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
#	app/src/main/java/eu/kanade/presentation/manga/ChapterSettingsDialog.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
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	domain/src/main/java/tachiyomi/domain/library/service/LibraryPreferences.kt
#	domain/src/main/java/tachiyomi/domain/manga/model/Manga.kt
#	presentation-core/src/main/java/tachiyomi/presentation/core/components/SettingsItems.kt
2023-07-15 18:24:00 -04:00
Jobobby04
16944a6857 Fixed compile 2023-07-15 17:57:07 -04:00
Ivan Iskandar
f7299c0c6e Remove scrollable animation workaround (#9690)
Reverts ba93060e591fccf3c85995b50f496bc937ae8ae4
Related https://android-review.googlesource.com/c/platform/frameworks/support/+/2239762

(cherry picked from commit 0759936226ca3fbc09be17d8bc779ffa1beb676d)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceList.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsMainScreen.kt
2023-07-15 17:39:09 -04:00
arkon
4916d4d367 Minor reorganization
(cherry picked from commit b008223661fe74cad382b1c89d4b66f7ec0baee4)
2023-07-15 17:21:49 -04:00
arkon
8d300e3efd Tweak chapter swipe directions and icon color
(cherry picked from commit 8cc42bce5a37c256edbddd4a618787dfec9c2118)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
2023-07-15 17:21:31 -04:00
Ivan Iskandar
51acb2ad9f MangaChapterListItem: Replace swipe action method (#9682)
Using swipe (the library) and added haptic feedback

(cherry picked from commit 8287c9d1935ac16980f9dd0ac4e0284775554a74)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaChapterListItem.kt
2023-07-15 17:18:17 -04:00
arkon
9ffb274bb8 Fix up icon direction when RTL
(cherry picked from commit d32409bd6e68a3d5e32a69eb1b3afbb407741a00)
2023-07-15 17:16:39 -04:00
arkon
647f6e7721 Adjust manga FAB to only say "Start" if there's no unread chapters in unfiltered list
Closes #9479

(cherry picked from commit cf3f2d0380e5ab70211e6aab3f45bc81da43fcf4)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
2023-07-15 17:16:31 -04:00
Jobobby04
eade3c372c Fix ExceptionInInitializerException 2023-07-15 17:09:04 -04:00
Alessandro Jean
137a205f4b Show a progress indicator while checking for updates in the about screen (#9641)
* Show a progress indicator while checking for updates.

* Remove a unused import.

* Remove the initial toast.

(cherry picked from commit 2a7cca6ea43f88e10db313f3361184d90ae80c4c)
2023-07-15 15:46:38 -04:00
Alessandro Jean
adccbbb166 Show open source library license in a custom screen (#9645)
Show open source library license in a custom screen.

(cherry picked from commit 6ed27488462822d3141545dbbad7163e5d2597fa)
2023-07-15 15:46:29 -04:00
arkon
2d7ea8e4e8 Use same icons as action bar in swipe actions
(cherry picked from commit a07e0df815bf1d2c21da71d547df6136d7d8b1ec)
2023-07-15 15:46:01 -04:00
arkon
eb298df72c Migrate ReaderColorFilterSettings to Compose
It'll eventually be a tab with the other settings again once the other tabs are also
migrated over so it's just a single Compose sheet.

(cherry picked from commit fe82cdb9c85274e0c9b904ec6b37fac97d01ea37)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/PreferenceItem.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderColorFilterSettings.kt
#	app/src/main/res/layout/reader_activity.xml
2023-06-24 15:43:30 -04:00
arkon
832e765a22 Refactor grid size slider composable for reuse
(cherry picked from commit b354e37cc34e1b713a0d19818fd030294985f109)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
2023-06-24 15:33:23 -04:00
arkon
f3d47eaaa3 Use our own translation for "OK"
I missed this in the PR that it came with, but I guess it'll be useful if we go multiplatform.

(cherry picked from commit f344831d5877d1d0a7772b00f498ddfb6e86da04)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
2023-06-24 15:32:08 -04:00
Semen
51fadb611e Trackers empty scores start starts from middle (#9624)
* Trackers empty scores start starts from middle

* Trackers empty scores start starts from middle

* Trackers empty scores start starts from middle

(cherry picked from commit 2eca8511cbcb9633649535d29cc0b06db9e2fe48)
2023-06-24 15:27:17 -04:00
arkon
43a920bbb9 Minor cleanup
(cherry picked from commit 42bc2b07ce1f0b4cfbfe3045cddc9c1fcca8f519)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/cache/ChapterCache.kt
2023-06-24 14:25:45 -04:00
Ivan Iskandar
434b8d3ae8 composed Modifier changes (#9631)
Referring at the examples and other internal usages, the
resulting stateful Modifier should be separated from
all the previous Modifier chain.

(cherry picked from commit 25b0458930b3de21340cdc201e7e5e46501dbda1)
2023-06-24 14:19:43 -04:00
arkon
bf0dee8d03 Blur manga info header image
Similar to J2K. This only applies on Android 12+.

(cherry picked from commit ee95c1439f8c47d912c88bd9ebb442e64a89f8ff)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
2023-06-24 14:16:49 -04:00
Ivan Iskandar
a9e7619e48 MangaChapterListItem: Increase swipe action touch slop (#9598)
(cherry picked from commit 9ec8d770eaa364972b6a114fb788391db4e70806)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaChapterListItem.kt
2023-06-24 14:03:21 -04:00
arkon
40353c6dc9 Directly track current WebView URL instead of relying on state
State approach doesn't work well for client-side routed apps like MangaDex.

Fixes #9576

(cherry picked from commit 39a7356ed15b111fd940fc4bb8059f7130a1542e)
2023-06-24 12:25:53 -04:00
arkon
c99986f4f5 Remove General settings section
(cherry picked from commit 34b9c82cd0ca07ded2cd079a9cc18229a02a9a81)

# 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/SettingsGeneralScreen.kt
2023-06-24 12:25:21 -04:00
arkon
23170b6f03 Remove per-category display mode
There seems to be little value in this feature, and juggling flag masks is annoying.
Per-category sorting is still a thing, but could be refactored away from the flag in the feature.

(cherry picked from commit 405a75438a61770a12292cc87c0fa36e16668124)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryTab.kt
#	domain/src/main/java/tachiyomi/domain/category/interactor/SetDisplayModeForCategory.kt
#	domain/src/main/java/tachiyomi/domain/category/interactor/SetSortModeForCategory.kt
2023-06-24 12:10:45 -04:00
arkon
b0b02e24c5 Hide release period update restriction in non-dev builds until ready
(cherry picked from commit 531e1c62bb8ba62f3fe84efce60210b5b5560368)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
2023-06-24 11:22:24 -04:00
arkon
dbe2d1a11f Fix misleading release grace period "Default" options
(cherry picked from commit 8a5382042c58cfb54b206700fd6c4889fd278570)
2023-06-24 11:20:24 -04:00
arkon
8877ddb015 Remove confirm exit option
Redundant with predictive back, but also just sort of pointless since it doesn't help
with any sort of app state retention.

(cherry picked from commit 8f4bc71cf7b99fe0b0d2ea68dfca0140477686cc)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsGeneralScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
2023-06-24 11:20:13 -04:00
arkon
a90eb778d8 Limit updates to 250 most recent chapters
Still limits to things within the past 3 months though.

Closes #9554

(cherry picked from commit 4c65c2311e09bf5dcb77327c415a6fddd12123c5)

# Conflicts:
#	data/src/main/java/tachiyomi/data/updates/UpdatesRepositoryImpl.kt
#	domain/src/main/java/tachiyomi/domain/updates/interactor/GetUpdates.kt
2023-06-24 11:16:54 -04:00
arkon
98697566e3 Minor cleanup
(cherry picked from commit f48f212001900c750585676107bae4fdb7cdbaeb)
2023-06-24 10:45:15 -04:00
Quang Kieu
ae18af8413 Add setting and calculate for update interval (#9399)
* Add Grace Period value and settings

* Add functions to calculate nextUpdate

* update per review

* Move more into SetMangaUpdateInterval, keep wrapper

(cherry picked from commit c90f3449108a8362fea1ee9070979b5a14be9be5)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
#	domain/src/main/java/tachiyomi/domain/library/service/LibraryPreferences.kt
2023-06-24 10:45:01 -04:00
arkon
de0d6f647b Slightly tweak MangaScreen refresh indicator
Related to #7813. It still starts below the status bar, but it looks a bit less weird.

(cherry picked from commit 899fe57f154c01d9dab46863641d1094267c991d)
2023-06-24 10:42:51 -04:00
arkon
aa938445f0 Add debug screen to copy backup file schema
Closes #8544

(cherry picked from commit bac42edabba421d80dd650c5e1781b64c262ed0e)
2023-06-24 10:42:43 -04:00
arkon
88d4087642 Fix some crashes
(cherry picked from commit 46efd4c13430881d8593d4fc3cb899dfd3deacdd)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/webview/WebViewScreenContent.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonPageHolder.kt
2023-06-24 10:42:27 -04:00
arkon
491cfafddb Use primitive state holders
(cherry picked from commit dfd38db7e33bd708ccb688f3fe02d4e0105083f2)
2023-06-24 10:40:44 -04:00
arkon
43ddcf8d2c Simplify chapter item composable a bit
Closes #9442 because I just removed the rounding entirely...

(cherry picked from commit 929a881943bd0a08b2209ee478be1fcd6539de7b)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaChapterListItem.kt
2023-06-24 10:40:24 -04:00
arkon
479ab126c2 Minor cleanup and remove unused dependencies
(cherry picked from commit 152fdec855cccfb479af8f74f1d4099be0ac399c)
2023-06-24 10:39:23 -04:00
Artemis-CtrlAltDel
5b110cec23 fix: grid size slider (#9542)
(cherry picked from commit 9c07451d957761b387663caef8b0f46746aa98e1)
2023-06-24 10:39:16 -04:00
arkon
6d5087b638 Remove redundant inset handling in AdaptiveSheet
The Dialog is handling it anyway, so this doesn't really do anything useful.
We might need to add this back if Dialog actually handles edge-to-edge properly.

(cherry picked from commit e3b27209246c60e2de7033976573681352fee7f9)
2023-06-24 10:39:07 -04:00
Jobobby04
3912757758 Fix build 2023-06-24 10:34:46 -04:00
arkon
3c741c13a4 Upgrade Compose
Co-authored-by: ivaniskandar <ivaniskandar@users.noreply.github.com>
(cherry picked from commit 5a9889b562583c0112b90e1c5b2622336965963d)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryContent.kt
2023-06-24 10:34:23 -04:00
arkon
077c327595 Replace Cascade with our own somewhat janky implementation
(cherry picked from commit 5ca7c39751c29e396f59e66addcfb482bcae6e7d)
2023-06-24 09:55:29 -04:00
arkon
f8053f5b5d Use AppBarActions in more places
(cherry picked from commit 44609c494c11c1b5112b6edec1898cd5d171fa11)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryToolbar.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaToolbar.kt
2023-06-24 09:55:15 -04:00
Jobobby04
f37b661307 Build fix 2023-05-14 00:04:37 -04:00
arkon
c78a5efc4b Revert "Bump to somewhat newer version of Compose BOM"
This reverts commit ce81b76150006b9b23ad5424d49c3de36fb8c090.
Fixes crashes when opening menus. Cascade doesn't have an update
to fix this yet.

(cherry picked from commit b4bb8556751353c06531b55f3b052217254314c0)
2023-05-14 00:00:08 -04:00
Ivan Iskandar
539e2f5d57 Fix navigation backstack (#9497)
Partial revert of dbbf6c5de08b8204ede371e25c1c722d9968ae4c

(cherry picked from commit 6263a527772f4cce8b3b164b87d7b526773ad7ad)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateSearchScreen.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/category/CategoryScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/home/HomeScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
2023-05-13 14:26:59 -04:00
Jobobby04
190c87f7f3 Use AppBarActions 2023-05-13 14:02:24 -04:00
Ivan Iskandar
7ea6f685bf Replace our custom Pager (#9494)
Turns out that changing the pagerSnapDistance
is enough to achieve the same result.

(cherry picked from commit 96defd6b054101c540dc62907e43f4aa5db1ef6c)
2023-05-13 13:35:43 -04:00
arkon
37ddaa6dd7 Use AppBarActions in more places
Related to #8270

(cherry picked from commit bcd90be5254fbb3bbf0878a321d89620beb71707)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/debug/WorkerInfoScreen.kt
2023-05-13 13:34:49 -04:00
arkon
d3e406fce0 Add tooltips for AppBarActions
Partially addresses #8270. A bunch of Scaffolds aren't using this helper.

(cherry picked from commit 22afae44493e93c55aa4b1bf3c889703d796aef5)
2023-05-13 13:34:10 -04:00
arkon
e783649ee8 Bump to somewhat newer version of Compose BOM
(cherry picked from commit ce81b76150006b9b23ad5424d49c3de36fb8c090)
2023-05-13 13:33:38 -04:00
arkon
280f5ce12a Switch back to upstream version of Voyager
(cherry picked from commit dbbf6c5de08b8204ede371e25c1c722d9968ae4c)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateSearchScreen.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/category/CategoryScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/home/HomeScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
2023-05-13 13:33:19 -04:00
Shamicen
6071acd3df
Make comic book archive caching optional instead of rolling it back completely (#883)
* Make comic book archive caching optional and fix cbz archives not opening for some users

* corrected placement of // SY <--
2023-05-12 22:52:17 -04:00
Shamicen
291734a406
Implemented local cover encryption (#881)
* Implemented local cover encryption and made coil capable of reading encrypted cover archives

* add check that the file is not an image before determining that it is a zip file
2023-05-12 22:51:37 -04:00
Jobobby04
197f729023 Fix namespace alignment 2023-05-10 17:29:26 -04:00
Ivan Iskandar
de9000306b ChapterNavigator: Fix rounding error when changing page with slider (#9477)
ChapterNavigator: Fix rounding error when changing page from slider
(cherry picked from commit 84acae27b71fe7549a992d214631292929d4c6aa)
2023-05-08 23:14:31 -04:00
arkon
57d41b6682 Don't compute key for browse list based on manga ID, which may be repeated
Fixes #9473

(cherry picked from commit 71f6e07e71a0ba6e6499512e3dd719a60f5d7314)

# 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
2023-05-08 23:14:30 -04:00
Ivan Iskandar
ce4f2e83b0 Chapter transition tweaks (#9470)
* Chapter transition tweaks

* Chapter transition cleanups

(cherry picked from commit d36cf5ce159adea6b4da8a5351c4a9f732e07590)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/reader/ChapterTransition.kt
2023-05-08 23:14:01 -04:00
Jobobby04
efbdab973e Fix accidentally unused string 2023-05-08 23:13:56 -04:00
Jobobby04
f1bb886737 Don't crash if last loaded url is null 2023-05-06 18:53:54 -04:00
Jobobby04
3dd86c3f77 Move encrypt database setting and add a warning 2023-05-06 18:37:35 -04:00
Jobobby04
28ffdd53a0 Improve subtitle handling 2023-05-06 18:25:19 -04:00
arkon
1234081cef Allow scrolling in restore confirmation dialog
Fixes #9460

(cherry picked from commit 2f5eb73d294fc99c3d8a5ace9812e90a3cb1c2d0)
2023-05-06 17:59:25 -04:00
Ivan Iskandar
c2e35a7806 ChapterNavigator: Always show buttons and fix steps visual (#9461)
(cherry picked from commit f0dd33ee4cf0a355eb9729d723ca78c80340973a)
2023-05-06 17:56:50 -04:00
Ivan Iskandar
277c19eb36 ChapterNavigator: Fix haptic feedback (#9458)
(cherry picked from commit fce9cb820cdcba79f568e79ecb4005b512cf1d78)
2023-05-06 17:43:04 -04:00
Ivan Iskandar
8b62c58c56 ChapterNavigator: Fix background color (#9450)
(cherry picked from commit 08e4863d9467be1525e9b937ac00fde1ecd29218)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/reader/ChapterNavigator.kt
2023-05-06 17:41:55 -04:00
arkon
2d013c551d Migrate reader slider and next/prev buttons to Compose
(cherry picked from commit 9a10656bf07a7dd35400fa6e42dd0e4889ddb177)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonViewer.kt
#	app/src/main/res/layout/reader_activity.xml
2023-05-06 17:40:42 -04:00
arkon
c320daf832 Migrate PageIndicatorTextView to Compose
Probably closes #7798

(cherry picked from commit 3c79777e66d701958c2a20dfb5ccbdfef6e5c294)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
2023-05-06 14:28:35 -04:00
arkon
18f65d4ca4 Fix language in source filter list jumping to top incorrectly
Fixes #9068

(cherry picked from commit f5ad95d78a857c226d53e010e52e8563ecd38f0d)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/SourcesFilterScreen.kt
2023-05-06 14:03:39 -04:00
arkon
4baa396aa6 Get current track services when composing LibrarySettingsDialog
Fixes #9431

(cherry picked from commit 14c465d36f8265cb545405de867c4581468ecdc8)
2023-05-06 14:01:42 -04:00
arkon
4bb617d7ef Bump dependencies
(cherry picked from commit 99378ddf2001ad5b3fab85893a7d59a5415c4a4c)

# 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
2023-05-06 14:01:16 -04:00
Andreas
01ef35af3a Move GitHub Release/App Update logic to data (#9422)
* Move GitHub Release/App Update logic to data

* Add tests for GetApplicationRelease

* Review changes

(cherry picked from commit 02864ebd60ac9eb974a1b54b06368d20b0ca3ce5)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/AboutScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/updater/AppUpdateChecker.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/updater/GithubRelease.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
2023-05-06 13:12:02 -04:00
Andreas
70805d67f9 Add slider for changing columns (#9421)
- It changes the columns based on the current orientation

(cherry picked from commit 7451c13edd8486dd690bf7a2a55c3372b26061c4)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
2023-05-06 12:47:12 -04:00
AntsyLich
3d6a7509ce Add an icon to "Item Per Row" on library sheet (#9414)
Also cleanup `SettingsItems.kt`

(cherry picked from commit c21813a8b5fa58412e88b5ece494598840e9ce71)

# Conflicts:
#	presentation-core/src/main/java/tachiyomi/presentation/core/components/SettingsItems.kt
2023-05-06 12:45:08 -04:00
stevenyomi
0d5ac5f886 Fix exception formatter's format (#9413)
(cherry picked from commit 058ee4c86b15a7d4a11b9e4fb934e69a7c2ac19c)
2023-05-06 12:44:37 -04:00
arkon
67f50e667f Remove "when tapping" from "Pan wide images" setting
Closes #9343

(cherry picked from commit ea6e5eebacc9f736518ad181c3556f628f95dbac)
2023-05-06 12:44:14 -04:00
arkon
25c57c1fb2 Fix disable source option not appearing
(cherry picked from commit 9cc25ff3456a639514e66581792ab6b0c04855d7)
2023-05-06 12:44:06 -04:00
arkon
35abcf89e5 Consolidate exception message formatting
Closes #9408

(cherry picked from commit c9805b8612cbcba9c2b017ff67333c6c08ea32ba)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
2023-05-06 12:43:59 -04:00
arkon
73b7c8d12d Minor cleanup
(cherry picked from commit 392c3492b3e0e7c48837c5eda5e3f2e88c844aec)
2023-05-06 12:36:51 -04:00
Ken Swenson
72a20eca12 Double tap zoom toggle (#9384)
* Double tap zoom toggle

Implements a toggle that allows users to disable double tap zoom including QuickScaling for webtoons. Partially resolves #4145

* Update i18n/src/main/res/values/strings.xml

---------

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

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderReadingModeSettings.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonFrame.kt
#	app/src/main/res/layout/reader_webtoon_settings.xml
2023-05-06 12:35:15 -04:00
d-najd
bb2ffc2dbe Add swipe actions for chapters (#9304)
* added chapter swipe

* Rework corner animtion

* Update i18n/src/main/res/values/strings.xml

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

* Replace LTR/RTL with Start/End layout

* Added label to the animation so the warning will go away

* Getting rid of the swipe threshold setting

* adding disabled option, renaming stuff, other stuff?

* Getting rid of the snackbar

* Getting rid of unecessary strings

* changing enum names as requested

* Renaming Raio to Ratio (I need a better keyboard as well -__-)

* Replacing error with download icon and action

* backup

* minor cleanup

* fixing an nasty edge case

* fixing mistakes in the previous conflict

* space

* fixing bug

fixed bug where the user could dismiss already dismissed item leading to item getting stuck

* fixing lint errors

* fixing lints (hopefully)

* Added "swipe disabled" to the list of actions

* Replacing string value and moving value as requested

* replacing rest of the strings with generic ones

---------

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

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaChapterListItem.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
#	domain/src/main/java/tachiyomi/domain/library/service/LibraryPreferences.kt
2023-05-06 12:33:27 -04:00
Tooster
cadc6469ef Fix misused string key in library context menu (#9388)
The "update global" action used key which led to translation issues in Polish.

(cherry picked from commit ef3d2c14b470c17d240e7522e04b251fccbc3b9a)
2023-05-06 12:24:05 -04:00
arkon
864de368ee Make loader implementation classes internal
(cherry picked from commit 418e6a8b3ac23c235e392fe64314a2e4994e209b)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/HttpPageLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ZipPageLoader.kt
2023-05-06 11:23:59 -04:00
arkon
713c44d520 Use Compose for reader transition chapter info (#9373)
(cherry picked from commit 0b125b7106570841a100b6a4b504533386315bbe)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/ReaderTransitionView.kt
2023-05-06 11:17:43 -04:00
Ivan Iskandar
b96cbf7cb2 Add more info to debug screen (#9357)
* App version
* WebView version
* ART profile status
* Device model
* Android version

(cherry picked from commit 2c6e02506363496a183f2ecb7b50382a1544e94e)
2023-05-06 11:13:18 -04:00
Shamicen
88f076afd4
Encrypted CBZ archives (#846)
* Initial Implementation of encrypted CBZ archives

* changed a preference key to correct Syntax, changed a function name and changed ComicInfo padding length

* Update app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsSecurityScreen.kt

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

* Update app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsSecurityScreen.kt

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

* add necessary imports

* fix indentation after merge conflict

* Update app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsSecurityScreen.kt

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

* fix indentation and add imports

* collect preferences as states

* test if password is correct in ZipPageLoader

* added withIOContext to function call

* added encryption type preference

* implemented database encryption

* added proguard rules for sqlcipher and generate padding length with SecureRandom

---------

Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>
2023-05-06 11:06:54 -04:00
Jobobby04
4212d155ce Improve migration copy and migrate functions 2023-04-16 14:07:47 -04:00
arkon
4f134f90ce Move library columns settings to library sheet
Closes #3969. Dialog-ception.

(cherry picked from commit c6ac9927985bc33a63f49e3280dc63f9f7e8d5de)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
2023-04-15 23:19:38 -04:00
arkon
4d1244daef Add tests for MissingChapters function
(cherry picked from commit 8ab7e632936a008d31a87acd335fbd5fb21d818b)

# Conflicts:
#	domain/build.gradle.kts
2023-04-15 23:06:45 -04:00
arkon
18546e0410 Move worker info screen into debug info menu
No need to translate anything for debug info. Dunno what else will end up in that menu in the future.

(cherry picked from commit 4bcd6238293e0583cdcc082711128358c5ae2069)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
2023-04-15 23:06:04 -04:00
Ivan Iskandar
0724536b2a WheelPicker: Add manual input (#9338)
(cherry picked from commit 60d86508600736099f389035d3ebef591a36fd14)
2023-04-15 23:04:39 -04:00
Ivan Iskandar
3468944cca SearchToolbar: Check initial search query to open keyboard by default (#9297)
(cherry picked from commit 182e642cfce2da5578b02b83c2b52f21d1a8485c)
2023-04-09 18:51:50 -04:00
Ivan Iskandar
7a1026dd06 Adjust SearchToolbar soft keyboard behavior (#9282)
* Show soft keyboard when the text field is composed (a redo)
* Clear focus on text field when soft keyboard is hidden
* Request focus on text field and show soft keyboard
when clear button is clicked

(cherry picked from commit 7a1b599462498f6be8faf08cbd2814a04863f3ef)
2023-04-09 18:49:37 -04:00
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
Ivan Iskandar
c787ccb84d Use non-stable Compose BOM (#9120)
(cherry picked from commit 60a3ba5a5c1d09e3c3cb56f808a95b239cb0624e)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
2023-03-05 18:49:18 -05:00
arkon
6563490513 Remove dependency injection from core module and data module from presentation-widget module
Includes side effects:
- No longer need to restart app for user agent string change to take effect
- parseAs extension function requires a Json instance in the calling context, which doesn't necessarily need to be the default one provided by Injekt

(cherry picked from commit 93523ef50b80ef294866bfb0da54e236cdf2d9f6)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/updater/AppUpdateChecker.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionGithubApi.kt
#	core/src/main/java/eu/kanade/tachiyomi/network/NetworkHelper.kt
#	core/src/main/java/eu/kanade/tachiyomi/network/OkHttpExtensions.kt
#	domain/build.gradle.kts
#	source-api/build.gradle.kts
2023-03-05 18:33:57 -05:00
arkon
2e1c83442e Move more components to presentation-core module
(cherry picked from commit 10d734950659ce5e6ede82a98b89be107912f927)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrationMangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/category/CategoryScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/home/HomeScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
2023-03-05 18:00:20 -05:00
arkon
5f9743223d Use unique keys for all screens to avoid crashes
Fixes #9008
Fixes #9110

(cherry picked from commit 3f7911235c595fe6925e8e22c0c64a368700066e)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrationMangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/home/HomeScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
2023-03-05 17:44:35 -05:00
arkon
3257366ec0 Migrate library settings sheet to Compose
(cherry picked from commit 727399611ddff3530d66ad7a758f357f95053b92)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/library/service/LibraryPreferences.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/widget/ExtendedNavigationView.kt
2023-03-05 17:37:46 -05:00
arkon
935b6576d0 Minor settings sheet cleanup
(cherry picked from commit 07fdb74fbc9ae2afa67e427bb4a94860c7a2d8e6)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/library/service/LibraryPreferences.kt
#	app/src/main/java/eu/kanade/presentation/manga/ChapterSettingsDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
2023-03-05 16:53:29 -05:00
arkon
586068d720 Move more components
(cherry picked from commit dd71c76a8f0b760ec806e71be77998bbc2da61a3)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt
2023-03-05 16:44:36 -05:00
arkon
4db8fa8f12 Move more components to presentation-core module
(cherry picked from commit 58a0add4f6bd8a5ab1006755035ff1b102355d4a)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
#	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/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
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryTab.kt
2023-03-05 16:37:21 -05:00
arkon
60741e1b3b Move more components to presentation-core module
(cherry picked from commit bfe143015a810fc42c1284ef03fbf57ff1a02395)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrationMangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/category/CategoryScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/home/HomeScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
2023-03-05 16:14:29 -05:00
arkon
148268571e Start moving some Compose components to presentation-core module
(cherry picked from commit e3cf8632305283468a5e8366a257d6d6880ca1a6)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsMainScreen.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/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
2023-03-05 16:03:12 -05:00
Jobobby04
70b83e1061 Minor cleanup 2023-03-05 15:05:54 -05:00
arkon
259b8f383f Move more things to domain module
(cherry picked from commit f816196df29ee9744e93470df48b2f7f24ae18f7)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/history/interactor/GetNextChapters.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/migration/MigrationFlags.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/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/ReaderViewModel.kt
2023-03-05 15:05:35 -05:00
arkon
ab19d5c62a Avoid crashing if opening browse with unavailable source
(cherry picked from commit 0ef7650c1a0ae7c4c6e17e458695191ce78944cb)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.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
2023-02-26 21:49:11 -05:00
0x7673
57113014ec Add copy tags to clipboard feature (#9063)
(cherry picked from commit d02b0ca2db744b0eca48dfca86811d653fd3bdaf)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
2023-02-26 21:28:58 -05:00
Ivan Iskandar
fccea2d92a Rework on the wheel picker (#8559)
* Rework the wheel picker

doesn't need for the animation to stop to change the value

* fix

---------

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

# Conflicts:
#	.github/renovate.json
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
2023-02-26 21:09:14 -05:00
arkon
cf22ed24ad Remove background extensions updates check
Same reasoning as removing app update check. It gets kicked off in the foreground now too.

(cherry picked from commit 2970eca9e4b56ede7549eb6d49841b7011fe0741)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBrowseScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
2023-02-26 21:08:36 -05:00
arkon
8fc9e77b77 Add option to hide entries already in library when browsing sources
Closes #2941

(cherry picked from commit 6348cbaeb7dc786309c1ed811ff23114583144a8)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/source/service/SourcePreferences.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
2023-02-26 21:03:40 -05:00
arkon
2736f4491a Replace Local and In Library badge text with icons
Fixes #5725

(cherry picked from commit 3a2dc46ff0b42d42f93b0dd7267d526e7bb8b30a)
2023-02-26 20:58:53 -05:00
Two-Ai
6955819888 Clean up LibraryItem (#9072)
* Move LibraryItem vars to constructor vals

* Convert LibraryItem to data class

Remove redundant equals and hashCode

* Remove unused LibraryItem.displayMode

* Simplify LibraryItem.matches()

* Align types in LibraryItem and LibraryBadges

* fixup! Simplify LibraryItem.matches()

(cherry picked from commit 7b118eba22b6c9caccf09cbd53f846869d5c6f2a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryItem.kt
2023-02-26 20:58:27 -05:00