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