From 0545a7ea5389de99ab82a0a68166e6e0b9ad8bef Mon Sep 17 00:00:00 2001 From: tboba Date: Wed, 6 Sep 2023 14:37:35 +0200 Subject: [PATCH 1/2] Change implementation of `headerConfig` prop on Android --- .../src/main/java/com/swmansion/rnscreens/Screen.kt | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/android/src/main/java/com/swmansion/rnscreens/Screen.kt b/android/src/main/java/com/swmansion/rnscreens/Screen.kt index dac3ac9013..9957e9132a 100644 --- a/android/src/main/java/com/swmansion/rnscreens/Screen.kt +++ b/android/src/main/java/com/swmansion/rnscreens/Screen.kt @@ -8,6 +8,7 @@ import android.util.SparseArray import android.view.ViewGroup import android.view.WindowManager import android.webkit.WebView +import androidx.core.view.children import com.facebook.react.bridge.GuardedRunnable import com.facebook.react.bridge.ReactContext import com.facebook.react.uimanager.UIManagerModule @@ -84,7 +85,15 @@ class Screen constructor(context: ReactContext?) : FabricEnabledViewGroup(contex } val headerConfig: ScreenStackHeaderConfig? - get() = getChildAt(0) as? ScreenStackHeaderConfig + get() { + for (child in children) { + if (child is ScreenStackHeaderConfig) { + return child + } + } + + return null + } /** * While transitioning this property allows to optimize rendering behavior on Android and provide From 74c4f962631dfc1b0b0e6c95a8cf025b6032245b Mon Sep 17 00:00:00 2001 From: tboba Date: Wed, 6 Sep 2023 14:59:21 +0200 Subject: [PATCH 2/2] Kotlinize for declaration --- .../src/main/java/com/swmansion/rnscreens/Screen.kt | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/android/src/main/java/com/swmansion/rnscreens/Screen.kt b/android/src/main/java/com/swmansion/rnscreens/Screen.kt index 9957e9132a..15301b5276 100644 --- a/android/src/main/java/com/swmansion/rnscreens/Screen.kt +++ b/android/src/main/java/com/swmansion/rnscreens/Screen.kt @@ -85,15 +85,7 @@ class Screen constructor(context: ReactContext?) : FabricEnabledViewGroup(contex } val headerConfig: ScreenStackHeaderConfig? - get() { - for (child in children) { - if (child is ScreenStackHeaderConfig) { - return child - } - } - - return null - } + get() = children.find { it is ScreenStackHeaderConfig } as? ScreenStackHeaderConfig /** * While transitioning this property allows to optimize rendering behavior on Android and provide