Commit Graph

61 Commits

Author SHA1 Message Date
Simon dddba7bb6f Filter out non-downloaded chapters in reader when Downloaded Only is enabled (#9568)
* FIxed Issue #5463 - DownloadedOnly Bug

* Changes according to Feedback

* Changes according to Feedback

---------

Co-authored-by: AlphiGhost <71730726+AlphiGhost@users.noreply.github.com>
2023-06-10 12:48:15 -04:00
Trace 4816b4b53a fix: skip duplicate chapters on download ahead if option to skip duplicates is enabled (#9334)
* fix: skip duplicate chapters on download ahead if option is enabled

* fix: Use a function to filter duplicates
2023-04-15 09:34:02 -04:00
arkon ee818bc7c5 Move chapter utils to domain module 2023-02-18 15:24:04 -05:00
arkon 345e9c2a9a Move more models to domain module 2023-01-22 10:54:28 -05:00
d-najd ba00d9e5d2 Add "Play" button on manga in library (#8218)
* resume manga button in libarary

* work on resume button

* Backup

* work on opening the last read chapter

* backup

* renaming

* fab instead of image

* done with logic

* cleanup

* cleanup

* import cleanup

* cleanup...

* refactoring

* fixing logic

* fixing scopes

* Reworking design

* adding ability to turn on/off the feature

* cleanup

* refactoring, fixing logic, adding filter logic (partial)

* backup

* backup

* logic done

* backup before merge fix

* merge conflict....

* merge conflict...

* reworking ui logic

* removing unnecessary file

* refactoring

* refactoring

* review changes + minor parameter position movement

* commiting suggestion

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

* fixing minor mistake

* moving ChapterFilter.kt

Co-authored-by: arkon <arkon@users.noreply.github.com>
2022-11-07 22:32:23 -05:00
stevenyomi 4b4a138eee Improve chapter recognition (#8050) 2022-09-24 10:29:55 -04:00
Andreas b5dca2eb09 Move chapter preferences from PreferencesHelper to LibraryPrefrences (#8061) 2022-09-24 10:14:16 -04:00
Andreas 0086743a53 Use 1.x preference abstraction (#8020)
* Use 1.x preference abstraction

- Uses SharedPreferences compared to 1.x impl which uses DataStore but it breaks all settings screens currently
- Move PreferencesHelper to new PreferenceStore
  - PreferencesHelper should be split into smaller preference stores and be in core or domain
- Remove flow preferences as new PreferenceStore handles changes for us

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

* Fix PreferenceMutableState not updating

* Fix changes not emitting on first subscription

Co-authored-by: inorichi <3521738+inorichi@users.noreply.github.com>
2022-09-17 11:48:24 -04:00
AntsyLich da95ecb686 Lessen the use of GlobalScope launchIO (#7916)
* Lessen the use of GlobalScope `launchIO`

* Wrap some calls with `NonCancellable` context
2022-09-02 11:50:44 -04:00
arkon 9f0052eceb More backup/restore code cleanup 2022-08-06 15:40:50 -04:00
arkon 68697e59d7 More domain model usage 2022-07-03 13:46:09 -04:00
arkon b3dd8b7355 More domain model usage 2022-07-03 13:21:48 -04:00
Andreas 17951cfd68 Use SQLDelight for all Manga related queries (#7447) 2022-07-03 10:17:41 -04:00
arkon 53decfd47b Migrate usages of SyncChaptersWithTrackServiceTwoWay 2022-06-26 21:34:54 -04:00
Ivan Iskandar 33a778873a MangaController overhaul (#7244) 2022-06-25 11:03:48 -04:00
jmir1 6aee4fc464 Fix freezing on migrating manga (#7317)
* Use `supend` instead of `runBlocking` in migrate function

* lift `syncChaptersWithSource` out of the db trasaction
2022-06-16 23:34:44 -04:00
AntsyLich 120943a8b3 Make syncChaptersWithSource use sqldelight (#7263)
* Make `syncChaptersWithSource` use sqldelight

Will break chapter list live update on current ui

Co-Authored-By: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>

* Review Changes

Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
2022-06-11 11:38:39 -04:00
arkon da8669c826 Actually compare chapter numbers as numbers when sorting (fixes #7247) 2022-06-10 09:49:50 -04:00
Rohit Mane 20c14a0a00 Update ChapterSourceSync.kt (#7271) 2022-06-10 09:27:08 -04:00
AntsyLich 06fdfcdb23 Make ChapterRecognition return the result (#7279) 2022-06-10 09:26:56 -04:00
arkon 7fdbf40cd2 Minor cleanups
Pulling out some of the smaller changes that aren't related to the manga controller changes in #7244
2022-06-04 16:01:49 -04:00
kasperskier dd5da56695 ChapterSourceSync: set default timestamp to max timestamp (#7197) 2022-06-04 12:48:18 -04:00
saud-97 3e07100dc2 Fixes: incorrect sorting when chapter name contains hyphens '-' (#7161)
* Fixes: incorrect sorting when chapter name contains hyphens '-'

* Added a test case for hyphen in ChapterRecognitionTest.kt

* Removed chapter range test case since it will be replaced by chapterContainingHyphensCase
2022-05-23 17:17:29 -04:00
arkon ae7df4fb7f Update linter 2022-05-10 17:54:52 -04:00
FourTOne5 c4088bad12 Fix removing manga from library reverts during global update (#7063)
* Fix removing manga from library reverts during global update

* Review Changes

* Review changes 2
2022-05-06 22:15:44 -04:00
arkon f0eb42e72d Update linter 2022-04-08 15:30:39 -04:00
arkon 1c5c370c12 Avoid unnecessary string creation when sorting 2021-12-24 10:26:24 -05:00
FourTOne5 7eed8c440c Fix readded chapters polluting 'Updates' tab. (#6377) 2021-12-24 09:28:48 -05:00
FourTOne5 8aa402526a Fix #6366 (#6372) 2021-12-21 09:35:00 -05:00
FourTOne5 a09d6c0470 Better Upload Date to not have a single blank upload date. (#6358) 2021-12-18 14:47:07 -05:00
arkon 65062b4bcb 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.
2021-12-17 12:29:54 -05:00
arkon f057440cc1 Use natural ordering when sorting by chapter numbers (fixes #6121) 2021-10-16 17:37:51 -04:00
Ivan Iskandar 2e127dff1f Replace Timber with Square Logcat and make logging configurable (#6062)
* Replace Timber with Square Logcat

* Configurable logger
2021-10-07 22:12:55 -04:00
Gauthier 6151318ac1 use chapter_number instead of ordinal index for syncChaptersWithTrackServiceTwoWay (#5846)
use v2 api for Komga tracker for series
2021-09-09 21:07:16 -04:00
Gauthier 2cd8733212 change Track.last_chapter_read to Float (#5802)
each TrackService can convert it to Int if decimal chapters are not supported
2021-08-28 10:37:45 -04:00
FlaminSarge 4084d5e69a Revert changes to last_update behavior from #5436 (#5590) 2021-07-24 11:32:48 -04:00
arkon 8931dbb657 Remove unnecessary DB calls when setting chapter flag defaults 2021-07-11 15:18:00 -04:00
arkon 07e5525c74 Fix chapter source order not working correctly and allow refresh to update source order
Based on https://github.com/CarlosEsco/Neko/commit/00f916a4f0e8d677f8e2107e92139d43d88606ae

Co-authored-by: CarlosEsco <CarlosEsco@users.noreply.github.com>
2021-07-07 18:07:51 -04:00
arkon 776194f5b2 Only update in-library manga chapter settings instead of all 2021-07-07 18:05:29 -04:00
stinky-lizard 70ed49e478 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: https://github.com/CarlosEsco/Neko/commit/681003926ae1e07b925155d4e1f43972bbe2b843

* 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: https://github.com/CarlosEsco/Neko/commit/681003926ae1e07b925155d4e1f43972bbe2b843

* 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.
2021-07-01 18:11:21 -04:00
arkon 3854995ef2 Address some Kotlin language warnings 2021-06-01 17:53:51 -04:00
arkon 065cf42aea Fix reader chapter sort ordering (fixes #5157) 2021-05-23 14:30:09 -04:00
arkon aefd2bf6f8 Use same chapter sorting logic in manga and reader views 2021-05-23 11:28:04 -04:00
Gauthier d6b3b0baf7 Add Komga as an unattended track service (#5049)
* fix: prevent crash if TrackService.getScoreList() is empty

* disabled track score button if service doesn't support scoring

* first implementation of the Komga tracking
this doesn't work for read lists

* auto track when adding to library

* handle refresh

* 2-way sync of chapters for unattended tracking services

* Update app/src/main/java/eu/kanade/tachiyomi/ui/manga/track/TrackSheet.kt

Co-authored-by: Andreas <andreas.everos@gmail.com>

* group strings together

* support for read lists

* sync read chapters on bind

* only mark local chapters as read during 2-way sync (incoming)

* local progress from read chapters will be sent to remote tracker on bind/refresh
this enables syncing after reading offline

* remove unused variable

* refactor the 2-way sync in a util function

* handle auto add to track for unattended services from the browse source screen when long clicking
this will also sync chapters, as it is possible to have read or marked as read chapters from there

* 2-way sync when library update for TRACKING

* refactor

* better handling of what has been read server side

* refactor: extract function

* fix: localLastRead could be -1 when all chapters are read

* refactor to rethrow exception so it can be shown in toast

* extract strings

* replace komga logo

Co-authored-by: Andreas <andreas.everos@gmail.com>
2021-05-22 12:07:58 -04:00
Andreas 0fef546a0d 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>
2021-04-28 08:32:47 -04:00
arkon b40af7c3c6 Minor cleanup 2021-04-17 19:05:35 -04:00
arkon da5f10a2f1 Clean up global chapter settings code 2020-09-14 16:23:42 -04:00
lmj0011 64050e8266 [feature] add ability to set global filter/sort/display for Manga chapters (#3622)
* - [feature] add ability to set global filter/sort/display for Manga chapters

* - move default chapter settings functionality to overflow menu
- code clean up

* - show confirmation dialog when user selects "Set as Default" option in Chapter Settings

* - hide overflow menu in LibrarySettingsSheet

* - apply default chapter settings if manga is added to Library from a Source's browsing screen

Co-authored-by: arkon <arkon@users.noreply.github.com>
2020-09-14 15:58:34 -04:00
arkon 76f6fe4601 Use Kolinter Gradle plugin for linting instead of ktlint directly 2020-09-13 18:48:20 -04:00
arkon 66baf01e43 Localize "No chapters found" error 2020-09-04 15:21:09 -04:00