From 05d5e89c581d3f18cdbbf3d23277560ef14f7025 Mon Sep 17 00:00:00 2001 From: Jays2Kings Date: Thu, 16 Feb 2023 13:49:45 -0500 Subject: [PATCH] Filter enhanced trackers from manga details when not supported --- .../tachiyomi/ui/manga/MangaDetailsPresenter.kt | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaDetailsPresenter.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaDetailsPresenter.kt index abb69a063c..c9b2b00301 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaDetailsPresenter.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaDetailsPresenter.kt @@ -129,7 +129,9 @@ class MangaDetailsPresenter( runBlocking { getChapters() } controller.updateChapters(this.chapters) } - setTrackItems() + presenterScope.launch { + setTrackItems() + } refreshTracking(false) } @@ -884,18 +886,17 @@ class MangaDetailsPresenter( // Tracking private fun setTrackItems() { - presenterScope.launch { - trackList = loggedServices.map { service -> - TrackItem(tracks.find { it.sync_id == service.id }, service) - } + trackList = loggedServices.filter { service -> + if (service !is EnhancedTrackService) return@filter true + service.accept(source) + }.map { service -> + TrackItem(tracks.find { it.sync_id == service.id }, service) } } suspend fun fetchTracks() { tracks = withContext(Dispatchers.IO) { db.getTracks(manga).executeAsBlocking() } - trackList = loggedServices.map { service -> - TrackItem(tracks.find { it.sync_id == service.id }, service) - } + setTrackItems() withContext(Dispatchers.Main) { controller?.refreshTracking(trackList) } }