Forráskód Böngészése

MangaPresenter: Filter unsupported track service from available service list (#8286)

Ivan Iskandar 2 éve
szülő
commit
82b552ac9a

+ 5 - 3
app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaPresenter.kt

@@ -861,9 +861,11 @@ class MangaPresenter(
                 .catch { logcat(LogPriority.ERROR, it) }
                 .map { tracks ->
                     val dbTracks = tracks.map { it.toDbTrack() }
-                    loggedServices.map { service ->
-                        TrackItem(dbTracks.find { it.sync_id.toLong() == service.id }, service)
-                    }
+                    loggedServices
+                        // Map to TrackItem
+                        .map { service -> TrackItem(dbTracks.find { it.sync_id.toLong() == service.id }, service) }
+                        // Show only if the service supports this manga's source
+                        .filter { (it.service as? EnhancedTrackService)?.accept(source!!) ?: true }
                 }
                 .collectLatest { trackItems ->
                     _trackList = trackItems