diff --git a/CHANGELOG.md b/CHANGELOG.md index 685abfd0ea..9e3978ef4a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ The format is simplified version of [Keep a Changelog](https://keepachangelog.co ### Fixes - Fix sorting by latest chapter is not working properly - Prevent some NPE crashes +- Fix some flickering issues when browsing sources ### Other - Update NDK to v27.2.12479018 diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/source/browse/BrowseSourceController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/source/browse/BrowseSourceController.kt index 3b0014d977..de4ec5547a 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/source/browse/BrowseSourceController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/source/browse/BrowseSourceController.kt @@ -758,10 +758,10 @@ open class BrowseSourceController(bundle: Bundle) : * * FIXME: Could easily be fixed by migrating to Compose. */ - private fun BrowseSourceItem.subscribe(mangaFlow: Flow) { + private fun BrowseSourceItem.subscribe() { watchJob?.cancel() watchJob = viewScope.launch { - mangaFlow.collectLatest { + getManga.subscribeByUrlAndSource(manga.url, manga.source).collectLatest { if (it == null) return@collectLatest val holder = getHolder(mangaId) ?: return@collectLatest updateManga(holder, it) @@ -777,7 +777,7 @@ open class BrowseSourceController(bundle: Bundle) : */ override fun onItemClick(view: View?, position: Int): Boolean { val item = adapter?.getItem(position) as? BrowseSourceItem ?: return false - item.subscribe(getManga.subscribeByUrlAndSource(item.manga.url, item.manga.source)) + item.subscribe() router.pushController(MangaDetailsController(item.manga, true).withFadeTransaction()) lastPosition = position return false