From 0df6a7fb09ce02738876927bd3b36639ba48431c Mon Sep 17 00:00:00 2001 From: "Cuong M. Tran" Date: Thu, 25 Apr 2024 11:25:02 +0700 Subject: [PATCH] Add relatedMangas to MangaScreenModel --- .../main/java/eu/kanade/presentation/manga/MangaScreen.kt | 8 ++++---- .../java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt | 8 ++++++++ .../src/main/java/tachiyomi/domain/manga/model/Manga.kt | 5 ----- 3 files changed, 12 insertions(+), 9 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 980954edb..4a9ac700b 100644 --- a/app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt +++ b/app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt @@ -560,7 +560,7 @@ private fun MangaScreenSmallImpl( } // KMK --> - if (state.manga.relatedMangas!!.isNotEmpty()) { + if (state.relatedMangas?.isNotEmpty() == true) { item( key = MangaScreenItem.RELATED_TITLES, contentType = MangaScreenItem.RELATED_TITLES, @@ -572,7 +572,7 @@ private fun MangaScreenSmallImpl( onClick = { /* Should show a page with grid/list of all the related manga */ }, ) { RelatedMangas( - mangas = state.manga.relatedMangas!!, + mangas = state.relatedMangas, getMangaState = { getMangaState(it) }, onClickManga = onRelatedMangaClick, onLongClickManga = onRelatedMangaLongClick, @@ -918,7 +918,7 @@ fun MangaScreenLargeImpl( ), ) { // KMK --> - if (state.manga.relatedMangas!!.isNotEmpty()) { + if (state.relatedMangas?.isNotEmpty() == true) { item( key = MangaScreenItem.RELATED_TITLES, contentType = MangaScreenItem.RELATED_TITLES, @@ -930,7 +930,7 @@ fun MangaScreenLargeImpl( onClick = { /* Should show a page with grid/list of all the related manga */ }, ) { RelatedMangas( - mangas = state.manga.relatedMangas!!, + mangas = state.relatedMangas, getMangaState = { getMangaState(it) }, onClickManga = onRelatedMangaClick, onLongClickManga = onRelatedMangaLongClick, 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 d1d8d2167..6267a7ea6 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 @@ -208,6 +208,11 @@ class MangaScreenModel( private val filteredChapters: List? get() = successState?.processedChapters + // KMK --> + private val relatedMangas: List + get() = successState?.relatedMangas ?: emptyList() + // KMK <-- + val chapterSwipeStartAction = libraryPreferences.swipeToEndAction().get() val chapterSwipeEndAction = libraryPreferences.swipeToStartAction().get() @@ -1654,6 +1659,9 @@ class MangaScreenModel( val alwaysShowReadingProgress: Boolean, val previewsRowCount: Int, // SY <-- + // KMK --> + val relatedMangas: List? = null, + // KMK <-- ) : State { val processedChapters by lazy { chapters.applyFilters(manga).toList() diff --git a/domain/src/main/java/tachiyomi/domain/manga/model/Manga.kt b/domain/src/main/java/tachiyomi/domain/manga/model/Manga.kt index e2b53b1b9..4f41b18d6 100644 --- a/domain/src/main/java/tachiyomi/domain/manga/model/Manga.kt +++ b/domain/src/main/java/tachiyomi/domain/manga/model/Manga.kt @@ -65,11 +65,6 @@ data class Manga( get() = customMangaInfo?.status ?: ogStatus // SY <-- - // KMK --> - val relatedMangas: List? - get() = listOf(this, this, this, this, this, this, this, this, this, this, this, this, this) - // KMK <-- - val expectedNextUpdate: Instant? get() = nextUpdate .takeIf { status != SManga.COMPLETED.toLong() }