From d78c242e4d86f2d16aa86c7cff07e823e99c5317 Mon Sep 17 00:00:00 2001 From: Tim Yung Date: Thu, 17 Jul 2025 12:59:13 -0700 Subject: [PATCH] RN: Enable `enableVirtualViewRenderState` by Default (#52686) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/52686 Enables the `enableVirtualViewRenderState` feature flag by default. Also, fixed classification for this and the `enableVirtualViewWindowFocusDetection` feature flags. (They were incorrect.) Changelog: [Internal] Reviewed By: lunaleaps Differential Revision: D78500846 fbshipit-source-id: 099adaa4ed0026c8bb7438df869564d76a999007 --- .../featureflags/ReactNativeFeatureFlagsDefaults.kt | 4 ++-- .../react/featureflags/ReactNativeFeatureFlagsDefaults.h | 4 ++-- .../featureflags/ReactNativeFeatureFlags.config.js | 8 +++++--- .../src/private/featureflags/ReactNativeFeatureFlags.js | 4 ++-- 4 files changed, 11 insertions(+), 9 deletions(-) diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt index b114b19fca2..cded63ed746 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt @@ -4,7 +4,7 @@ * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * - * @generated SignedSource<<99019349a8f3642c42e6dac5f1476e7f>> + * @generated SignedSource<> */ /** @@ -101,7 +101,7 @@ public open class ReactNativeFeatureFlagsDefaults : ReactNativeFeatureFlagsProvi override fun enableVirtualViewDebugFeatures(): Boolean = false - override fun enableVirtualViewRenderState(): Boolean = false + override fun enableVirtualViewRenderState(): Boolean = true override fun enableVirtualViewWindowFocusDetection(): Boolean = false diff --git a/packages/react-native/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h b/packages/react-native/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h index 02bc59418b3..b90760e874f 100644 --- a/packages/react-native/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +++ b/packages/react-native/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h @@ -4,7 +4,7 @@ * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * - * @generated SignedSource<> + * @generated SignedSource<<614fe0894f6235d879a0b29e7dab7759>> */ /** @@ -184,7 +184,7 @@ class ReactNativeFeatureFlagsDefaults : public ReactNativeFeatureFlagsProvider { } bool enableVirtualViewRenderState() override { - return false; + return true; } bool enableVirtualViewWindowFocusDetection() override { diff --git a/packages/react-native/scripts/featureflags/ReactNativeFeatureFlags.config.js b/packages/react-native/scripts/featureflags/ReactNativeFeatureFlags.config.js index fca0d50a93a..97733068a39 100644 --- a/packages/react-native/scripts/featureflags/ReactNativeFeatureFlags.config.js +++ b/packages/react-native/scripts/featureflags/ReactNativeFeatureFlags.config.js @@ -462,22 +462,24 @@ const definitions: FeatureFlagDefinitions = { ossReleaseStage: 'none', }, enableVirtualViewRenderState: { - defaultValue: false, + defaultValue: true, metadata: { + dateAdded: '2025-06-25', description: 'Enables reading render state when dispatching VirtualView events.', expectedReleaseValue: true, - purpose: 'operational', + purpose: 'experimentation', }, ossReleaseStage: 'none', }, enableVirtualViewWindowFocusDetection: { defaultValue: false, metadata: { + dateAdded: '2025-06-24', description: 'Enables window focus detection for prioritizing VirtualView events.', expectedReleaseValue: true, - purpose: 'operational', + purpose: 'experimentation', }, ossReleaseStage: 'none', }, diff --git a/packages/react-native/src/private/featureflags/ReactNativeFeatureFlags.js b/packages/react-native/src/private/featureflags/ReactNativeFeatureFlags.js index d5d72cac560..4e390c88f5b 100644 --- a/packages/react-native/src/private/featureflags/ReactNativeFeatureFlags.js +++ b/packages/react-native/src/private/featureflags/ReactNativeFeatureFlags.js @@ -4,7 +4,7 @@ * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * - * @generated SignedSource<> + * @generated SignedSource<> * @flow strict * @noformat */ @@ -334,7 +334,7 @@ export const enableVirtualViewDebugFeatures: Getter = createNativeFlagG /** * Enables reading render state when dispatching VirtualView events. */ -export const enableVirtualViewRenderState: Getter = createNativeFlagGetter('enableVirtualViewRenderState', false); +export const enableVirtualViewRenderState: Getter = createNativeFlagGetter('enableVirtualViewRenderState', true); /** * Enables window focus detection for prioritizing VirtualView events. */