Commit graph

6320 commits

Author SHA1 Message Date
Ivan Iskandar
c6eda810d3 PackageInstallerInstaller: Fix intent used for install session (#10240)
Use explicit intent as it's a requirement when targeting v34+

(cherry picked from commit 387159b5af1f8eed50f7ab565a13fd689f037e7e)
2023-12-24 14:04:29 -05:00
Ivan Iskandar
b53cbd7d05 MangaScreenModel: Start downloads in IO dispatcher (#10241)
(cherry picked from commit 09531e7f5a33508afb4a53542ce7b0f601be8826)
2023-12-24 14:04:19 -05:00
Ivan Iskandar
821a48e4d1 Target Android 14 (SDK 34) and add permission onboarding step
(cherry picked from commit 9e0068715f3ba3d1627c4b7539b90fb782f8122f)
(cherry picked from commit 13b3bec8ad2a5b883cbe5ec99da531fbaba7f50b)
2023-12-24 14:03:44 -05:00
arkon
cf34c2dec5 Set foreground service types for remaining jobs
(cherry picked from commit db3ddf07eedbd82b7a446573fff2d5ed9595631f)
2023-12-24 14:03:10 -05:00
arkon
c9fa0ce395 Split restoring logic into smaller classes
(cherry picked from commit cd16522805eedc73fa3ab0f8db5ee403162a020c)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/MangaRestorer.kt
2023-12-24 14:02:52 -05:00
arkon
98900bc960 Clean up history restoring
(cherry picked from commit 5fec881387d1d4b5dda19b4a58e103bf60ef4a59)
2023-12-24 13:36:55 -05:00
arkon
dd40dbe171 Workaround for broken nav bar icon colors
(cherry picked from commit 3ac68e810d1d5a4a7d40b2be4a846fad96d42735)
2023-12-24 13:36:46 -05:00
Ivan Iskandar
4c634910f7 Refactor onboarding steps
(cherry picked from commit 2ca3ab077192a7e5e2e7a5fb00c303a5a633372e)
(cherry picked from commit 65e1e2cf4f76b48575fe33dd0848b38720a55744)
2023-12-24 13:36:03 -05:00
arkon
b9fb77aeb1 Avoid crashing in SourcePreferencesFragment if source can't be loaded
Should probably wait for sources to definitely be loaded first, but that's
sort of a bigger change and needs to be lifecycle-aware.

(cherry picked from commit e36a2c68f112f98155f5eea859a59a13cc22e168)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/details/SourcePreferencesScreen.kt
2023-12-24 13:35:52 -05:00
arkon
2db5aa53ea Skip updating unchanged chapters and tracks when restoring backup
(cherry picked from commit ad3d915fc56ecb8328861fdc2bf9e5f5c2aadbe3)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupManga.kt
2023-12-24 13:33:47 -05:00
arkon
b0d7a611f7 Fix download indexing with changed storage locations
Fixes #10218

(cherry picked from commit 36f400d54281dd697f1492befc8241eaf31e31ab)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
2023-12-24 13:29:46 -05:00
arkon
50505574e8 Remove redundant job setup calls in migrations
We always set them up earlier in the migrations anyway.

(cherry picked from commit dd1a19745a0a9df3814f22dd597585e44d3cba35)
2023-12-24 13:28:05 -05:00
arkon
9eb99fb10f Clean up manga restoring logic
Some behavior changes:
- It prioritizes new entries, then anything more recently updated
- It copies the more recently updated entry's metadata (description, thumbnail, etc.)

(cherry picked from commit 58daedc89ee18d04e7af5bab12629680dba4096c)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/model/SMangaExtensions.kt
2023-12-24 13:25:45 -05:00
arkon
6f82c9c867 Proper check for when to navigate to tracker settings from tracking action
(cherry picked from commit d20a8fcf134a02735102010c5d10d1a4455ab8d6)
2023-12-24 13:17:19 -05:00
arkon
c0e1fccf81 Clean up some text alpha modifiers
(cherry picked from commit e56bf82c319f63ff2bdbabf68647a243bcd451d0)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaToolbar.kt
2023-12-24 13:17:04 -05:00
arkon
3ba70183ec Clean up category restoring logic
(cherry picked from commit 0f9895eec8f5808210f291d1e0ef5cc9f73ccb44)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupCategory.kt
2023-12-24 13:16:22 -05:00
Jobobby04
581e2851bc Build fixes 2023-12-24 13:12:25 -05:00
arkon
5792623204 Add ability to open available extension websites in WebView 2023-12-24 13:12:24 -05:00
arkon
619a05bac4 Avoid starting restore job if already running
We already check in the settings screen where it's triggered, but who knows.
Also addressing some errors for method calls that require SDK 26+ (but don't
fail the build, somehow?).

(cherry picked from commit 1ef01b53f2e740b493e5a94cd4ac011ab25b3ace)
2023-12-24 12:53:42 -05:00
arkon
669cd40134 Remove action to delete saved image in notification
Can just open it and delete from whatever gallery app the user has which has way
more functionality.

Closes #8327

(cherry picked from commit 720169dce3b78e3c761e2c80c1fc6f6fab67b791)
2023-12-24 12:53:31 -05:00
arkon
22e6a1673c Fix settings screen crashing when saving state
(cherry picked from commit 0d09039e5f0eb5d295c699ca4e6f160d7549e771)
2023-12-24 12:53:22 -05:00
arkon
17b0185a2b Onboarding screen tweaks
- Opposite transition when going back a step
- Don't allow skipping (I don't want to deal with an unset storage location in other places)

(cherry picked from commit cc56fde9fe6408e5dca4c752acc2ba6478291cce)
2023-12-24 12:53:13 -05:00
arkon
7b3418acd0 Always show trackers action in MangaScreen
Goes to tracker settings to log in if none are set up.

(cherry picked from commit 3a0b3de1754452cc0e10426c79820baa74d30b63)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreTab.kt
2023-12-24 12:53:05 -05:00
arkon
58ed15207e Fix next local chapter not being indicated as downloaded in transition
(cherry picked from commit 47e544b710c1d9337a52dd8fbd5401903a14059a)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
2023-12-24 12:51:10 -05:00
arkon
314eb0a02e More onboarding screen additions 2: Electric Boogaloo
(cherry picked from commit f7c5b4243533374f6751055fd4bc037e022db8a8)

# Conflicts:
#	app/build.gradle.kts
2023-12-24 12:49:54 -05:00
arkon
40f8910cbe More onboarding screen additions
(cherry picked from commit e3404cd3d3c096e33c534143b24dbdce5b6e9bf9)
2023-12-24 12:48:48 -05:00
arkon
d71b1219b4 Add basic onboarding screen (#10199)
(cherry picked from commit 8b57169e924aa75a7cb9b49bb3bbce5e83a087da)

# 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
2023-12-24 12:48:37 -05:00
arkon
364e4fe41b Migrate to some newer date/time APIs
(cherry picked from commit ab9a26f6bd2855d13ff663cf52dfe4ecb01fda1d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.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
#	domain/src/main/java/tachiyomi/domain/updates/interactor/GetUpdates.kt
2023-12-24 12:47:39 -05:00
Ivan Iskandar
0aad7fc006 Downloader: Don't queue chapters on GlobalScope (#10217)
This fixes auto-download on library update not working on certain cases.

(cherry picked from commit 8779b263ab8cc2315005fb7228e7ee41429ddaf8)
2023-12-24 12:45:25 -05:00
arkon
751d22977f Show average scores in tracker search results
Closes #8280

(cherry picked from commit 734cb0be6eeeb484d367ba1cfdbf8cd0076157d3)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/track/kitsu/KitsuApi.kt
2023-12-24 12:45:04 -05:00
arkon
c588922b0b Fix sharing saved pages from notification
Related to #8327
Deleting doesn't seem to do anything still, but at least doesn't throw an exception.

Also removed behavior of dismissing notification after sharing/deleting pages/backups
in case you want to do something again afterwards. Users can manually dismiss the
notification whenever they want.

(cherry picked from commit 1f259f92986c3e4c86d6068eec257f6bd32f69b4)
2023-12-24 12:44:19 -05:00
arkon
d6ab0143d9 Minor cleanup
(cherry picked from commit 427fbfdf5e58478bd9b6d35e3137f2a22db9fd96)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
2023-12-24 12:44:07 -05:00
arkon
66a04c4757 Try to fall back to showing URI for storage location if concrete file path isn't available
Closes #9977

(cherry picked from commit 0c860c0fe99f2a9b18065e36a35cc46fad265da6)
2023-12-24 12:43:05 -05:00
arkon
e4c229aa3b Migrate ReaderColorFilterView to Compose
(cherry picked from commit 5b2a099203cae59d266a3d417f128b36ddad9858)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderPreferences.kt
2023-12-24 12:42:49 -05:00
arkon
3a75f7718a Force recreate download index cache on upgrade
Fixes #10187

(cherry picked from commit ccadfc8fe53ff1b8ab66b0e91a4fa5a21481bcda)

# Conflicts:
#	app/build.gradle.kts
2023-12-24 12:27:35 -05:00
arkon
fc5021c79d Clean up startDownloadNow function a bit
Fixes #9330, I think. If it was even still an issue.

(cherry picked from commit 3aead3a2a924ae080b8fa5dbfdef15b91010d2c9)
2023-12-24 12:25:56 -05:00
arkon
4537a5e469 Remove storage permission check when manually creating backups
Co-authored-by: jmir1 <jmir1@users.noreply.github.com>
(cherry picked from commit 6a48fed17060dabf38ab1a5f0d5cce2c5c979097)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupCreator.kt
2023-12-24 12:25:48 -05:00
arkon
f4afb690c0 Handle content URIs for covers
Co-authored-by: jmir1 <jmir1@users.noreply.github.com>
(cherry picked from commit e5263d0345c059d9c11bed7d711f03b31bb2ad34)
2023-12-24 12:16:56 -05:00
Ivan Iskandar
80e88d8383 Move workers to foreground service context a bit more safely (#10202)
The system will crash the app if the worker that calls setForeground() finished
before the service runner be able to call Service.startForeground(). This edge
case is not handled by WorkManager and there is no way to check if the required
calls are done.

So here we suspend the worker by an arbitrary duration assuming the transition
to foreground service is done by then.

(cherry picked from commit 24e1b4034efe24cc042404e2237f01ca1f2cd9b3)
2023-12-24 12:16:46 -05:00
arkon
f5cda51334 Revert overridePendingTransition refactorings
(cherry picked from commit 87be54aa4aed257dfe060c0a9ee7072fece848bb)
2023-12-24 12:16:21 -05:00
arkon
d1c8c2d18e Set foreground service types for library update jobs
(cherry picked from commit 82d9ae31bdde0abaefeb78995d60b6c6b22e6052)
2023-12-24 12:15:48 -05:00
arkon
4a6693124e Bump dependencies
(cherry picked from commit 7a52afd223332819d462365138f65ad8bcd8b3d9)
2023-12-24 12:15:04 -05:00
arkon
39af800143 Replace ReaderOrientation icon resources
(cherry picked from commit 296201d6b7a14427014c24801fec2d931b2860e5)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/reader/appbars/BottomReaderBar.kt
2023-12-24 12:14:47 -05:00
arkon
040f4f0ba9 Remove unused resources
(cherry picked from commit 162b6397050e1577c113a88e7b7cfe9f98e6a45c)

# Conflicts:
#	app/src/main/res/values-sw720dp/dimens.xml
2023-12-24 12:11:58 -05:00
Jobobby04
14cfc38724 Address some warnings 2023-12-24 12:01:28 -05:00
arkon
209da5eb04 Bump dependencies
(cherry picked from commit 5dda32bb8143abe4e495fb7a5693299ac9f4da41)

# Conflicts:
#	.github/workflows/build_pull_request.yml
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/MigrationFlags.kt
2023-12-24 11:54:51 -05:00
Ivan Iskandar
fcb230df45 Migrate downloader service to WorkManager (#10190)
(cherry picked from commit 8ce8b600922410a4eb64da35a1850840a2f28669)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadService.kt
2023-12-24 11:53:10 -05:00
Ivan Iskandar
35d4a154b4 HomeScreen: Add static key for TabNavigator (#10191)
Fixes incorrect tab selection after process death

(cherry picked from commit 8ff2c01bf28d9d645796b7e616d3ab5c6f85a86c)
2023-12-24 11:52:30 -05:00
arkon
865ec2e47b Target SDK 30
Need to convert some services into WorkManager jobs before going to 31 and higher.

(cherry picked from commit e22eebfd02e28eb260273d987d60c216aa4a2100)
2023-12-24 11:47:09 -05:00
arkon
ab63f6036c Remove storage permissions
Requires adjusting some file reading to first copy to a temporary file
in cache that we have permissions to read from. This is only applicable for things
like ZIP files where we need an actual File rather than just some Android content
URI shenanigans.

(cherry picked from commit 4fcdde4913df28bbd678ae1be4a2971ed77179d3)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/RarPageLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ZipPageLoader.kt
#	source-local/src/androidMain/kotlin/tachiyomi/source/local/LocalSource.kt
2023-12-24 11:46:47 -05:00
Jobobby04
7e6d1196ac Use StorageManager for Exh logs 2023-12-23 23:41:24 -05:00
arkon
44fb882654 Ignore casing when looking for some files/folders
(cherry picked from commit e41668862f6d3362d7de030692d052ae653364e3)
2023-12-23 23:30:37 -05:00
arkon
c2d2295149 Update UniFile
Which has more correct nullability for some methods and case insensitivity for listFiles where possible.

(cherry picked from commit a74a689c9048cc67f4854678fbfefa361631a5e7)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
#	source-local/src/androidMain/kotlin/tachiyomi/source/local/image/LocalCoverManager.kt
2023-12-23 23:30:24 -05:00
arkon
22cc0de7cd Adjust stats overview icons
Closes #9865
Still sort of weird, but the icons are now always aligned.

(cherry picked from commit 9ce0bc6b5fbdf8b8008adb1feae21b8346223453)
2023-12-23 23:23:59 -05:00
arkon
ab57dd7def Actually use configured storage location for local source
Fixes #10178

(cherry picked from commit 27c4db752ce599a99876021c1019cfb549153a30)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
2023-12-23 23:23:40 -05:00
Jobobby04
03407a784f Build fixes 2023-12-23 23:22:43 -05:00
arkon
927c94041e Use UniFile for local source file handling
(cherry picked from commit ca5498434409d4085c404f4ff5ed5e608f430a3b)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/RarPageLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ZipPageLoader.kt
#	core/src/main/java/tachiyomi/core/util/system/ImageUtil.kt
#	source-local/src/androidMain/kotlin/tachiyomi/source/local/LocalSource.kt
#	source-local/src/androidMain/kotlin/tachiyomi/source/local/image/LocalCoverManager.kt
#	source-local/src/commonMain/kotlin/tachiyomi/source/local/image/LocalCoverManager.kt
2023-12-23 23:22:07 -05:00
arkon
bda2ef3eee Add extensions for handling UniFile name/file extensions
(cherry picked from commit 46aeab9a7ac6fd5c45d426e3a733d716dcb1d25f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadCache.kt
2023-12-23 22:53:21 -05:00
arkon
b23e269ac6 Move automatic backups from /backup/automatic to /autobackup
Removes the need to try to create child folders, which simplifies things.

(cherry picked from commit f365b53a0fbfb6f4147c688416e101aee9bae7fc)
2023-12-23 22:52:05 -05:00
Saud-97
b037ca7e24 Anilist decode item description HTML (#10181)
(cherry picked from commit d4dfa9a2c2a6e627256e99efb08e150a6d234964)
2023-12-23 22:51:52 -05:00
arkon
8f4ce62cc9 Use unified storage location for local source
(cherry picked from commit cf9e60fd92b3cea9ab4a48a3b8f62329df388e8d)

# Conflicts:
#	source-local/src/androidMain/kotlin/tachiyomi/source/local/LocalSource.kt
2023-12-23 22:51:41 -05:00
arkon
420d047254 Minor download location cleanup
(cherry picked from commit 21ae04d25d0997319b0742627ba441dfee92cc95)
2023-12-23 22:50:17 -05:00
AntsyLich
afa5683d72 Library update notification changes (#10175)
Don't round up notification percentage. Why show 100% when stuff is still updating.

Show same notification when hide notification content is enabled. Just exclude manga titles.

(cherry picked from commit ba10093ddca8d409e43f26a80ea1f485b7767a6c)
2023-12-23 22:49:53 -05:00
arkon
759a3d8d18 Avoid crashing if storage directory can't be read
e.g. when first launching and there's no storage permissions yet.

(cherry picked from commit a5c946969839c8662172ea0709aebb488d3e2bbb)
2023-12-23 22:49:39 -05:00
arkon
27c7154cdb Exclude some more app state preferences from backups
(cherry picked from commit bcc42dd259cd528641ae4963b9b6ef290332bb27)

# Conflicts:
#	app/build.gradle.kts
2023-12-23 22:48:49 -05:00
Ivan Iskandar
e47941ae70 Migrate to M3 pull-to-refresh (#10164)
(cherry picked from commit d59cb9c1e3119b300fb4f0568ac5c77e5addaf47)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryTabs.kt
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
2023-12-23 22:47:12 -05:00
AntsyLich
0851ee98bd MangaScreen: Fix close in action mode exists from screen (#10160)
* MangaScreen: Fix close in action mode exists from screen

* L

(cherry picked from commit 300660492271752a3f75da4f158bd9b8e049a45b)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
2023-12-23 22:45:38 -05:00
arkon
59c5484a15 Use unified storage location for automatic backups
(cherry picked from commit 1fbf8ca0790bcf2177e6f8850b51b9fb43c66d6e)
2023-12-23 22:44:53 -05:00
arkon
a37da0d1b7 Add unified storage location setting
Currently only using it as a replacement for the downloads location.

(cherry picked from commit 695813ef7d922bc3d9ad5bccef8a466075caa57b)
2023-12-23 22:44:44 -05:00
arkon
5f84cfdd7c Remove max automatic backups setting
We just always create up to 4 now to simplify it, given the addition of syncing
is going to make this section pretty busy.

(cherry picked from commit e3b70ca08d1c5a09a448891ff66102fd696d7098)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupCreator.kt
2023-12-23 22:44:08 -05:00
arkon
4737526067 Use custom threshold for what's consider a low RAM device
(cherry picked from commit 8857b7e0c1a908c1853742b05d7aca7c63880dc9)
2023-12-23 22:43:33 -05:00
arkon
d01518500f Add "Rotate wide pages to fit" for webtoon reader too
Closes #1977

(cherry picked from commit 4a7c20f5a088be75e2a7644d6268f9e21a98d147)
2023-12-23 22:43:24 -05:00
arkon
90ae501cdc Fix searchbar style
Also address some Compose lint warnings.

(cherry picked from commit 29368fc95312c3a68c039b2f896742002caeb953)
2023-12-23 22:43:07 -05:00
arkon
d300e83520 Slightly shrink continue reading button size
(cherry picked from commit 0696e4bce0e61c69e76bc8e02b49ad40ecf53996)
2023-12-23 22:42:54 -05:00
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
97f33888d2 Migrate deprecated progress indicator components (#10142)
(cherry picked from commit 9ec0f73e8778f18001704a6da3a1ac184027efb9)
2023-12-23 18:58:16 -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
b5e1db1973 Use immutable collections in presentation-widget module
(cherry picked from commit 3c3b09209c7ea5729c29b9c3ad414c09b2bb9636)
2023-12-23 18:36:41 -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
e368116a30 Trim Chapter scanlator value (#10108)
(cherry picked from commit d0bcd30909adaaf086e0bd5b0e8231561c4b9e0e)
2023-12-23 17:39:29 -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