Commit graph

1235 commits

Author SHA1 Message Date
Two-Ai
5f6666a438
Migrate Download to domain model (#8664) 2022-12-03 22:30:30 -05:00
AntsyLich
373463e995
Change Updates icon badge to show new updates count (#8659)
* Change Updates icon badge to show new updates count

* Fix reference

* review changes

* Lint
2022-12-03 14:44:30 -05:00
Ivan Iskandar
3d66eaea83
Merge Voyager screens (#8656)
* Merge Voyager screens

* cleanups
2022-12-02 22:35:30 -05:00
AntsyLich
ba91b483a0
Delayed Tracking Update related fix (#8642)
* Delayed Tracking Update related fix

* Lint
2022-12-01 23:01:24 -05:00
arkon
5fbecfd7b7 Don't remove queued downloads when deleting manga after chapter deletion 2022-11-27 17:12:45 -05:00
arkon
3480b45098 Minor cleanup 2022-11-27 17:12:45 -05:00
AntsyLich
3d7591feca
Implement simple stats screen (#8068)
* Implement simple stats screen

* Review Changes

* Some other changes

* Remove unused

* Small changes

* Review Changes 2 + Cleanup

* Review Changes 3

* Cleanup leftovers

* Optimize imports
2022-11-26 15:50:26 -05:00
arkon
37118088d4 Remove usage of PublishRelay in DownloadQueue 2022-11-26 10:07:51 -05:00
AntsyLich
758d223776
Disable generating ComicInfo.xml on download (#8619)
* Disable generating ComicInfo.xml on download

* Remove unused import
2022-11-26 09:13:08 -05:00
arkon
a54d9912d0 Fix Kavita interceptor crashing app + minor cleanup 2022-11-25 23:03:42 -05:00
arkon
7e74949d38 Explicitly add READ_APP_SPECIFIC_LOCALES permission
Some devices are throwing a SecurityException (calling getApplicationLocales) for some reason.
2022-11-25 23:03:42 -05:00
AntsyLich
0347d3970a
Cleanup [Downloader.ensureSuccessfulDownload] (#8602) 2022-11-23 09:23:29 -05:00
arkon
5c37347cec Delete empty source folder when deleting all downloads for a manga
It previously only attempted this after deleting a list of chapters, so it wasn't applicable
when deleting from Library or after unfavoriting an entry.

Closes #8594
2022-11-22 09:25:00 -05:00
arkon
2d86f69caa Add reindex downloads description
Closes #8546
Also disable sound for the notification and cancel running indexing job if invalidating.
2022-11-20 14:29:56 -05:00
AntsyLich
ba2a528886
Fix related to cancelling queued chapters (#8528)
Tachi removes the downloaded chapter (if it exists) when you just cancelled a download from queue.

PR fixes that

Also removes redundant return
2022-11-18 22:27:39 -05:00
arkon
f5873d70c6 Don't rely on cache when deleting empty manga folders
In case the cache hasn't actually been indexed yet. Maybe fixes #8438.
2022-11-14 22:42:36 -05:00
arkon
9da232dcd8 Adjust download cache to ignore irrelevant files
Fixes #8530
2022-11-13 11:52:11 -05:00
AntsyLich
51c964de3a
Fix download not working on sd card (#8527)
Also create comicinfo file inside chapter folder instead of manga folder since it also contains some chapter specific data
2022-11-13 10:40:33 -05:00
arkon
262f8449b4 Resolve proper chapter URL for ComicInfo "Web" field
Requires extensions to be updated to lib 1.4 to have proper URLs for some of them, which will
happen soon in the future.
2022-11-12 09:54:32 -05:00
arkon
6ada3c90ff Clean up ComicInfo stuff a bit 2022-11-11 16:34:18 -05:00
Shamicen
4e628fe6de
Create ComicInfo Metadata files on chapter download (#8033)
* generate ComicInfo files at the chapter root and inside CBZ archives on chapter download.

* Update app/src/main/java/eu/kanade/tachiyomi/source/LocalSource.kt

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

* Improvements suggested by @ghostbear

* now creates ComicInfo files in normal chapter folders as well
use manga directly instead of converting it to SManga
truncate old files before overwriting them

Co-authored-by: Andreas <6576096+ghostbear@users.noreply.github.com>

* remove empty line after resolving merge conflict

* fixes Serializer for class 'ComicInfo' is not found error

* some changes to comments and variable names

* Revert leftover changes to archiveChapter() function

* minor cleanup

* Changed Chapter to SChapter

Co-authored-by: Andreas <andreas.everos@gmail.com>
Co-authored-by: Andreas <6576096+ghostbear@users.noreply.github.com>
2022-11-11 16:16:37 -05:00
ThePromidius
92b039fac7
Add Kavita tracker (#7488)
* Added kavita tracker

* Changed api endpoint since tachiyomi has it's own. Moved some processing to backend

* Bugfix. Parsing to int instead of float

* Ignore DOH, update migration and cleanup

* Fix Unexpected JSON token
	modified:   app/src/main/java/eu/kanade/tachiyomi/data/track/TrackManager.kt
	modified:   app/src/main/java/eu/kanade/tachiyomi/data/track/kavita/KavitaApi.kt
	modified:   app/src/main/java/eu/kanade/tachiyomi/data/track/kavita/KavitaModels.kt

* Apply code format suggestions from code review

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

* Apply simplified code suggestions from code review

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

* Removed unused dtos

* Use setter instead of function to get apiurl

* Added Interceptor

* Handle not configured/not accesible sources

* Unused import

* Added kavita to new tracking settings screen

* Delete SettingsTrackingController.kt to solve conflict

* Review comments
* Removed break lines from log messages
* Fixed jwt typo

* Merged enhanced services compatibility warning message to be more generic.
* Updated Komga String res to use new formatted one
* Added Kavita String res to use formatted one

* Apply suggestions from code review - hardcoded strings to track name

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

Co-authored-by: Andreas <andreas.everos@gmail.com>
2022-11-11 15:19:41 -05:00
arkon
a0f49b16c5 Remove "Download complete" notification
It wasn't really consistent with other notifications considering there's no
action to be taken in this state.
2022-11-10 23:08:19 -05:00
arkon
c6c4c1c393 Migrate to more domain model usages 2022-11-10 22:42:44 -05:00
arkon
811931ccc0 Minor cleanup 2022-11-10 22:23:34 -05:00
AntsyLich
08d5633d81
Add option to invalidate download cache (#8491)
* Add option to invalidate download cache

* Review changes + lint
2022-11-10 22:15:35 -05:00
Ivan Iskandar
18ccde082d
Full Compose MangaController (#8452)
* Full Compose MangaController

* unique key

* Use StateScreenModel

* dismiss

* rebase fix

* toShareIntent
2022-11-09 22:31:56 -05:00
Alessandro Jean
6d880c938a
Retry the MAL request if the token is expired (#8437)
Retry the MAL request if the token expired.
2022-11-04 22:54:52 -04:00
arkon
fc184f1cfa Clean up download ahead logic
- Remove redundant chapter sorting logic when fetching next chapter(s)
- Remove redundant download queue checks (it'll handle already queued or downloaded items)
- Trigger download ahead when read >= 25% of chapter rather than 20%
- Rely on download cache when checking if next chapter is downloaded to avoid jank (fixes #8328)
2022-10-30 16:59:33 -04:00
arkon
725fcbba0e Add warning about F-Droid build support in More screen 2022-10-30 16:00:19 -04:00
stevenyomi
4b60138d41
Clean up strings and icons (#8326)
* Clean up strings and icons

* fix incorrect usages of label_more

* restore strings and reduce usage of android.R

* removing icon desc of FABs anyway as app's not for visual impaired users
2022-10-29 11:43:51 -04:00
arkon
fde7bfa3d1 Show notification while download cache is renewing
Since users seem to be confused now that the library loads before download info is shown...
2022-10-29 11:39:04 -04:00
AntsyLich
6e4a30e593
Fix "Download split" not working while using SD card (#8305)
* Fix "Download split" not working while using SD card

* Update app/src/main/java/eu/kanade/tachiyomi/util/system/ImageUtil.kt

Co-authored-by: arkon <arkon@users.noreply.github.com>
2022-10-28 11:40:43 -04:00
arkon
ca06516900 Avoid some crashes 2022-10-26 18:12:11 -04:00
AntsyLich
3b5b9a1ae5
Use Channel in Download cache (#8292)
* Use `Channel` in Download cache

Co-Authored-By: Andreas <6576096+ghostbear@users.noreply.github.com>

* Use Unlimited capacity

Co-authored-by: stevenyomi <95685115+stevenyomi@users.noreply.github.com>

Co-authored-by: Andreas <6576096+ghostbear@users.noreply.github.com>
Co-authored-by: stevenyomi <95685115+stevenyomi@users.noreply.github.com>
2022-10-26 09:21:35 -04:00
arkon
5c868d7846 Use kotlin.time extensions in some more places 2022-10-22 19:57:55 -04:00
AntsyLich
4ff5c1148e
Cleanup LibraryUpdateService (#8237) 2022-10-22 15:16:44 -04:00
arkon
152eb5b951 Handle async cache in updates and manga screens
- Also fix concurrent accesses to main cache map
- Also debounce sources and updates list updates to maybe avoid crashing due to dupe LazyColumn keys
2022-10-22 10:50:44 -04:00
arkon
7e40680af0 Perform download cache renewal async
Don't block on cache renewals, but notify library on updates so that the badges show up when ready.

We skip the cache when checking if a chapter is downloaded for the reader assuming that it's a
relatively low cost to check for a single chapter.

(Probably) fixes #8254 / fixes #7847
2022-10-21 15:00:41 -04:00
arkon
b04807e53a Proper DI instantiation for some more download related classes 2022-10-21 14:29:44 -04:00
arkon
93827aba34 Defer library download counts if not needed 2022-10-20 23:20:32 -04:00
arkon
a8ca7b690f Avoid crashing if invalid download and backup location is set
Fixes #8252
2022-10-20 22:34:27 -04:00
Ivan Iskandar
84bcd8d1d2
Fix crash when saving a page from certain chapters (#8242) 2022-10-19 07:59:05 -04:00
arkon
6756bfab75 Fix download cache not updating on location change 2022-10-18 17:35:38 -04:00
stevenyomi
2d19729869
Clean up OkHttp methods and parse from Okio directly (#8238) 2022-10-18 12:09:23 -04:00
arkon
558aad1a71 Always renew download cache if no sources have been loaded yet
Fixes #7705. Somewhat janky solution to handle when loading the sources on app start is slower than
the initial download cache priming.
2022-10-16 16:30:51 -04:00
arkon
bc1fbfac9d Minor cleanup 2022-10-14 16:13:50 -04:00
arkon
26a42ba9c0 Upgrade to Kotlin 1.7.20
Also run formatter and address some deprecation warnings.
2022-10-11 22:40:08 -04:00
stevenyomi
b1e104319f
Fix download progress indicator (#8188) 2022-10-11 22:17:45 -04:00
Platiplus
a3afb35539
Overwrite saved images instead of creating new ones (#8162)
* Implementing overwrite instead of saving duplicated images

* Using filename instead of hardcoding image type

* Refactoring method to accept lambda for default value

* Removing extra parenthesis
2022-10-11 08:20:30 -04:00