1*66d4122eSKudo Chiendiff --git a/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaView.kt b/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaView.kt
2*66d4122eSKudo Chienindex ca5646c..fa9c68c 100644
3*66d4122eSKudo Chien--- a/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaView.kt
4*66d4122eSKudo Chien+++ b/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaView.kt
5*66d4122eSKudo Chien@@ -5,27 +5,21 @@ import android.util.Log
6*66d4122eSKudo Chien import android.view.View
7*66d4122eSKudo Chien import android.view.ViewTreeObserver
8*66d4122eSKudo Chien import com.facebook.react.bridge.Arguments
9*66d4122eSKudo Chien-import com.facebook.react.uimanager.FabricViewStateManager
10*66d4122eSKudo Chien-import com.facebook.react.uimanager.FabricViewStateManager.HasFabricViewStateManager
11*66d4122eSKudo Chien+import com.facebook.react.uimanager.StateWrapper
12*66d4122eSKudo Chien import com.facebook.react.uimanager.UIManagerModule
13*66d4122eSKudo Chien import com.facebook.react.views.view.ReactViewGroup
14*66d4122eSKudo Chien-import java.util.*
15*66d4122eSKudo Chien import java.util.concurrent.locks.ReentrantLock
16*66d4122eSKudo Chien import kotlin.concurrent.withLock
17*66d4122eSKudo Chien
18*66d4122eSKudo Chien private const val MAX_WAIT_TIME_NANO = 500000000L // 500ms
19*66d4122eSKudo Chien
20*66d4122eSKudo Chien class SafeAreaView(context: Context?) :
21*66d4122eSKudo Chien-    ReactViewGroup(context), ViewTreeObserver.OnPreDrawListener, HasFabricViewStateManager {
22*66d4122eSKudo Chien+    ReactViewGroup(context), ViewTreeObserver.OnPreDrawListener {
23*66d4122eSKudo Chien   private var mMode = SafeAreaViewMode.PADDING
24*66d4122eSKudo Chien   private var mInsets: EdgeInsets? = null
25*66d4122eSKudo Chien   private var mEdges: SafeAreaViewEdges? = null
26*66d4122eSKudo Chien   private var mProviderView: View? = null
27*66d4122eSKudo Chien-  private val mFabricViewStateManager = FabricViewStateManager()
28*66d4122eSKudo Chien-
29*66d4122eSKudo Chien-  override fun getFabricViewStateManager(): FabricViewStateManager {
30*66d4122eSKudo Chien-    return mFabricViewStateManager
31*66d4122eSKudo Chien-  }
32*66d4122eSKudo Chien+  var stateWrapper: StateWrapper? = null
33*66d4122eSKudo Chien
34*66d4122eSKudo Chien   private fun updateInsets() {
35*66d4122eSKudo Chien     val insets = mInsets
36*66d4122eSKudo Chien@@ -37,12 +31,10 @@ class SafeAreaView(context: Context?) :
37*66d4122eSKudo Chien                   SafeAreaViewEdgeModes.ADDITIVE,
38*66d4122eSKudo Chien                   SafeAreaViewEdgeModes.ADDITIVE,
39*66d4122eSKudo Chien                   SafeAreaViewEdgeModes.ADDITIVE)
40*66d4122eSKudo Chien-      if (mFabricViewStateManager.hasStateWrapper()) {
41*66d4122eSKudo Chien-        mFabricViewStateManager.setState {
42*66d4122eSKudo Chien-          val map = Arguments.createMap()
43*66d4122eSKudo Chien-          map.putMap("insets", edgeInsetsToJsMap(insets))
44*66d4122eSKudo Chien-          map
45*66d4122eSKudo Chien-        }
46*66d4122eSKudo Chien+      if (stateWrapper != null) {
47*66d4122eSKudo Chien+        val map = Arguments.createMap()
48*66d4122eSKudo Chien+        map.putMap("insets", edgeInsetsToJsMap(insets))
49*66d4122eSKudo Chien+        stateWrapper?.updateState(map)
50*66d4122eSKudo Chien       } else {
51*66d4122eSKudo Chien         val localData = SafeAreaViewLocalData(insets = insets, mode = mMode, edges = edges)
52*66d4122eSKudo Chien         val reactContext = getReactContext(this)
53*66d4122eSKudo Chiendiff --git a/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaViewManager.kt b/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaViewManager.kt
54*66d4122eSKudo Chienindex 114e892..41082b1 100644
55*66d4122eSKudo Chien--- a/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaViewManager.kt
56*66d4122eSKudo Chien+++ b/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaViewManager.kt
57*66d4122eSKudo Chien@@ -64,7 +64,7 @@ class SafeAreaViewManager : ReactViewManager(), RNCSafeAreaViewManagerInterface<
58*66d4122eSKudo Chien       props: ReactStylesDiffMap?,
59*66d4122eSKudo Chien       stateWrapper: StateWrapper?
60*66d4122eSKudo Chien   ): Any? {
61*66d4122eSKudo Chien-    (view as SafeAreaView).fabricViewStateManager.setStateWrapper(stateWrapper)
62*66d4122eSKudo Chien+    (view as SafeAreaView).stateWrapper = stateWrapper
63*66d4122eSKudo Chien     return null
64*66d4122eSKudo Chien   }
65*66d4122eSKudo Chien
66