diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt index dfd2fe459..07dc73d8e 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt @@ -485,6 +485,7 @@ class MangaController : destroyActionModeIfNeeded() (activity as? MainActivity)?.clearFixViewToBottom(binding.actionToolbar) binding.actionToolbar.destroy() + mangaInfoAdapter?.onDestroyView() mangaInfoAdapter = null chaptersHeaderAdapter = null chaptersAdapter = null diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoHeaderAdapter.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoHeaderAdapter.kt index da1c416b0..87d938164 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoHeaderAdapter.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoHeaderAdapter.kt @@ -61,7 +61,7 @@ class MangaInfoHeaderAdapter( // SY <-- private var trackCount: Int = 0 private var metaInfoAdapter: RecyclerView.Adapter<*>? = null - private var mangaTagsInfoAdapter: NamespaceTagsAdapter = NamespaceTagsAdapter(controller, source) + private var mangaTagsInfoAdapter: NamespaceTagsAdapter? = NamespaceTagsAdapter(controller, source) private lateinit var binding: MangaInfoHeaderBinding @@ -139,7 +139,7 @@ class MangaInfoHeaderAdapter( binding.mangaCover.clipToOutline = true // SY --> - mangaTagsInfoAdapter.mItemClickListener = FlexibleAdapter.OnItemClickListener { _, _ -> + mangaTagsInfoAdapter?.mItemClickListener = FlexibleAdapter.OnItemClickListener { _, _ -> controller.viewScope.launchUI { toggleMangaInfo() } @@ -483,6 +483,7 @@ class MangaInfoHeaderAdapter( } } + // SY --> private fun setChipsWithNamespace(genre: List?, meta: RaisedSearchMetadata?) { val namespaceTags = when { meta != null -> { @@ -521,8 +522,9 @@ class MangaInfoHeaderAdapter( else -> emptyList() } - mangaTagsInfoAdapter.updateDataSet(namespaceTags) + mangaTagsInfoAdapter?.updateDataSet(namespaceTags) } + // SY <-- /** * Update favorite button with correct drawable and text. @@ -540,4 +542,11 @@ class MangaInfoHeaderAdapter( } } } + + fun onDestroyView() { + metaInfoAdapter = null + mangaTagsInfoAdapter = null + binding.metadataView.adapter = null + binding.genreGroups.adapter = null + } }