package com.swmansion.rnscreens import com.facebook.react.bridge.ReactContext import com.facebook.react.uimanager.LayoutShadowNode import com.facebook.react.uimanager.NativeViewHierarchyManager import com.facebook.react.uimanager.NativeViewHierarchyOptimizer import com.facebook.react.uimanager.UIManagerModule internal class ScreensShadowNode(private var mContext: ReactContext) : LayoutShadowNode() { override fun onBeforeLayout(nativeViewHierarchyOptimizer: NativeViewHierarchyOptimizer) { super.onBeforeLayout(nativeViewHierarchyOptimizer) (mContext.getNativeModule(UIManagerModule::class.java))?.addUIBlock { nativeViewHierarchyManager: NativeViewHierarchyManager -> val view = nativeViewHierarchyManager.resolveView(reactTag) if (view is ScreenContainer) { view.performUpdates() } } } }