From 889fec251e118a061d7e40e20c40371dc9009567 Mon Sep 17 00:00:00 2001 From: arkon Date: Sun, 20 Nov 2022 15:28:51 -0500 Subject: [PATCH] Don't attempt to check chapter download status for local chapters Fixes #8541 (cherry picked from commit 8c1171a72256f76972e787d53e182869df2a87d4) # Conflicts: # app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt --- .../tachiyomi/ui/manga/MangaScreenModel.kt | 28 +++++++++++++------ 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt index f518cae6f..2699c6b82 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt @@ -69,6 +69,7 @@ import eu.kanade.tachiyomi.source.PagePreviewSource import eu.kanade.tachiyomi.source.Source import eu.kanade.tachiyomi.source.SourceManager import eu.kanade.tachiyomi.source.getNameForMangaInfo +import eu.kanade.tachiyomi.source.isLocal import eu.kanade.tachiyomi.source.online.MetadataSource import eu.kanade.tachiyomi.source.online.all.MergedSource import eu.kanade.tachiyomi.ui.manga.track.TrackItem @@ -940,24 +941,33 @@ class MangaInfoScreenModel( .filterNot { it in listOf("all", "other") } // SY <-- return map { chapter -> - val activeDownload = downloadManager.queue.find { chapter.id == it.chapter.id } + val activeDownload = if (isLocal) { + null + } else { + downloadManager.queue.find { chapter.id == it.chapter.id } + } // SY --> val manga = mergedData?.manga?.get(chapter.mangaId) ?: manga val source = mergedData?.sources?.find { manga.source == it.id }?.takeIf { mergedData.sources.size > 2 } // SY <-- - val downloaded = downloadManager.isChapterDownloaded( - // SY --> - chapter.name, - chapter.scanlator, - manga.ogTitle, - manga.source, - // SY <-- - ) + val downloaded = if (isLocal) { + true + } else { + downloadManager.isChapterDownloaded( + // SY --> + chapter.name, + chapter.scanlator, + manga.ogTitle, + manga.source, + // SY <-- + ) + } val downloadState = when { activeDownload != null -> activeDownload.status downloaded -> Download.State.DOWNLOADED else -> Download.State.NOT_DOWNLOADED } + ChapterItem( chapter = chapter, downloadState = downloadState,