From 3c0630bfc06fe63a4674d3ba3df760c1757ae791 Mon Sep 17 00:00:00 2001 From: Viktor De Pasquale Date: Tue, 22 Sep 2020 16:12:41 +0200 Subject: [PATCH] Added forced checks on view being attached to window before performing hiding on it --- .../com/topjohnwu/magisk/ui/MainActivity.kt | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/app/src/main/java/com/topjohnwu/magisk/ui/MainActivity.kt b/app/src/main/java/com/topjohnwu/magisk/ui/MainActivity.kt index 161331ea5..9e6a2114f 100644 --- a/app/src/main/java/com/topjohnwu/magisk/ui/MainActivity.kt +++ b/app/src/main/java/com/topjohnwu/magisk/ui/MainActivity.kt @@ -148,6 +148,32 @@ open class MainActivity : BaseUIActivity( val topView = binding.mainToolbarWrapper val bottomView = binding.mainBottomBar + if ( + Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT && + !binding.mainBottomBar.isAttachedToWindow + ) { + binding.mainBottomBar.viewTreeObserver.addOnWindowAttachListener(object : + ViewTreeObserver.OnWindowAttachListener { + + init { + val listener = + binding.mainBottomBar.tag as? ViewTreeObserver.OnWindowAttachListener + if (listener != null) { + binding.mainBottomBar.viewTreeObserver.removeOnWindowAttachListener(listener) + } + binding.mainBottomBar.tag = this + } + + override fun onWindowAttached() { + requestNavigationHidden(hide) + } + + override fun onWindowDetached() { + } + }) + return + } + val topParams = topView.layoutParams as? CoordinatorLayout.LayoutParams val bottomParams = bottomView.layoutParams as? CoordinatorLayout.LayoutParams