diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaDetailsController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaDetailsController.kt index aa5ee5fcb7..4e6c500f3c 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaDetailsController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaDetailsController.kt @@ -472,10 +472,10 @@ class MangaDetailsController : override fun onChangeStarted(handler: ControllerChangeHandler, type: ControllerChangeType) { super.onChangeStarted(handler, type) - if (type == ControllerChangeType.PUSH_ENTER || type == ControllerChangeType.POP_ENTER) { + if (type.isEnter) { setActionBar(true) setStatusBarAndToolbar() - } else if (type == ControllerChangeType.PUSH_EXIT || type == ControllerChangeType.POP_EXIT) { + } else { if (router.backstack.lastOrNull()?.controller is DialogController) { return } @@ -485,6 +485,7 @@ class MangaDetailsController : } colorAnimator?.cancel() + getHeader()?.unbind() val colorSecondary = activity?.getResourceColor( R.attr.colorSecondary ) ?: Color.BLACK diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaHeaderHolder.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaHeaderHolder.kt index 88aa8d1b2d..c04ccda591 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaHeaderHolder.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaHeaderHolder.kt @@ -312,6 +312,11 @@ class MangaHeaderHolder( updateCover(manga) } + fun unbind() { + binding?.mangaSummary?.setTextIsSelectable(false) + binding?.mangaSummary?.clearFocus() + } + private fun MaterialButton.checked(checked: Boolean) { if (checked) { backgroundTintList = ColorStateList.valueOf( diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaHeaderItem.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaHeaderItem.kt index 336f6674da..a2c2d99994 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaHeaderItem.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaHeaderItem.kt @@ -41,6 +41,15 @@ class MangaHeaderItem(val manga: Manga, var startExpanded: Boolean) : else holder.bind(this, manga) } + override fun unbindViewHolder( + adapter: FlexibleAdapter>?, + holder: MangaHeaderHolder?, + position: Int + ) { + holder?.unbind() + super.unbindViewHolder(adapter, holder, position) + } + override fun equals(other: Any?): Boolean { return (this === other) }