react-native 0.84.0-nightly-20251106-de5141a3d → 0.84.0-nightly-20251108-7486a2bc5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Libraries/Animated/createAnimatedComponent.js +1 -0
- package/Libraries/Blob/RCTBlobManager.mm +1 -4
- package/Libraries/Blob/RCTBlobPlugins.mm +14 -14
- package/Libraries/Blob/RCTFileReaderModule.mm +1 -4
- package/Libraries/Components/Button.js +0 -3
- package/Libraries/Core/ReactNativeVersion.js +1 -1
- package/Libraries/Image/RCTBundleAssetImageLoader.mm +1 -4
- package/Libraries/Image/RCTGIFImageDecoder.mm +1 -4
- package/Libraries/Image/RCTImageEditingManager.mm +1 -4
- package/Libraries/Image/RCTImageLoader.mm +1 -4
- package/Libraries/Image/RCTImagePlugins.h +1 -0
- package/Libraries/Image/RCTImagePlugins.mm +30 -17
- package/Libraries/Image/RCTImageStoreManager.mm +1 -4
- package/Libraries/Image/RCTImageViewManager.mm +1 -4
- package/Libraries/Image/RCTLocalAssetImageLoader.mm +1 -4
- package/Libraries/LinkingIOS/RCTLinkingManager.mm +1 -4
- package/Libraries/LinkingIOS/RCTLinkingPlugins.mm +10 -13
- package/Libraries/LogBox/Data/LogBoxData.js +31 -4
- package/Libraries/NativeAnimation/RCTAnimationPlugins.mm +14 -14
- package/Libraries/NativeAnimation/RCTNativeAnimatedModule.mm +1 -4
- package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +1 -4
- package/Libraries/Network/RCTDataRequestHandler.mm +1 -4
- package/Libraries/Network/RCTFileRequestHandler.mm +1 -4
- package/Libraries/Network/RCTHTTPRequestHandler.mm +1 -4
- package/Libraries/Network/RCTNetworkPlugins.mm +22 -16
- package/Libraries/Network/RCTNetworking.mm +1 -4
- package/Libraries/PushNotificationIOS/RCTPushNotificationManager.mm +1 -4
- package/Libraries/PushNotificationIOS/RCTPushNotificationPlugins.mm +10 -13
- package/Libraries/Settings/RCTSettingsManager.mm +1 -4
- package/Libraries/Settings/RCTSettingsPlugins.mm +10 -13
- package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +2 -2
- package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +4 -2
- package/Libraries/Text/BaseText/RCTBaseTextViewManager.mm +1 -4
- package/Libraries/Text/RawText/RCTRawTextViewManager.mm +1 -4
- package/Libraries/Text/Text/RCTTextViewManager.mm +1 -4
- package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputViewManager.mm +1 -4
- package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm +1 -4
- package/Libraries/Text/TextInput/RCTInputAccessoryViewManager.mm +1 -4
- package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputViewManager.mm +1 -4
- package/Libraries/Text/VirtualText/RCTVirtualTextViewManager.mm +1 -4
- package/Libraries/Vibration/RCTVibration.mm +1 -4
- package/Libraries/Vibration/RCTVibrationPlugins.mm +10 -13
- package/React/Base/RCTVersion.m +1 -1
- package/React/CoreModules/CoreModulesPlugins.mm +98 -35
- package/React/CoreModules/RCTAccessibilityManager.mm +1 -4
- package/React/CoreModules/RCTActionSheetManager.mm +1 -4
- package/React/CoreModules/RCTAlertManager.mm +1 -4
- package/React/CoreModules/RCTAppState.mm +1 -4
- package/React/CoreModules/RCTAppearance.mm +1 -4
- package/React/CoreModules/RCTClipboard.mm +1 -4
- package/React/CoreModules/RCTDevLoadingView.mm +1 -4
- package/React/CoreModules/RCTDevMenu.mm +1 -4
- package/React/CoreModules/RCTDevSettings.mm +1 -4
- package/React/CoreModules/RCTDevToolsRuntimeSettingsModule.mm +1 -5
- package/React/CoreModules/RCTDeviceInfo.mm +1 -4
- package/React/CoreModules/RCTEventDispatcher.mm +1 -4
- package/React/CoreModules/RCTExceptionsManager.mm +1 -4
- package/React/CoreModules/RCTI18nManager.mm +1 -4
- package/React/CoreModules/RCTKeyboardObserver.mm +1 -4
- package/React/CoreModules/RCTLogBox.mm +1 -4
- package/React/CoreModules/RCTPerfMonitor.mm +1 -4
- package/React/CoreModules/RCTPlatform.mm +1 -4
- package/React/CoreModules/RCTRedBox.mm +1 -4
- package/React/CoreModules/RCTSourceCode.mm +1 -4
- package/React/CoreModules/RCTStatusBarManager.mm +1 -4
- package/React/CoreModules/RCTTiming.mm +1 -4
- package/React/CoreModules/RCTWebSocketModule.mm +1 -4
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +16 -0
- package/React/Modules/RCTUIManager.mm +1 -4
- package/React/Views/RCTActivityIndicatorViewManager.m +1 -4
- package/React/Views/RCTDebuggingOverlayManager.m +1 -4
- package/React/Views/RCTModalHostViewManager.m +1 -4
- package/React/Views/RCTModalManager.m +1 -4
- package/React/Views/RCTSwitchManager.m +1 -4
- package/React/Views/RCTViewManager.m +1 -4
- package/React/Views/RefreshControl/RCTRefreshControlManager.m +1 -4
- package/React/Views/SafeAreaView/RCTSafeAreaViewManager.m +1 -4
- package/React/Views/ScrollView/RCTScrollContentViewManager.m +1 -4
- package/React/Views/ScrollView/RCTScrollViewManager.m +1 -4
- package/ReactAndroid/api/ReactAndroid.api +0 -13
- package/ReactAndroid/gradle.properties +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageTurboModuleManagerDelegate.kt +2 -3
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +2 -6
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.kt +1 -16
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +13 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +21 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +5 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +5 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +23 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +5 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManager.kt +2 -35
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +4 -5
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainerStateExperimental.kt +7 -0
- package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +12 -0
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +29 -1
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +7 -1
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +3 -13
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +1 -4
- package/ReactAndroid/src/main/jni/react/jni/CxxModuleWrapperBase.h +0 -24
- package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +0 -1
- package/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.cpp +1 -29
- package/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.h +1 -2
- package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +0 -2
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp +8 -1
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +2 -1
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.cpp +1 -35
- package/ReactAndroid/src/main/jni/third-party/folly/CMakeLists.txt +1 -0
- package/ReactApple/RCTAnimatedModuleProvider/RCTAnimatedModuleProvider.mm +29 -4
- package/ReactCommon/cxxreact/ReactMarker.cpp +0 -1
- package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
- package/ReactCommon/jsiexecutor/CMakeLists.txt +3 -1
- package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +2 -0
- package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +0 -40
- package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.h +1 -6
- package/ReactCommon/jsinspector-modern/ConsoleTask.cpp +27 -0
- package/ReactCommon/jsinspector-modern/ConsoleTask.h +38 -0
- package/ReactCommon/jsinspector-modern/ConsoleTaskContext.cpp +46 -0
- package/ReactCommon/jsinspector-modern/ConsoleTaskContext.h +102 -0
- package/ReactCommon/jsinspector-modern/ConsoleTaskOrchestrator.cpp +55 -0
- package/ReactCommon/jsinspector-modern/ConsoleTaskOrchestrator.h +48 -0
- package/ReactCommon/jsinspector-modern/HostTarget.h +8 -2
- package/ReactCommon/jsinspector-modern/HostTargetTraceRecording.cpp +6 -2
- package/ReactCommon/jsinspector-modern/HostTargetTraceRecording.h +15 -5
- package/ReactCommon/jsinspector-modern/HostTargetTracing.cpp +9 -5
- package/ReactCommon/jsinspector-modern/RuntimeAgent.cpp +3 -2
- package/ReactCommon/jsinspector-modern/RuntimeAgent.h +1 -1
- package/ReactCommon/jsinspector-modern/RuntimeTarget.cpp +12 -0
- package/ReactCommon/jsinspector-modern/RuntimeTarget.h +16 -13
- package/ReactCommon/jsinspector-modern/RuntimeTargetConsole.cpp +106 -1
- package/ReactCommon/jsinspector-modern/TracingAgent.cpp +19 -2
- package/ReactCommon/jsinspector-modern/tests/ConsoleCreateTaskTest.cpp +131 -0
- package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.cpp +1 -0
- package/ReactCommon/jsinspector-modern/tests/TracingTest.cpp +59 -0
- package/ReactCommon/jsinspector-modern/tests/TracingTest.h +20 -7
- package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.cpp +32 -20
- package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.h +6 -2
- package/ReactCommon/jsinspector-modern/tracing/TargetTracingAgent.h +5 -0
- package/ReactCommon/jsinspector-modern/tracing/TraceEvent.h +2 -1
- package/ReactCommon/jsinspector-modern/tracing/TraceEventSerializer.cpp +2 -1
- package/ReactCommon/jsinspector-modern/tracing/TraceRecordingState.h +3 -0
- package/ReactCommon/jsinspector-modern/tracing/TracingCategory.h +126 -0
- package/ReactCommon/jsitooling/react/runtime/JSRuntimeBindings.cpp +54 -0
- package/ReactCommon/jsitooling/react/runtime/JSRuntimeBindings.h +20 -0
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +9 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +11 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +113 -77
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +6 -2
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +9 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +19 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +3 -1
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm +0 -1
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +11 -1
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +5 -1
- package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.mm +1 -4
- package/ReactCommon/react/performance/timeline/CMakeLists.txt +1 -0
- package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +9 -1
- package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +1 -0
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp +24 -19
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManagerProvider.cpp +11 -6
- package/ReactCommon/react/renderer/animationbackend/AnimationBackend.cpp +67 -32
- package/ReactCommon/react/renderer/animationbackend/AnimationBackend.h +14 -2
- package/ReactCommon/react/renderer/core/EventDispatcher.cpp +1 -1
- package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +3 -3
- package/ReactCommon/react/runtime/ReactInstance.cpp +8 -6
- package/ReactCommon/react/runtime/ReactInstance.h +0 -1
- package/ReactCommon/react/runtime/TimerManager.cpp +0 -54
- package/ReactCommon/react/runtime/TimerManager.h +0 -12
- package/flow/bom.js.flow +7 -0
- package/package.json +8 -8
- package/scripts/ios-configure-glog.sh +6 -1
- package/src/private/featureflags/ReactNativeFeatureFlags.js +11 -1
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +3 -1
- package/types_generated/Libraries/Components/Button.d.ts +1 -4
- package/types_generated/Libraries/StyleSheet/PlatformColorValueTypes.d.ts +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapper.kt +0 -25
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapperBase.kt +0 -61
- package/ReactAndroid/src/main/jni/react/jni/CxxModuleWrapper.h +0 -37
|
@@ -680,19 +680,6 @@ public final class com/facebook/react/bridge/CxxCallbackImpl : com/facebook/jni/
|
|
|
680
680
|
public fun invoke ([Ljava/lang/Object;)V
|
|
681
681
|
}
|
|
682
682
|
|
|
683
|
-
public class com/facebook/react/bridge/CxxModuleWrapper : com/facebook/react/bridge/CxxModuleWrapperBase {
|
|
684
|
-
protected fun <init> (Lcom/facebook/jni/HybridData;)V
|
|
685
|
-
}
|
|
686
|
-
|
|
687
|
-
public class com/facebook/react/bridge/CxxModuleWrapperBase : com/facebook/react/bridge/NativeModule {
|
|
688
|
-
protected fun <init> (Lcom/facebook/jni/HybridData;)V
|
|
689
|
-
public fun canOverrideExistingModule ()Z
|
|
690
|
-
public fun getName ()Ljava/lang/String;
|
|
691
|
-
public fun initialize ()V
|
|
692
|
-
public fun invalidate ()V
|
|
693
|
-
protected final fun resetModule (Lcom/facebook/jni/HybridData;)V
|
|
694
|
-
}
|
|
695
|
-
|
|
696
683
|
public final class com/facebook/react/bridge/DefaultJSExceptionHandler : com/facebook/react/bridge/JSExceptionHandler {
|
|
697
684
|
public fun <init> ()V
|
|
698
685
|
public fun handleException (Ljava/lang/Exception;)V
|
package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageTurboModuleManagerDelegate.kt
CHANGED
|
@@ -8,7 +8,6 @@
|
|
|
8
8
|
package com.facebook.react
|
|
9
9
|
|
|
10
10
|
import com.facebook.jni.HybridData
|
|
11
|
-
import com.facebook.react.bridge.CxxModuleWrapper
|
|
12
11
|
import com.facebook.react.bridge.ModuleSpec
|
|
13
12
|
import com.facebook.react.bridge.NativeModule
|
|
14
13
|
import com.facebook.react.bridge.ReactApplicationContext
|
|
@@ -103,7 +102,7 @@ public abstract class ReactPackageTurboModuleManagerDelegate : TurboModuleManage
|
|
|
103
102
|
moduleClass.name,
|
|
104
103
|
reactModule.canOverrideExistingModule,
|
|
105
104
|
true,
|
|
106
|
-
|
|
105
|
+
false,
|
|
107
106
|
ReactModuleInfo.classIsTurboModule(moduleClass),
|
|
108
107
|
)
|
|
109
108
|
else
|
|
@@ -112,7 +111,7 @@ public abstract class ReactPackageTurboModuleManagerDelegate : TurboModuleManage
|
|
|
112
111
|
moduleClass.name,
|
|
113
112
|
module.canOverrideExistingModule(),
|
|
114
113
|
true,
|
|
115
|
-
|
|
114
|
+
false,
|
|
116
115
|
ReactModuleInfo.classIsTurboModule(moduleClass),
|
|
117
116
|
)
|
|
118
117
|
|
|
@@ -157,7 +157,6 @@ public class CatalystInstanceImpl implements CatalystInstance {
|
|
|
157
157
|
mReactQueueConfiguration.getJSQueueThread(),
|
|
158
158
|
mNativeModulesQueueThread,
|
|
159
159
|
mNativeModuleRegistry.getJavaModules(this),
|
|
160
|
-
mNativeModuleRegistry.getCxxModules(),
|
|
161
160
|
mInspectorTarget);
|
|
162
161
|
FLog.d(ReactConstants.TAG, "Initializing React Xplat Bridge after initializeBridge");
|
|
163
162
|
Systrace.endSection(TRACE_TAG_REACT);
|
|
@@ -212,13 +211,11 @@ public class CatalystInstanceImpl implements CatalystInstance {
|
|
|
212
211
|
// Extend the Java-visible registry of modules
|
|
213
212
|
mNativeModuleRegistry.registerModules(modules);
|
|
214
213
|
Collection<JavaModuleWrapper> javaModules = modules.getJavaModules(this);
|
|
215
|
-
Collection<ModuleHolder> cxxModules = modules.getCxxModules();
|
|
216
214
|
// Extend the Cxx-visible registry of modules wrapped in appropriate interfaces
|
|
217
|
-
jniExtendNativeModules(javaModules
|
|
215
|
+
jniExtendNativeModules(javaModules);
|
|
218
216
|
}
|
|
219
217
|
|
|
220
|
-
private native void jniExtendNativeModules(
|
|
221
|
-
Collection<JavaModuleWrapper> javaModules, Collection<ModuleHolder> cxxModules);
|
|
218
|
+
private native void jniExtendNativeModules(Collection<JavaModuleWrapper> javaModules);
|
|
222
219
|
|
|
223
220
|
private native void initializeBridge(
|
|
224
221
|
InstanceCallback callback,
|
|
@@ -226,7 +223,6 @@ public class CatalystInstanceImpl implements CatalystInstance {
|
|
|
226
223
|
MessageQueueThread jsQueue,
|
|
227
224
|
MessageQueueThread moduleQueue,
|
|
228
225
|
Collection<JavaModuleWrapper> javaModules,
|
|
229
|
-
Collection<ModuleHolder> cxxModules,
|
|
230
226
|
@Nullable ReactInstanceManagerInspectorTarget inspectorTarget);
|
|
231
227
|
|
|
232
228
|
@Override
|
|
@@ -60,7 +60,7 @@ public class ModuleHolder {
|
|
|
60
60
|
nativeModule.javaClass.simpleName,
|
|
61
61
|
nativeModule.canOverrideExistingModule(),
|
|
62
62
|
true,
|
|
63
|
-
|
|
63
|
+
false,
|
|
64
64
|
ReactModuleInfo.classIsTurboModule(nativeModule.javaClass),
|
|
65
65
|
)
|
|
66
66
|
|
|
@@ -108,7 +108,7 @@ public class ModuleHolder {
|
|
|
108
108
|
get() = reactModuleInfo.isTurboModule
|
|
109
109
|
|
|
110
110
|
public val isCxxModule: Boolean
|
|
111
|
-
get() =
|
|
111
|
+
get() = false
|
|
112
112
|
|
|
113
113
|
public val className: String
|
|
114
114
|
get() = reactModuleInfo.className
|
|
@@ -36,25 +36,10 @@ public class NativeModuleRegistry(
|
|
|
36
36
|
@JvmName("getJavaModules") // This is needed because this method is accessed by JNI
|
|
37
37
|
internal fun getJavaModules(jsInstance: JSInstance): List<JavaModuleWrapper> = buildList {
|
|
38
38
|
for ((_, value) in modules) {
|
|
39
|
-
|
|
40
|
-
add(JavaModuleWrapper(jsInstance, value))
|
|
41
|
-
}
|
|
39
|
+
add(JavaModuleWrapper(jsInstance, value))
|
|
42
40
|
}
|
|
43
41
|
}
|
|
44
42
|
|
|
45
|
-
@get:JvmName(
|
|
46
|
-
"getCxxModules"
|
|
47
|
-
) // This is needed till there are Java Consumer of this API inside React
|
|
48
|
-
// Native
|
|
49
|
-
internal val cxxModules: List<ModuleHolder>
|
|
50
|
-
get() = buildList {
|
|
51
|
-
for ((_, value) in modules) {
|
|
52
|
-
if (value.isCxxModule) {
|
|
53
|
-
add(value)
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
|
|
58
43
|
/** Adds any new modules to the current module registry */
|
|
59
44
|
@JvmName(
|
|
60
45
|
"registerModules"
|
|
@@ -1485,7 +1485,7 @@ public class FabricUIManager
|
|
|
1485
1485
|
mBinding.driveCxxAnimations();
|
|
1486
1486
|
}
|
|
1487
1487
|
|
|
1488
|
-
if (mBinding != null) {
|
|
1488
|
+
if (!ReactNativeFeatureFlags.disableViewPreallocationAndroid() && mBinding != null) {
|
|
1489
1489
|
mBinding.drainPreallocateViewsQueue();
|
|
1490
1490
|
}
|
|
1491
1491
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<01feab16132bc07b79b359178e322327>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -66,6 +66,12 @@ public object ReactNativeFeatureFlags {
|
|
|
66
66
|
@JvmStatic
|
|
67
67
|
public fun disableFabricCommitInCXXAnimated(): Boolean = accessor.disableFabricCommitInCXXAnimated()
|
|
68
68
|
|
|
69
|
+
/**
|
|
70
|
+
* Force disable view preallocation for images triggered from createNode off the main thread on Android
|
|
71
|
+
*/
|
|
72
|
+
@JvmStatic
|
|
73
|
+
public fun disableImageViewPreallocationAndroid(): Boolean = accessor.disableImageViewPreallocationAndroid()
|
|
74
|
+
|
|
69
75
|
/**
|
|
70
76
|
* Prevent FabricMountingManager from reordering mountItems, which may lead to invalid state on the UI thread
|
|
71
77
|
*/
|
|
@@ -90,6 +96,12 @@ public object ReactNativeFeatureFlags {
|
|
|
90
96
|
@JvmStatic
|
|
91
97
|
public fun disableTextLayoutManagerCacheAndroid(): Boolean = accessor.disableTextLayoutManagerCacheAndroid()
|
|
92
98
|
|
|
99
|
+
/**
|
|
100
|
+
* Force disable view preallocation triggered from createNode off the main thread on Android
|
|
101
|
+
*/
|
|
102
|
+
@JvmStatic
|
|
103
|
+
public fun disableViewPreallocationAndroid(): Boolean = accessor.disableViewPreallocationAndroid()
|
|
104
|
+
|
|
93
105
|
/**
|
|
94
106
|
* When enabled, the accessibilityOrder prop will propagate to native platforms and define the accessibility order.
|
|
95
107
|
*/
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<405bf283e4631e166cd57f5dfe30d5f9>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -26,10 +26,12 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
|
|
|
26
26
|
private var cxxNativeAnimatedRemoveJsSyncCache: Boolean? = null
|
|
27
27
|
private var disableEarlyViewCommandExecutionCache: Boolean? = null
|
|
28
28
|
private var disableFabricCommitInCXXAnimatedCache: Boolean? = null
|
|
29
|
+
private var disableImageViewPreallocationAndroidCache: Boolean? = null
|
|
29
30
|
private var disableMountItemReorderingAndroidCache: Boolean? = null
|
|
30
31
|
private var disableOldAndroidAttachmentMetricsWorkaroundsCache: Boolean? = null
|
|
31
32
|
private var disableSubviewClippingAndroidCache: Boolean? = null
|
|
32
33
|
private var disableTextLayoutManagerCacheAndroidCache: Boolean? = null
|
|
34
|
+
private var disableViewPreallocationAndroidCache: Boolean? = null
|
|
33
35
|
private var enableAccessibilityOrderCache: Boolean? = null
|
|
34
36
|
private var enableAccumulatedUpdatesInRawPropsAndroidCache: Boolean? = null
|
|
35
37
|
private var enableAndroidLinearTextCache: Boolean? = null
|
|
@@ -157,6 +159,15 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
|
|
|
157
159
|
return cached
|
|
158
160
|
}
|
|
159
161
|
|
|
162
|
+
override fun disableImageViewPreallocationAndroid(): Boolean {
|
|
163
|
+
var cached = disableImageViewPreallocationAndroidCache
|
|
164
|
+
if (cached == null) {
|
|
165
|
+
cached = ReactNativeFeatureFlagsCxxInterop.disableImageViewPreallocationAndroid()
|
|
166
|
+
disableImageViewPreallocationAndroidCache = cached
|
|
167
|
+
}
|
|
168
|
+
return cached
|
|
169
|
+
}
|
|
170
|
+
|
|
160
171
|
override fun disableMountItemReorderingAndroid(): Boolean {
|
|
161
172
|
var cached = disableMountItemReorderingAndroidCache
|
|
162
173
|
if (cached == null) {
|
|
@@ -193,6 +204,15 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
|
|
|
193
204
|
return cached
|
|
194
205
|
}
|
|
195
206
|
|
|
207
|
+
override fun disableViewPreallocationAndroid(): Boolean {
|
|
208
|
+
var cached = disableViewPreallocationAndroidCache
|
|
209
|
+
if (cached == null) {
|
|
210
|
+
cached = ReactNativeFeatureFlagsCxxInterop.disableViewPreallocationAndroid()
|
|
211
|
+
disableViewPreallocationAndroidCache = cached
|
|
212
|
+
}
|
|
213
|
+
return cached
|
|
214
|
+
}
|
|
215
|
+
|
|
196
216
|
override fun enableAccessibilityOrder(): Boolean {
|
|
197
217
|
var cached = enableAccessibilityOrderCache
|
|
198
218
|
if (cached == null) {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<bffd645aa55b941acff92ca4efe6192a>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -40,6 +40,8 @@ public object ReactNativeFeatureFlagsCxxInterop {
|
|
|
40
40
|
|
|
41
41
|
@DoNotStrip @JvmStatic public external fun disableFabricCommitInCXXAnimated(): Boolean
|
|
42
42
|
|
|
43
|
+
@DoNotStrip @JvmStatic public external fun disableImageViewPreallocationAndroid(): Boolean
|
|
44
|
+
|
|
43
45
|
@DoNotStrip @JvmStatic public external fun disableMountItemReorderingAndroid(): Boolean
|
|
44
46
|
|
|
45
47
|
@DoNotStrip @JvmStatic public external fun disableOldAndroidAttachmentMetricsWorkarounds(): Boolean
|
|
@@ -48,6 +50,8 @@ public object ReactNativeFeatureFlagsCxxInterop {
|
|
|
48
50
|
|
|
49
51
|
@DoNotStrip @JvmStatic public external fun disableTextLayoutManagerCacheAndroid(): Boolean
|
|
50
52
|
|
|
53
|
+
@DoNotStrip @JvmStatic public external fun disableViewPreallocationAndroid(): Boolean
|
|
54
|
+
|
|
51
55
|
@DoNotStrip @JvmStatic public external fun enableAccessibilityOrder(): Boolean
|
|
52
56
|
|
|
53
57
|
@DoNotStrip @JvmStatic public external fun enableAccumulatedUpdatesInRawPropsAndroid(): Boolean
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<a25d191472f7777804175ef9f56521d6>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -35,6 +35,8 @@ public open class ReactNativeFeatureFlagsDefaults : ReactNativeFeatureFlagsProvi
|
|
|
35
35
|
|
|
36
36
|
override fun disableFabricCommitInCXXAnimated(): Boolean = false
|
|
37
37
|
|
|
38
|
+
override fun disableImageViewPreallocationAndroid(): Boolean = false
|
|
39
|
+
|
|
38
40
|
override fun disableMountItemReorderingAndroid(): Boolean = false
|
|
39
41
|
|
|
40
42
|
override fun disableOldAndroidAttachmentMetricsWorkarounds(): Boolean = true
|
|
@@ -43,6 +45,8 @@ public open class ReactNativeFeatureFlagsDefaults : ReactNativeFeatureFlagsProvi
|
|
|
43
45
|
|
|
44
46
|
override fun disableTextLayoutManagerCacheAndroid(): Boolean = false
|
|
45
47
|
|
|
48
|
+
override fun disableViewPreallocationAndroid(): Boolean = false
|
|
49
|
+
|
|
46
50
|
override fun enableAccessibilityOrder(): Boolean = false
|
|
47
51
|
|
|
48
52
|
override fun enableAccumulatedUpdatesInRawPropsAndroid(): Boolean = false
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<e8531e8c374d0ea1e604a2f3d5000078>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -30,10 +30,12 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
|
|
|
30
30
|
private var cxxNativeAnimatedRemoveJsSyncCache: Boolean? = null
|
|
31
31
|
private var disableEarlyViewCommandExecutionCache: Boolean? = null
|
|
32
32
|
private var disableFabricCommitInCXXAnimatedCache: Boolean? = null
|
|
33
|
+
private var disableImageViewPreallocationAndroidCache: Boolean? = null
|
|
33
34
|
private var disableMountItemReorderingAndroidCache: Boolean? = null
|
|
34
35
|
private var disableOldAndroidAttachmentMetricsWorkaroundsCache: Boolean? = null
|
|
35
36
|
private var disableSubviewClippingAndroidCache: Boolean? = null
|
|
36
37
|
private var disableTextLayoutManagerCacheAndroidCache: Boolean? = null
|
|
38
|
+
private var disableViewPreallocationAndroidCache: Boolean? = null
|
|
37
39
|
private var enableAccessibilityOrderCache: Boolean? = null
|
|
38
40
|
private var enableAccumulatedUpdatesInRawPropsAndroidCache: Boolean? = null
|
|
39
41
|
private var enableAndroidLinearTextCache: Boolean? = null
|
|
@@ -167,6 +169,16 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
|
|
|
167
169
|
return cached
|
|
168
170
|
}
|
|
169
171
|
|
|
172
|
+
override fun disableImageViewPreallocationAndroid(): Boolean {
|
|
173
|
+
var cached = disableImageViewPreallocationAndroidCache
|
|
174
|
+
if (cached == null) {
|
|
175
|
+
cached = currentProvider.disableImageViewPreallocationAndroid()
|
|
176
|
+
accessedFeatureFlags.add("disableImageViewPreallocationAndroid")
|
|
177
|
+
disableImageViewPreallocationAndroidCache = cached
|
|
178
|
+
}
|
|
179
|
+
return cached
|
|
180
|
+
}
|
|
181
|
+
|
|
170
182
|
override fun disableMountItemReorderingAndroid(): Boolean {
|
|
171
183
|
var cached = disableMountItemReorderingAndroidCache
|
|
172
184
|
if (cached == null) {
|
|
@@ -207,6 +219,16 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
|
|
|
207
219
|
return cached
|
|
208
220
|
}
|
|
209
221
|
|
|
222
|
+
override fun disableViewPreallocationAndroid(): Boolean {
|
|
223
|
+
var cached = disableViewPreallocationAndroidCache
|
|
224
|
+
if (cached == null) {
|
|
225
|
+
cached = currentProvider.disableViewPreallocationAndroid()
|
|
226
|
+
accessedFeatureFlags.add("disableViewPreallocationAndroid")
|
|
227
|
+
disableViewPreallocationAndroidCache = cached
|
|
228
|
+
}
|
|
229
|
+
return cached
|
|
230
|
+
}
|
|
231
|
+
|
|
210
232
|
override fun enableAccessibilityOrder(): Boolean {
|
|
211
233
|
var cached = enableAccessibilityOrderCache
|
|
212
234
|
if (cached == null) {
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<2325f5410537941e25998ca8c59bf51d>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -35,6 +35,8 @@ public interface ReactNativeFeatureFlagsProvider {
|
|
|
35
35
|
|
|
36
36
|
@DoNotStrip public fun disableFabricCommitInCXXAnimated(): Boolean
|
|
37
37
|
|
|
38
|
+
@DoNotStrip public fun disableImageViewPreallocationAndroid(): Boolean
|
|
39
|
+
|
|
38
40
|
@DoNotStrip public fun disableMountItemReorderingAndroid(): Boolean
|
|
39
41
|
|
|
40
42
|
@DoNotStrip public fun disableOldAndroidAttachmentMetricsWorkarounds(): Boolean
|
|
@@ -43,6 +45,8 @@ public interface ReactNativeFeatureFlagsProvider {
|
|
|
43
45
|
|
|
44
46
|
@DoNotStrip public fun disableTextLayoutManagerCacheAndroid(): Boolean
|
|
45
47
|
|
|
48
|
+
@DoNotStrip public fun disableViewPreallocationAndroid(): Boolean
|
|
49
|
+
|
|
46
50
|
@DoNotStrip public fun enableAccessibilityOrder(): Boolean
|
|
47
51
|
|
|
48
52
|
@DoNotStrip public fun enableAccumulatedUpdatesInRawPropsAndroid(): Boolean
|
|
@@ -11,7 +11,6 @@ import androidx.annotation.GuardedBy
|
|
|
11
11
|
import com.facebook.common.logging.FLog
|
|
12
12
|
import com.facebook.jni.HybridData
|
|
13
13
|
import com.facebook.proguard.annotations.DoNotStrip
|
|
14
|
-
import com.facebook.react.bridge.CxxModuleWrapper
|
|
15
14
|
import com.facebook.react.bridge.NativeModule
|
|
16
15
|
import com.facebook.react.bridge.RuntimeExecutor
|
|
17
16
|
import com.facebook.react.common.annotations.FrameworkAPI
|
|
@@ -110,39 +109,7 @@ public class TurboModuleManager(
|
|
|
110
109
|
}
|
|
111
110
|
|
|
112
111
|
val module = getModule(moduleName)
|
|
113
|
-
return if (module !is
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
// used from TurboModuleManager.cpp
|
|
117
|
-
@Suppress("unused")
|
|
118
|
-
@DoNotStrip
|
|
119
|
-
private fun getLegacyCxxModule(moduleName: String): CxxModuleWrapper? {
|
|
120
|
-
/*
|
|
121
|
-
* This API is invoked from global.nativeModuleProxy.
|
|
122
|
-
* Only call getModule if the native module is a legacy module.
|
|
123
|
-
*/
|
|
124
|
-
if (!isLegacyModule(moduleName)) {
|
|
125
|
-
return null
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
val module = getModule(moduleName)
|
|
129
|
-
return if (module is CxxModuleWrapper && module !is TurboModule) module else null
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
// used from TurboModuleManager.cpp
|
|
133
|
-
@Suppress("unused")
|
|
134
|
-
@DoNotStrip
|
|
135
|
-
private fun getTurboLegacyCxxModule(moduleName: String): CxxModuleWrapper? {
|
|
136
|
-
/*
|
|
137
|
-
* This API is invoked from global.__turboModuleProxy.
|
|
138
|
-
* Only call getModule if the native module is a turbo module.
|
|
139
|
-
*/
|
|
140
|
-
if (!isTurboModule(moduleName)) {
|
|
141
|
-
return null
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
val module = getModule(moduleName)
|
|
145
|
-
return if (module is CxxModuleWrapper && module is TurboModule) module else null
|
|
112
|
+
return if (module !is TurboModule) module else null
|
|
146
113
|
}
|
|
147
114
|
|
|
148
115
|
// used from TurboModuleManager.cpp
|
|
@@ -158,7 +125,7 @@ public class TurboModuleManager(
|
|
|
158
125
|
}
|
|
159
126
|
|
|
160
127
|
val module = getModule(moduleName)
|
|
161
|
-
return if (module
|
|
128
|
+
return if (module is TurboModule) module else null
|
|
162
129
|
}
|
|
163
130
|
|
|
164
131
|
/**
|
|
@@ -474,14 +474,13 @@ public abstract class BaseViewManager<T extends View, C extends LayoutShadowNode
|
|
|
474
474
|
public void setImportantForAccessibility(
|
|
475
475
|
@NonNull T view, @Nullable String importantForAccessibility) {
|
|
476
476
|
if (importantForAccessibility == null || importantForAccessibility.equals("auto")) {
|
|
477
|
-
|
|
477
|
+
view.setImportantForAccessibility(View.IMPORTANT_FOR_ACCESSIBILITY_AUTO);
|
|
478
478
|
} else if (importantForAccessibility.equals("yes")) {
|
|
479
|
-
|
|
479
|
+
view.setImportantForAccessibility(View.IMPORTANT_FOR_ACCESSIBILITY_YES);
|
|
480
480
|
} else if (importantForAccessibility.equals("no")) {
|
|
481
|
-
|
|
481
|
+
view.setImportantForAccessibility(View.IMPORTANT_FOR_ACCESSIBILITY_NO);
|
|
482
482
|
} else if (importantForAccessibility.equals("no-hide-descendants")) {
|
|
483
|
-
|
|
484
|
-
view, ViewCompat.IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS);
|
|
483
|
+
view.setImportantForAccessibility(View.IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS);
|
|
485
484
|
}
|
|
486
485
|
}
|
|
487
486
|
|
|
@@ -49,6 +49,13 @@ internal class VirtualViewContainerStateExperimental(scrollView: ViewGroup) :
|
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
51
|
|
|
52
|
+
override fun remove(virtualView: VirtualView) {
|
|
53
|
+
super.remove(virtualView)
|
|
54
|
+
HPV.remove(virtualView.virtualViewID)
|
|
55
|
+
P.remove(virtualView.virtualViewID)
|
|
56
|
+
V.remove(virtualView.virtualViewID)
|
|
57
|
+
}
|
|
58
|
+
|
|
52
59
|
/**
|
|
53
60
|
* Perform mode update check on a single VirtualView. Does not check other VirtualViews in the
|
|
54
61
|
* collection. Use carefully
|
|
@@ -29,6 +29,7 @@
|
|
|
29
29
|
#include <react/renderer/scheduler/SchedulerToolbox.h>
|
|
30
30
|
#include <react/renderer/uimanager/primitives.h>
|
|
31
31
|
#include <react/utils/ContextContainer.h>
|
|
32
|
+
#include <string_view>
|
|
32
33
|
|
|
33
34
|
namespace facebook::react {
|
|
34
35
|
|
|
@@ -672,6 +673,17 @@ void FabricUIManagerBinding::schedulerShouldRenderTransactions(
|
|
|
672
673
|
|
|
673
674
|
void FabricUIManagerBinding::schedulerDidRequestPreliminaryViewAllocation(
|
|
674
675
|
const ShadowNode& shadowNode) {
|
|
676
|
+
using namespace std::literals::string_view_literals;
|
|
677
|
+
|
|
678
|
+
if (ReactNativeFeatureFlags::disableViewPreallocationAndroid()) {
|
|
679
|
+
return;
|
|
680
|
+
}
|
|
681
|
+
|
|
682
|
+
if (ReactNativeFeatureFlags::disableImageViewPreallocationAndroid() &&
|
|
683
|
+
std::string_view(shadowNode.getComponentName()) == "Image"sv) {
|
|
684
|
+
return;
|
|
685
|
+
}
|
|
686
|
+
|
|
675
687
|
auto mountingManager = getMountingManager("preallocateView");
|
|
676
688
|
if (!mountingManager) {
|
|
677
689
|
return;
|