188 Commits

Author SHA1 Message Date
Jobobby04
bc1274008d Delete duplicate history on merge 2022-03-04 12:27:18 -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
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
Jobobby04
b98dc6e1a5 Improve/Fix E-H redirect, add history handling, fix redirect and library handling 2022-02-08 19:48:00 -05:00
Jobobby04
d0f9ad9857 Fix fresh installs databases 2022-01-25 10:24:28 -05:00
Jobobby04
254d739d12 Rewrite E-H favorites sync database, fixes:
- Freezing issues
- Build times
- Probably fixes bloated app size
2022-01-23 17:08:31 -05:00
FourTOne5
6972edbcb4 Better Upload Date to not have a single blank upload date. (#6358)
(cherry picked from commit a09d6c0470311762bb790233463491e6f51412ae)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DbOpenCallback.kt
2021-12-18 18:15:09 -05:00
arkon
9b3a839515 Address some IDE warnings
(cherry picked from commit 532a1b1abacde1a35e4c0bfcf9f083e59f6924b5)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/CategoryTypeMapping.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/MangaTypeMapping.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/LibraryMangaGetResolver.kt
2021-12-18 12:06:55 -05:00
arkon
b665bd35f6 Remove library update order setting
This doesn't make sense to have if the intention is to have reasonably sized global updates. Opting to remove it to remove complexity instead.

(cherry picked from commit 65062b4bcbe65ffc75a6c5e656d39c91be327d63)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsLibraryController.kt
2021-12-18 12:00:27 -05:00
Jobobby04
42da9abe3e Build fixes after cherry picking 2021-12-02 20:44:05 -05:00
Hunter Nickel
7efde9c74c Add feature to clear database manga by source (#6241)
* Implement feature to selectively clear manga from database based on it's source

* Code cleanup and refactoring

(cherry picked from commit 9fe1a7e2ae14c4d7e70bfd85516d91c44514f04a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/RawQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
2021-12-02 19:22:32 -05:00
arkon
4ddaba06f7 Formatting
(cherry picked from commit 1a52385b78ae4fc4aaa82d72508d4db52522bcc1)
2021-10-23 14:24:38 -04:00
FourTOne5
e1856e67c2 Sort and remove duplicates in genres (#6021)
* Sort and remove duplicates in genres

Co-authored-by: ivaniskandar <12537387+ivaniskandar@users.noreply.github.com>

* Remove Sort and filter out blank genre

Co-authored-by: ivaniskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit 7940117577ce500816a61bc638455ffc2ff47017)
2021-10-23 14:24:36 -04:00
arkon
676d8c85a0 Only update chapter/viewer flags for library manga instead of everything (addresses #5809)
(cherry picked from commit 7fa80ae556de6492cbb60c10a3d751ade5c14c72)
2021-09-01 18:41:00 -04:00
Gauthier
54bd0c155f change Track.last_chapter_read to Float (#5802)
each TrackService can convert it to Int if decimal chapters are not supported

(cherry picked from commit 2cd87332125e8b4c703d2b8f47cfc0d540118a97)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DbOpenCallback.kt
2021-09-01 18:40:59 -04:00
Taco
dafff19fff Use more Compat utilities (#5786)
* Use ActivityCompat.recreate

* Use more KTX extensions

* Use PackageInfoCompat.getLongVersionCode

* Remove unnecessary compat usages

(cherry picked from commit 12a9d0575d432a4bc2f2c471e864d26205aba953)
2021-09-01 18:40:58 -04:00
Andreas
d621ef0b3a Make default category translatable (#5751)
* Make default category translatable

* Replace duplicate strings with common one

(cherry picked from commit 3670d649b8b011fd3bb10f66e33f221aea2c3b72)
2021-08-27 12:50:49 -04:00
Jobobby04
8d7aa4b6a2 Fix filtered scanlators 2021-08-02 00:30:19 -04:00
FlaminSarge
c89f88de16 Revert changes to last_update behavior from #5436 (#5590)
(cherry picked from commit 4084d5e69a2b19470fc32860b9b7c2722841a0f2)
2021-07-25 14:21:41 -04:00
Jobobby04
0c3e8f977c Fix crash with open in webview after migrate 2021-07-22 19:46:42 -04:00
Jobobby04
b49c64d4ff Cleanup 2021-07-07 20:37:14 -04:00
arkon
6323306693 Only update in-library manga chapter settings instead of all
(cherry picked from commit 776194f5b27c1e37023efe61b6893a8874ab75e5)
2021-07-07 20:23:48 -04:00
stinky-lizard
0e636d68c4 Imported implementation for updating library by next expected update from Neko (#5436)
* Imported implementation for updating library by next expected update from Neko. This sort uses the last 4 updates for a manga to compute an average time between updates and then extrapolates when the next update should occur.

Currently seems to work perfectly. However, I may have silently messed something up along the way.

All code and algorithms are credited to kyjibo on GitHub. The original commit adding this functionality is here: 681003926a

* Imported implementation for updating library by next expected update from Neko. This sort uses the last 4 updates for a manga to compute an average time between updates and then extrapolates when the next update should occur.

Currently seems to work perfectly. However, I may have silently messed something up along the way.

All code and algorithms are credited to kyjibo on GitHub. The original commit adding this functionality is here: 681003926a

* Remove commented-out line from LibraryUpdateRanker

I missed removing this when first committing. The removed line is a holdover from Neko, which requires 7+, but I removed the function that requires this.

(cherry picked from commit 70ed49e4782579d6ce2e91ace75ef44f8460a64a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DbOpenCallback.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/tables/MangaTable.kt
2021-07-03 18:22:38 -04:00
Andreas
6f6e6ad326 Sort per category (#5408)
* Add flags for sorting per category

* Add logic to LibrarySettingsSheet

* Add  logic to LibraryPresenter

* Minor tweaks

* Use enum instead of variables

Also deprecates LibrarySort in favour of the new enum classes

* Remove debug log and suppress deprecation

* Convert DisplayMode setting to enum

Also fix bug were adapter would get de-synced with the current per category setting

* Fix migration crashing app due to values being access before migration

(cherry picked from commit 60890147c3c24ac30a75bfb8c4fab7b8cccd60be)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/Category.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceValues.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceItem.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryCategoryView.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryItem.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/main/MainActivity.kt
2021-06-26 22:41:34 -04:00
Andreas
89249c9895 Added category-wise display setting (#5232)
* Added category-wise display setting

Co-authored-by: Rogavactive <30288842+Rogavactive@users.noreply.github.com>

* Use flag instead of preference

* Remove database call in LibraryItem

* Remove unnecessary code

Co-authored-by: Rogavactive <30288842+Rogavactive@users.noreply.github.com>
(cherry picked from commit a906e9b302f4aa4ce0d5c30b2a52d266b44eaaf5)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/Category.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryItem.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
2021-06-05 16:07:57 -04:00
Jobobby04
08f1eff450 Update Mangadex Similar to GoldBattles latest version 2021-05-12 23:29:14 -04:00
Jobobby04
b9b5ef55ab Rewrite and enable Mangadex delegation for V5 of Mangadex (Thanks Cesco)
Co-authored-by: CarlosEsco <CarlosEsco@users.noreply.github.com>
2021-05-06 21:19:30 -04:00
Andreas
5c352cb3c0 Add manga-wised rotation mode settings (#4841)
* Add manga-wised rotation mode settings

Based on #3522

Co-authored-by: bboyz269 <4453811+bboyz269@users.noreply.github.com>

* Fix small mistakes

* Complete TODOs

* Rename functions

rotation -> orientation

* Fix orientation icon not changing

Bug from video

* Fix bug with force portrait not being force if a default value

Bug from video

* Backup viewer_flag as a seperate field in so legacy/forks doesn't crash

* Make viewer_flags nullable so old backups viewer gets restored

* Add migration for old rotation and viewer to new defaults ones

* Rename variable in enums

* Fix migration after OrientationType was changed

* Remove untrue comment

Co-authored-by: bboyz269 <4453811+bboyz269@users.noreply.github.com>
(cherry picked from commit 0fef546a0d4b2a78089b0880564e80708afbe1da)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/models/BackupManga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
2021-05-04 14:48:06 -04:00
arkon
6d9753f361 Revert using fetch date for updates list
Spamming the list post-migration is currently a more common usecase than sources without chapter dates. We'll need to figure out a better way of handling both scenarios.

(cherry picked from commit 5b23f29d06da74c237d8e0ecc7772773ca0b4c1e)
2021-04-04 19:12:44 -04:00
Riztard Lanthorn
03366ae7e5 add sort by date fetched in library (#4773)
* add sort by date fetched in library

* chapter fetch date to 8

(cherry picked from commit ddd4cc10ff12d2497a001821c678f2c1a90eef34)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySort.kt
2021-04-04 19:12:25 -04:00
scb261
30250e350f Limit query for recent chapters to 500 (#4678)
(cherry picked from commit 2145e878a45beebf5aab244f60c0ef52c867cfef)
2021-03-20 14:57:30 -04:00
scb261
93c92b674d Use fetch date instead of upload date when querying recent chapters (#4645)
(cherry picked from commit 7f450e185dd6594bc56446f0c417dc4c2d327c48)
2021-03-18 15:36:17 -04:00
Jobobby04
d0561705fe Clear db now has a option to keep read manga 2021-03-04 19:10:07 -05:00
Jobobby04
4f9ae9cc75 Fix clear db not effecting merged manga 2021-03-04 19:10:05 -05:00
Jobobby04
cd1c6cbc89 Add manga with pages read to backup 2021-03-04 19:10:04 -05:00
Jobobby04
5a67d8169d Edit manga status + edit local manga fixes 2021-02-24 16:15:19 -05:00
Jobobby04
56ead63798 Fix legacy backups
(cherry picked from commit ded58541f5903c109b70799683829e26018d2af6)
(cherry picked from commit 9f9f9872eb32b12e9d2e31fe427cddd5542642b2)
2021-02-11 18:12:24 -05:00
arkon
f91837a019 Chapter backup optimization
From fc6d9aaf51 (diff-9872ccc3c9af14d2872ec99199409e60a11cb754ab23e733b1d45843778f7c95R24)

(cherry picked from commit 79c3767fff90b5cbeb9529cf56e9077a6cfa145a)
2021-02-11 18:11:14 -05:00
Jobobby04
ded58541f5 Fix legacy backups 2021-02-07 21:54:26 -05:00
Jobobby04
e633da5567 Backup read manga that are not in library 2021-02-06 18:59:40 -05:00
Jobobby04
fc6d9aaf51 Restore offline optimization
Should make restore offline faster when data is already there
2021-02-04 17:06:28 -05:00
Taco
ec1fe205ad Update Okio, use more KTX stuff (#4353)
* Update Okio to 2.10.0

* Use some more KTX extensions

(cherry picked from commit 5f7e34b6a1cbda755db6f943a87da16cfc51e6e4)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/CategoryTypeMapping.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/mappers/MangaTypeMapping.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/resolvers/MangaFavoritePutResolver.kt
2021-01-26 16:11:02 -05:00
Jobobby04
295af5306b Handle delegated source id lists better using a LisenterMutableMap
Better source id comparisons
2021-01-26 13:31:22 -05:00
Andreas
c92c9fada5 Add filter for tracking (#4276)
* Add filter for tracking or not

* Use .any

* Access database only when needed

(cherry picked from commit 5cddc0c3875fffa205bd7fbc7f881cc60871b5be)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
2021-01-17 18:03:57 -05:00
arkon
7a893e3009 Revert removal of tracker start/end date
(cherry picked from commit 0cd551d4fd94703aa49ede6db811fd07c712b2bc)
2021-01-16 19:50:20 -05:00
arkon
de03174131 Strip out no longer used tracker start/end date code
Unfortunately MAL was the only one that supported it in the app, but the official API doesn't support it, so now no trackers have it.

(cherry picked from commit 6e7fefb8b22da062eb2eaf4cb20746e258ef4d65)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/full/models/BackupTracking.kt
2020-12-26 00:32:26 -05:00
Jobobby04
6f712c7f17 Lint 2020-12-12 12:36:29 -05:00
Jobobby04
079dd953bd Replace elvis operators with .orEmpty where possible 2020-11-04 22:10:13 -05:00
arkon
195dbbf1c2 Consume and extend 1.x Source API
TODO: make the rest of the app actually call the 1.x functions
(cherry picked from commit 2ab6af6471766c537a8a04f9221a652f0ee3a781)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/source/model/SManga.kt
2020-11-04 20:58:14 -05:00
Jobobby04
eb3a987826 Implement Neko similar manga, Mangadex only recommendations 2020-10-26 02:13:02 -04:00