From 2cb8f8f872f055275bf6126f1ed4ef2617c69ea8 Mon Sep 17 00:00:00 2001 From: NGB-Was-Taken <76197326+NGB-Was-Taken@users.noreply.github.com> Date: Sun, 1 Sep 2024 20:30:20 +0545 Subject: [PATCH] Show local chapters as downloaded on merged entries. (#1262) * Show local chapters as downloaded on merged entries. * Disable downloadIndicator for local chapters on merged entries. --- .../main/java/eu/kanade/presentation/manga/MangaScreen.kt | 7 ++++++- .../java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt b/app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt index f295754f0..8e1484507 100644 --- a/app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt +++ b/app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt @@ -77,6 +77,7 @@ import eu.kanade.tachiyomi.source.online.english.Pururin import eu.kanade.tachiyomi.source.online.english.Tsumino import eu.kanade.tachiyomi.ui.manga.ChapterList import eu.kanade.tachiyomi.ui.manga.MangaScreenModel +import eu.kanade.tachiyomi.ui.manga.MergedMangaData import eu.kanade.tachiyomi.ui.manga.PagePreviewState import eu.kanade.tachiyomi.util.system.copyToClipboard import exh.metadata.MetadataUtil @@ -578,6 +579,7 @@ private fun MangaScreenSmallImpl( sharedChapterItems( manga = state.manga, + mergedData = state.mergedData, chapters = listItem, isAnyChapterSelected = chapters.fastAny { it.selected }, chapterSwipeStartAction = chapterSwipeStartAction, @@ -880,6 +882,7 @@ fun MangaScreenLargeImpl( sharedChapterItems( manga = state.manga, + mergedData = state.mergedData, chapters = listItem, isAnyChapterSelected = chapters.fastAny { it.selected }, chapterSwipeStartAction = chapterSwipeStartAction, @@ -944,6 +947,7 @@ private fun SharedMangaBottomActionMenu( private fun LazyListScope.sharedChapterItems( manga: Manga, + mergedData: MergedMangaData?, chapters: List, isAnyChapterSelected: Boolean, chapterSwipeStartAction: LibraryPreferences.ChapterSwipeAction, @@ -1013,7 +1017,8 @@ private fun LazyListScope.sharedChapterItems( read = item.chapter.read, bookmark = item.chapter.bookmark, selected = item.selected, - downloadIndicatorEnabled = !isAnyChapterSelected && !manga.isLocal(), + downloadIndicatorEnabled = + !isAnyChapterSelected && !(mergedData?.manga?.get(item.chapter.mangaId) ?: manga).isLocal(), downloadStateProvider = { item.downloadState }, downloadProgressProvider = { item.downloadProgress }, chapterSwipeStartAction = chapterSwipeStartAction, 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 a901d7297..2e072499b 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 @@ -1001,7 +1001,7 @@ class MangaScreenModel( 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 = if (isLocal) { + val downloaded = if (manga.isLocal()) { true } else { downloadManager.isChapterDownloaded(