From 153a2641b4914280f066100da45d7fb9d66ce63b Mon Sep 17 00:00:00 2001 From: Arushi Kesarwani Date: Fri, 10 Nov 2023 02:30:18 -0800 Subject: [PATCH] Refactor ReactNativeHost to add UIManagerProvider (#41383) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/41383 Refactor `ReactNativeHost` to add the APIs for `UIManagerProvider`. Reviewed By: christophpurrer, philIip Differential Revision: D51120159 fbshipit-source-id: 3d9b384e3fb2f5420c5ea28f43c4147a1425d137 --- .../src/main/java/com/facebook/react/ReactNativeHost.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java index e1e0564c10f..3f1fb6f9462 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java @@ -14,6 +14,7 @@ import com.facebook.react.bridge.JSIModulePackage; import com.facebook.react.bridge.JavaScriptExecutorFactory; import com.facebook.react.bridge.ReactMarker; import com.facebook.react.bridge.ReactMarkerConstants; +import com.facebook.react.bridge.UIManagerProvider; import com.facebook.react.common.LifecycleState; import com.facebook.react.common.SurfaceDelegate; import com.facebook.react.common.SurfaceDelegateFactory; @@ -85,6 +86,7 @@ public abstract class ReactNativeHost { .setRedBoxHandler(getRedBoxHandler()) .setJavaScriptExecutorFactory(getJavaScriptExecutorFactory()) .setJSIModulesPackage(getJSIModulePackage()) + .setUIManagerProvider(getUIManagerProvider()) .setInitialLifecycleState(LifecycleState.BEFORE_CREATE) .setReactPackageTurboModuleManagerDelegateBuilder( getReactPackageTurboModuleManagerDelegateBuilder()) @@ -129,6 +131,10 @@ public abstract class ReactNativeHost { return null; } + protected @Nullable UIManagerProvider getUIManagerProvider() { + return reactApplicationContext -> null; + } + /** Returns whether or not to treat it as normal if Activity is null. */ public boolean getShouldRequireActivity() { return true;