568 Commits

Author SHA1 Message Date
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