1331 Commits

Author SHA1 Message Date
arkon
da739dfc07 Fix skipped library entries and size warning notifications using same ID
(cherry picked from commit 91ed3a4a5facaaa335d4408e7c5342dcca430f47)
2022-05-01 14:09:08 -04:00
arkon
92af7291d5 Fix update warning notifications being cut off (fixes #6983)
(cherry picked from commit 20145f7a12c5f14a27ab01f16ceee3cfca77fdab)
2022-05-01 14:08:59 -04:00
arkon
f22ff7d3f0 Default to downloading as CBZ (closes #6942)
Generally seems fine. People with weak devices may experience some issues, but they can toggle it off/extract the archives separately if needed.

(cherry picked from commit 883945e3e8b4c3fe5ec1bb151c247db7404b037c)
2022-05-01 14:08:50 -04:00
arkon
4804dcf644 Add battery not low restriction for global updates (closes #6980)
(cherry picked from commit 3feea7114614726cd0f5b87729a6c6195d180949)
2022-05-01 14:08:42 -04:00
arkon
e2056982eb Minor cleanup 2: Electric Boogaloo
- Reword pins on top setting
- Make "Latest" button style match old UI
- Sort sources by name

(cherry picked from commit 08e63e5fab93154ca85d16e459226f01aeab5a2d)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/source/interactor/GetEnabledSources.kt
#	app/src/main/java/eu/kanade/domain/source/model/Source.kt
2022-05-01 14:07:08 -04:00
Andreas
c1659ad908 Convert Source tab to use Compose (#6987)
* Use Compose in Source tab

* Replace hashCode with key function

* Add ability to turn off pins moving on top of source list

* Changes from review comments

(cherry picked from commit 29a0989f2889d3361f583285091878c9b4570a52)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourceHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourceItem.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
2022-05-01 13:49:53 -04:00
arkon
f537d8396c Basic initial port of About screen to Compose
(cherry picked from commit d6c87ec10e7d1bec8c43423c3d7d591ce9fdb798)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/more/AboutController.kt
2022-04-23 14:16:13 -04:00
Jobobby04
c9ec7921a5 Revert "Revert history Compose/SQLDelight changes"
This reverts commit 6a0b523e86d0c6f4c517236d4b18b7d0d6e9fcbe.
2022-04-22 19:40:09 -04:00
Jobobby04
6a0b523e86 Revert history Compose/SQLDelight changes 2022-04-22 19:27:15 -04:00
Andreas
f6b7f9e29f Enable verbose logging in dev flavor by default (#6979)
(cherry picked from commit 9d77052d9c36d18ef421074589b40b0fa37e51af)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
2022-04-22 19:22:12 -04:00
arkon
99a94150ea Default auto backups to 2
(cherry picked from commit bc2ed763bdd5e0ee7e3837b2a2e510891f175d59)
2022-04-22 19:20:32 -04:00
Jobobby04
26b30adf4a Migrate saved search and feed saved search to SQLDelight 2022-04-22 19:19:50 -04:00
Andreas
a8cb77cc7e Migrate History screen database calls to SQLDelight (#6933)
* Migrate History screen database call to SQLDelight

- Move all migrations to SQLDelight
- Move all tables to SQLDelight

Co-authored-by: inorichi <3521738+inorichi@users.noreply.github.com>

* Changes from review comments

* Add adapters to database

* Remove logging of database version in App

* Change query name for paging source queries

* Update migrations

* Make SQLite Callback handle migration

- To ensure it updates the database

* Use SQLDelight Schema version for Callback database version

Co-authored-by: inorichi <3521738+inorichi@users.noreply.github.com>
(cherry picked from commit b1f46ed8302411fbd884bbc3c26fe28a378fd91a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DatabaseHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DbOpenCallback.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/HistoryQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/CategoryTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/MangaTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/database/ClearDatabasePresenter.kt
#	build.gradle.kts
2022-04-22 10:08:31 -04:00
arkon
08c2bfd263 Show better error message when empty backup creation is attempted (closes #6941)
(cherry picked from commit 189f92d7e8f9b0588ae7c0727e2ad7f6d03b0a90)
2022-04-21 17:06:25 -04:00
Andreas
45bfd5f72c Migrate History screen to Compose (#6922)
* Migrate History screen to Compose

- Migrate screen
- Strip logic from presenter into use cases and repository
- Setup for other screen being able to migrate to Compose with Theme

* Changes from review comments

(cherry picked from commit c475acd1eaf9f1fd9394f126a8a6f3c0daf52048)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/HistoryQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	settings.gradle.kts
2022-04-21 17:06:03 -04:00
arkon
46f39c24b0 Update F-Droid migration guide link
(cherry picked from commit 9c30fa1da3e6da7cd822cb460f1e7923640984c5)
2022-04-15 17:51:40 -04:00
arkon
418da04411 Adjust update/download warnings
This is a partial revert/evolution of 538dd60580f1b97993620b05d353db883e44b552

- Back to notifications, because Android 12+ may cut off toasts
- Notifications now automatically dismiss after 30s on Android 8+ (taken from J2K)
- Also warn if more than 30 chapters are queued for download

(cherry picked from commit e81bd61e24d4d773dddce7f7fd11713fb511e8fb)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
2022-04-15 17:51:23 -04:00
arkon
7cf5208000 Avoid crashing if picture can't be saved (related to #6905)
(cherry picked from commit 5da2c82f471b0dbdd4d4b3c3e70ef58c7591fba0)
2022-04-15 17:49:44 -04:00
arkon
1be153e51c Show different update notification for F-Droid installations
(cherry picked from commit 821d9cdb02318464abb062e9a945ff8c35402b1e)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/updater/AppUpdateChecker.kt
2022-04-15 17:48:41 -04:00
arkon
0a2684a1fe Move learn more text in skipped entries notification to main content
Because people apparently don't realize they can tap actions

(cherry picked from commit 28575936d326e4c1954f2329b00a50ff6ada6c26)
2022-04-15 17:47:44 -04:00
arkon
f473415968 Remove build flavor checks for update warnings
"stable" was invalid anyway, it should've been "release"

(cherry picked from commit eb33d3c991d57520d130a9eaa5865a3edbb4f5eb)
2022-04-15 17:47:14 -04:00
arkon
897eed3ba4 Gate update/download warnings to non-stable flavors
(cherry picked from commit 4ecde9fc39a8385e89ed903614b24c8dd1e41ad1)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
2022-04-15 17:46:09 -04:00
Jobobby04
11f31769ac Formatting 2022-04-09 19:37:39 -04:00
arkon
8244ca9898 Ensure media store scan is triggered after saving an image (fixes #6808)
(cherry picked from commit 346652e508b0aea1f1a9bdc97f4e4c6f1fcb0789)
2022-04-09 19:14:52 -04:00
arkon
e98567a86b Update linter
(cherry picked from commit f0eb42e72d1e267049777a303bd97d96517a9a1f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/FullBackupRestore.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/models/Backup.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/models/BackupManga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/legacy/models/Backup.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/model/Extension.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/LocalSource.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/base/changehandler/OneWayFadeChangeHandler.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/SelectionHeader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourceItem.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcePresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceFilterSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/globalsearch/GlobalSearchController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryListHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPageSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/HttpPageLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/model/ReaderPage.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/util/view/ViewExtensions.kt
2022-04-09 19:11:54 -04:00
Ivan Iskandar
3f7302c4eb MangaCoverFetcher: Handle moving cover cache after adding to library (#6885)
Move cover cache to separate cache dir after the parent manga is added to library

(cherry picked from commit ac980a4dbfa3400af4a18e975ca3f8937bb4a336)
2022-04-09 19:05:32 -04:00
Andreas
a8a6effd86 Write library cover to library cover cache (#6883)
(cherry picked from commit 3026ff241b18870d3f9af3d1125f0f9d27216891)
2022-04-09 19:05:02 -04:00
Ivan Iskandar
6a45a91a50 MangaCoverFetcher: Don't close network response (#6882)
(cherry picked from commit 2466a079d56bb8dcfc97eb803c0d93082da76281)
2022-04-09 19:04:56 -04:00
Jobobby04
9e78f4f0f1 Most likely fix clear database with keeping read 2022-04-09 19:04:19 -04:00
Ivan Iskandar
c377afac2e MangaCoverFetcher: Use source's header for network request (#6847)
(cherry picked from commit 5409af0a6c858bb32353b3fc42214d8d345f9f08)
2022-04-03 11:49:39 -04:00
Andreas
a081b88a5b Use the file extension from the ImageType enum (#6800)
* Use the file extension from the ImageType enum

* Use the mime type from the ImageType enum

- On Android 29+

(cherry picked from commit cd070271921dd3191d1e3c51b631d9a2f999d5cf)
2022-03-27 20:12:22 -04:00
Jobobby04
d0e9d24f6f Add feed to the combined sources menus 2022-03-27 20:09:39 -04:00
Jobobby04
6a41d96ddf Replace Latest tab with Feed 2022-03-27 18:45:14 -04:00
Jobobby04
5d330c4f75 Migrate saved searches to the db 2022-03-27 15:00:18 -04:00
Andreas
7569955f9e Share logic for saving page/cover (#6787)
* Use MediaStore on newer Android Q or newer

* Use flow instead of Observable

* Review comment fixes

* Use suspended function instead of flow

(cherry picked from commit 1163aa4e4ecfe6f430e7f7c8323c0f64c73d7dbd)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
2022-03-20 13:09:33 -04:00
quangkieu
09bef11e6b Avoid throw as it is slow expensive operations
(cherry picked from commit 9547311d7d40c98b951e679b7a5e4967cf73ee0d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
2022-03-13 19:18:50 -04:00
arkon
56d6964db9 Split out global library update skipped entries into separate notification (closes #6722)
(cherry picked from commit 56042ad0b6e1f3dc63ee72185ccfee75b9339f96)
2022-03-13 19:13:34 -04:00
arkon
324280aed4 Avoid potentially deleting the entire backups folder
(cherry picked from commit 45da0367890fa27b5c9dd553960cf7f9fb06e099)
2022-03-13 19:13:24 -04:00
Andreas
d2972c7c5a Recreate Backup worker with IS_AUTO_BACKUP_KEY flag (#6742)
* Recreate Backup worker with IS_AUTO_BACKUP_KEY flag

* Extra safety net to not delete backup folder

(cherry picked from commit 86016de6cbca0c83e15a05ca822abe450374d26b)

# Conflicts:
#	app/build.gradle.kts
2022-03-07 12:32:58 -05:00
arkon
2273a50920 Use same name for manual backup job tag and work name
(cherry picked from commit d06984e3a345983919105776fdb5dc7d9eff7198)
2022-03-07 12:31:50 -05:00
Ivan Iskandar
1f8072f18b Coil 2.x upgrade (#6725)
* Migrate to Coil 2

* Adapt to use coil disk cache

* Update to alpha 7

* Update to alpha 8

* Update to rc01

(cherry picked from commit 10eef282fa2fc0d8ae919d8b86bff1b529b4330d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
#	app/src/main/java/eu/kanade/tachiyomi/network/NetworkHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryComfortableGridHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryCompactGridHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoHeaderAdapter.kt
2022-03-04 16:45:57 -05:00
Ivan Iskandar
7918b3b26b Use existing worker for manual backup creation (#6718)
* Use existing worker for manual backup creation

This will show the "creating backup" notification when auto backup is
running. Complete or error notification will continue to be shown only on
manual job.

* Make sure disabling auto backup don't cancel running manual backup job

(cherry picked from commit d53bb4c337da6df807b43295d2991e8af9015098)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/AbstractBackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupCreateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/FullBackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsBackupController.kt
2022-03-04 16:13:24 -05:00
Jobobby04
bc1274008d Delete duplicate history on merge 2022-03-04 12:27:18 -05:00
啊o额iu鱼
1803f49732 Fix corrupted backup file, fix #6424 (#6691)
Reappear stably on the api30 Android Studio Emulator,
first save a large backup file,
then save a small backup file, overwriting the previous larger backup file,
so you get a backup file with a larger size but only the first part is meaningful,

(cherry picked from commit 6f5328f663a7c3e148fa1d5b93ab5186b244fa1d)
2022-03-03 11:28:35 -05:00
Jobobby04
b0f5d4d1ce Cleanup group by code a bit 2022-02-22 21:34:24 -05:00
arkon
5777db5509 Reword library update restrictions setting and surface skipped entries in error notification/log
(cherry picked from commit 4a3e4a7c5c9db80d532d4d5e0f67b80a5a1fe5ca)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsLibraryController.kt
2022-02-19 16:58:17 -05:00
FourTOne5
a12758579d Add "Started" library filter and library update restriction (#6382)
* Add chapter read count to library manga

Co-Authored-By: Jays2Kings <jays@outlook.com>

* Add "Started" library filter and library update restriction

* Update Filter when its changed

* Add back accidentally removed stuff.

* Update..

* Change variable names

* Change Variable name where I missed

Co-authored-by: Jays2Kings <jays@outlook.com>
(cherry picked from commit f18d161eaf54c9d9f74bf412447e15216f1ee1dc)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/RawQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/LibraryMangaGetResolver.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/MangaTable.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsLibraryController.kt
2022-02-13 11:16:49 -05:00
Gauthier
026a1116ee Navigate to pan / landscape zoom (#6481)
* pan if the image is zoomed instead of navigating away
quickly display full landscape image before zooming to fit height in fit to screen

* add Tap to pan preference, defaults to true
add landscape zoom preference, defaults to false

* hide landscape image zoom option if scale is not fit screen

* fix landscape image zoom for first image and loading image

* properly reload pagerholders when landscape zoom option is changed

* enable landscape zoom by default

(cherry picked from commit d8719ceee9d19af73649613695c739c68091f146)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerConfig.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerViewer.kt
2022-02-12 12:12:39 -05:00
Felix Kaiser
0adab16fea Detect identical mangas when adding to library (#6579)
* added duplicate manga check

When adding a manga to your library, the app will go through each manga previously added and compare their names. If a match is detected, it will prompt the user and ask for confirmation. On this prompt there is also an option to view the other manga.

* added german translations for newly added strings

* Revert "added german translations for newly added strings"

This reverts commit 71ada620671651daeeb2546aecd02400a4bc86bc.

* changed `AlertDialog.Builder` to `MaterialAlertDialogBuilder`

* using SQL query instead of filtering entire library with Kotlin

(cherry picked from commit 71ddb1657440d54178f10fd62e3d0c66ee95a5a0)
2022-02-12 12:02:21 -05:00
arkon
6b61ead0b6 Disallow PackageInstaller extension installer option on MIUI
(cherry picked from commit 8c1662cfdba42bcc6645af82dc8b4d97c4c4bb62)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
2022-02-12 11:55:41 -05:00