From 02afa5caac369eff1cf2cbe6e89c4a9f2690b815 Mon Sep 17 00:00:00 2001 From: Norman Wang Date: Wed, 18 Jun 2025 17:19:24 +0800 Subject: [PATCH] fix: android potential crashes --- .../viewcontrollers/statusbar/StatusBarPresenter.kt | 6 +++++- .../viewcontrollers/viewcontroller/ViewController.java | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/statusbar/StatusBarPresenter.kt b/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/statusbar/StatusBarPresenter.kt index 6b060ed4dc6..b624e323d99 100644 --- a/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/statusbar/StatusBarPresenter.kt +++ b/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/statusbar/StatusBarPresenter.kt @@ -120,7 +120,11 @@ class StatusBarPresenter private constructor( private fun setStatusBarVisible(viewController: ViewController<*>, visible: Bool) { val window = window.get() ?: return - val view = if (viewController.view != null) viewController.view else window.decorView + val view = if (viewController.isViewCreated) { + viewController.view ?: window.decorView + } else { + window.decorView + } if (visible.isFalse) { hideStatusBar(window, view) } else { diff --git a/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/viewcontroller/ViewController.java b/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/viewcontroller/ViewController.java index 32f90d47db2..c62d77d6b0f 100644 --- a/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/viewcontroller/ViewController.java +++ b/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/viewcontroller/ViewController.java @@ -147,7 +147,7 @@ public void ensureViewIsCreated() { getView(); } - protected boolean isViewCreated() { + public boolean isViewCreated() { return view != null; }