From fc9fcb597672957aba8cf9f2cc778ba4abebb09c Mon Sep 17 00:00:00 2001 From: David Vacca Date: Thu, 26 Sep 2024 14:23:04 -0700 Subject: [PATCH] Fix initialization of FeatureFlags in DefaultNewArchitectureEntryPoint (#46681) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/46681 Fix initialization of FeatureFlags in DefaultNewArchitectureEntryPoint D60364016 introduced a bug, disabling Fabric and TurboModules when DefaultNewArchitectureEntryPoint is initialized with bridgless disabled changelog: [internal] internal Reviewed By: shwanton Differential Revision: D63474698 fbshipit-source-id: 8b5aaeeda564d3463d13448b0adc7e964015000e --- .../DefaultNewArchitectureEntryPoint.kt | 22 +++++++++---------- 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt index 42dc49a0ffd..f90ad0246a3 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt @@ -39,21 +39,19 @@ public object DefaultNewArchitectureEntryPoint { error(errorMessage) } - if (bridgelessEnabled) { - ReactNativeFeatureFlags.override( - object : ReactNativeNewArchitectureFeatureFlagsDefaults() { - override fun useFabricInterop(): Boolean = fabricEnabled + ReactNativeFeatureFlags.override( + object : ReactNativeNewArchitectureFeatureFlagsDefaults(bridgelessEnabled) { + override fun useFabricInterop(): Boolean = bridgelessEnabled || fabricEnabled - override fun enableFabricRenderer(): Boolean = fabricEnabled + override fun enableFabricRenderer(): Boolean = bridgelessEnabled || fabricEnabled - // We turn this feature flag to true for OSS to fix #44610 and #45126 and other - // similar bugs related to pressable. - override fun enableEventEmitterRetentionDuringGesturesOnAndroid(): Boolean = - fabricEnabled + // We turn this feature flag to true for OSS to fix #44610 and #45126 and other + // similar bugs related to pressable. + override fun enableEventEmitterRetentionDuringGesturesOnAndroid(): Boolean = + bridgelessEnabled || fabricEnabled - override fun useTurboModules(): Boolean = turboModulesEnabled - }) - } + override fun useTurboModules(): Boolean = bridgelessEnabled || turboModulesEnabled + }) privateFabricEnabled = fabricEnabled privateTurboModulesEnabled = turboModulesEnabled