react-native 0.69.3 → 0.70.0-rc.2
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/CHANGELOG.md +243 -0
- package/Libraries/Alert/Alert.js +18 -4
- package/Libraries/Alert/NativeAlertManager.js +1 -0
- package/Libraries/Animated/Animated.js +2 -2
- package/Libraries/Animated/AnimatedEvent.js +7 -4
- package/Libraries/Animated/AnimatedImplementation.js +17 -3
- package/Libraries/Animated/AnimatedMock.js +7 -2
- package/Libraries/Animated/NativeAnimatedHelper.js +220 -95
- package/Libraries/Animated/NativeAnimatedModule.js +3 -0
- package/Libraries/Animated/NativeAnimatedTurboModule.js +3 -0
- package/Libraries/Animated/animations/SpringAnimation.js +3 -3
- package/Libraries/Animated/animations/TimingAnimation.js +3 -3
- package/Libraries/Animated/createAnimatedComponent.js +8 -1
- package/Libraries/Animated/nodes/AnimatedAddition.js +3 -1
- package/Libraries/Animated/nodes/AnimatedColor.js +50 -29
- package/Libraries/Animated/nodes/AnimatedDiffClamp.js +3 -1
- package/Libraries/Animated/nodes/AnimatedDivision.js +3 -1
- package/Libraries/Animated/nodes/AnimatedInterpolation.js +22 -21
- package/Libraries/Animated/nodes/AnimatedModulo.js +3 -1
- package/Libraries/Animated/nodes/AnimatedMultiplication.js +3 -2
- package/Libraries/Animated/nodes/AnimatedProps.js +20 -12
- package/Libraries/Animated/nodes/AnimatedStyle.js +19 -16
- package/Libraries/Animated/nodes/AnimatedSubtraction.js +3 -1
- package/Libraries/Animated/nodes/AnimatedTransform.js +5 -5
- package/Libraries/Animated/nodes/AnimatedValue.js +14 -5
- package/Libraries/Animated/nodes/AnimatedValueXY.js +28 -1
- package/Libraries/Animated/useAnimatedProps.js +1 -0
- package/Libraries/AppState/AppState.js +0 -32
- package/Libraries/BatchedBridge/MessageQueue.js +21 -15
- package/Libraries/BatchedBridge/NativeModules.js +3 -4
- package/Libraries/Blob/FileReader.js +0 -6
- package/Libraries/Blob/React-RCTBlob.podspec +1 -1
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +0 -20
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +4 -0
- package/Libraries/Components/Keyboard/Keyboard.js +0 -11
- package/Libraries/Components/Pressable/Pressable.js +2 -0
- package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +1 -3
- package/Libraries/Components/SafeAreaView/SafeAreaView.js +3 -30
- package/Libraries/Components/ScrollView/ScrollView.js +13 -11
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +5 -3
- package/Libraries/Components/StatusBar/StatusBar.js +10 -7
- package/Libraries/Components/TextInput/InputAccessoryView.js +14 -13
- package/Libraries/Components/TextInput/TextInput.js +12 -2
- package/Libraries/Components/Touchable/PooledClass.js +16 -4
- package/Libraries/Components/Touchable/Touchable.js +50 -1
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +6 -2
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +0 -7
- package/Libraries/Components/View/ViewPropTypes.js +3 -8
- package/Libraries/Core/ExceptionsManager.js +2 -0
- package/Libraries/Core/ReactNativeVersion.js +3 -3
- package/Libraries/Core/Timers/JSTimers.js +2 -2
- package/Libraries/Core/polyfillPromise.js +0 -32
- package/Libraries/Core/setUpBatchedBridge.js +5 -1
- package/Libraries/Core/setUpPerformance.js +1 -1
- package/Libraries/EventEmitter/NativeEventEmitter.js +0 -13
- package/Libraries/Image/AssetSourceResolver.js +2 -2
- package/Libraries/Image/Image.android.js +5 -3
- package/Libraries/Image/Image.ios.js +6 -3
- package/Libraries/Image/ImageSource.js +7 -5
- package/Libraries/Image/RCTDisplayWeakRefreshable.h +1 -0
- package/Libraries/Image/RCTImageLoader.mm +13 -0
- package/Libraries/Image/RCTImageView.mm +1 -1
- package/Libraries/Image/React-RCTImage.podspec +1 -1
- package/Libraries/Inspector/ElementBox.js +2 -2
- package/Libraries/Inspector/NetworkOverlay.js +13 -8
- package/Libraries/Interaction/PanResponder.js +16 -14
- package/Libraries/Linking/Linking.js +0 -11
- package/Libraries/LinkingIOS/React-RCTLinking.podspec +1 -1
- package/Libraries/Lists/FlatList.js +3 -2
- package/Libraries/Lists/SectionList.js +2 -0
- package/Libraries/Lists/ViewabilityHelper.js +7 -3
- package/Libraries/Lists/VirtualizeUtils.js +33 -20
- package/Libraries/Lists/VirtualizedList.js +93 -47
- package/Libraries/Lists/VirtualizedListContext.js +1 -0
- package/Libraries/Lists/VirtualizedSectionList.js +14 -9
- package/Libraries/LogBox/Data/LogBoxData.js +1 -1
- package/Libraries/LogBox/Data/parseLogBoxLog.js +1 -1
- package/Libraries/LogBox/LogBox.js +3 -1
- package/Libraries/LogBox/UI/AnsiHighlight.js +2 -0
- package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +3 -0
- package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +0 -3
- package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +8 -3
- package/Libraries/NativeAnimation/RCTNativeAnimatedModule.mm +5 -0
- package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +5 -0
- package/Libraries/NativeAnimation/React-RCTAnimation.podspec +1 -1
- package/Libraries/NativeComponent/BaseViewConfig.android.js +9 -18
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +26 -12
- package/Libraries/Network/RCTNetworking.mm +34 -28
- package/Libraries/Network/React-RCTNetwork.podspec +1 -1
- package/Libraries/Network/XMLHttpRequest.js +9 -11
- package/Libraries/Performance/PureComponentDebug.js +1 -0
- package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +9 -1
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +16 -0
- package/Libraries/Pressability/Pressability.js +26 -16
- package/Libraries/Promise.js +0 -1
- package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +1 -1
- package/Libraries/ReactNative/AppRegistry.js +16 -13
- package/Libraries/ReactNative/BridgelessUIManager.js +2 -0
- package/Libraries/ReactNative/PaperUIManager.js +9 -9
- package/Libraries/ReactNative/ReactNativeFeatureFlags.js +12 -0
- package/Libraries/ReactNative/ReactNativeRuntimeDiagnostics.js +68 -0
- package/Libraries/ReactNative/getNativeComponentAttributes.js +6 -7
- package/Libraries/ReactNative/renderApplication.js +1 -1
- package/Libraries/Renderer/README.md +22 -0
- package/Libraries/Renderer/REVISION +1 -1
- package/Libraries/Renderer/implementations/ReactFabric-dev.js +4443 -3615
- package/Libraries/Renderer/implementations/ReactFabric-prod.js +1496 -1170
- package/Libraries/Renderer/implementations/ReactFabric-profiling.js +1694 -1356
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +4439 -3588
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +1583 -1249
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +1719 -1372
- package/Libraries/Settings/React-RCTSettings.podspec +1 -1
- package/Libraries/Storage/AsyncStorage.js +7 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +8 -0
- package/Libraries/StyleSheet/flattenStyle.js +1 -1
- package/Libraries/StyleSheet/processTransform.js +2 -0
- package/Libraries/StyleSheet/splitLayoutProps.js +2 -0
- package/Libraries/Text/Text.js +15 -7
- package/Libraries/Types/CoreEventTypes.js +137 -11
- package/Libraries/Utilities/Dimensions.js +0 -13
- package/Libraries/Utilities/HMRClient.js +3 -3
- package/Libraries/Utilities/Platform.ios.js +0 -7
- package/Libraries/Utilities/ReactNativeTestTools.js +3 -1
- package/Libraries/Utilities/codegenNativeCommands.js +11 -2
- package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +2 -0
- package/Libraries/Utilities/stringifySafe.js +3 -1
- package/Libraries/Utilities/truncate.js +1 -1
- package/Libraries/Utilities/verifyComponentAttributeEquivalence.js +2 -2
- package/Libraries/Vibration/React-RCTVibration.podspec +1 -1
- package/Libraries/Vibration/Vibration.js +1 -1
- package/Libraries/WebSocket/WebSocket.js +1 -0
- package/Libraries/vendor/emitter/EventEmitter.js +105 -12
- package/Libraries/vendor/emitter/__flowtests__/EventEmitter-flowtest.js +73 -117
- package/README.md +1 -1
- package/React/Base/RCTAssert.h +12 -6
- package/React/Base/RCTAssert.m +46 -31
- package/React/Base/RCTConstants.h +3 -3
- package/React/Base/RCTConstants.m +6 -6
- package/React/Base/RCTDefines.h +2 -2
- package/React/Base/RCTEventDispatcherProtocol.h +5 -0
- package/React/Base/RCTMultipartStreamReader.m +1 -0
- package/React/Base/RCTUtils.h +2 -0
- package/React/Base/RCTUtils.m +5 -0
- package/React/Base/RCTVersion.m +3 -3
- package/React/Base/Surface/RCTSurface.mm +1 -1
- package/React/CoreModules/RCTAlertManager.mm +23 -0
- package/React/CoreModules/RCTAppState.mm +2 -2
- package/React/CoreModules/RCTDeviceInfo.mm +28 -11
- package/React/CoreModules/RCTEventDispatcher.mm +6 -1
- package/React/CoreModules/RCTExceptionsManager.h +1 -1
- package/React/CoreModules/RCTExceptionsManager.mm +1 -1
- package/React/CoreModules/RCTLogBox.mm +2 -2
- package/React/CoreModules/RCTLogBoxView.mm +1 -1
- package/React/CoreModules/React-CoreModules.podspec +1 -1
- package/React/CxxBridge/RCTJSIExecutorRuntimeInstaller.mm +1 -3
- package/React/CxxUtils/RCTFollyConvert.mm +11 -4
- package/React/FBReactNativeSpec/FBReactNativeSpec.podspec +1 -1
- package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +0 -8
- package/React/Fabric/Mounting/ComponentViews/SafeAreaView/RCTSafeAreaViewComponentView.mm +1 -10
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.mm +1 -1
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +1 -1
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +1 -1
- package/React/Fabric/Mounting/RCTComponentViewFactory.mm +10 -1
- package/React/Fabric/Mounting/RCTComponentViewProtocol.h +1 -1
- package/React/Fabric/Mounting/RCTMountingManager.h +1 -1
- package/React/Fabric/Mounting/RCTMountingManager.mm +10 -5
- package/React/Fabric/Mounting/UIView+ComponentViewProtocol.h +1 -1
- package/React/Fabric/Mounting/UIView+ComponentViewProtocol.mm +1 -1
- package/React/Fabric/RCTSurfacePresenter.mm +3 -6
- package/React/Fabric/RCTSurfaceTouchHandler.mm +248 -33
- package/React/Modules/RCTEventEmitter.h +2 -0
- package/React/Modules/RCTEventEmitter.m +15 -0
- package/React/Modules/RCTUIManager.m +1 -1
- package/React/React-RCTFabric.podspec +1 -1
- package/React/Views/RCTDatePickerManager.m +4 -0
- package/React/Views/RCTMaskedViewManager.m +4 -0
- package/React/Views/RCTProgressViewManager.m +4 -0
- package/React/Views/RCTSegmentedControlManager.m +4 -0
- package/React/Views/RCTView.h +5 -3
- package/React/Views/RCTViewManager.m +5 -3
- package/React/Views/RCTWrapperViewController.m +9 -10
- package/React/Views/SafeAreaView/RCTSafeAreaView.h +0 -2
- package/React/Views/SafeAreaView/RCTSafeAreaView.m +2 -70
- package/React/Views/SafeAreaView/RCTSafeAreaViewManager.m +0 -2
- package/React/third-party.xcconfig +1 -1
- package/React-Core.podspec +8 -2
- package/ReactAndroid/.npmignore +3 -0
- package/ReactAndroid/README.md +3 -2
- package/ReactAndroid/build.gradle +21 -17
- package/ReactAndroid/cmake-utils/Android-prebuilt.cmake +231 -0
- package/ReactAndroid/cmake-utils/ReactNative-application.cmake +56 -0
- package/ReactAndroid/gradle.properties +20 -10
- package/ReactAndroid/hermes-engine/build.gradle +0 -1
- package/ReactAndroid/src/main/java/com/facebook/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/debug/debugoverlay/model/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/debug/holder/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/debug/tags/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/BUCK +2 -0
- package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/BUCK +2 -0
- package/ReactAndroid/src/main/java/com/facebook/hermes/unicode/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/perftest/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/proguard/annotations/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/CompositeReactPackage.java +4 -3
- package/ReactAndroid/src/main/java/com/facebook/react/CompositeReactPackageTurboModuleManagerDelegate.java +67 -0
- package/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/JSInterpreter.java +18 -0
- package/ReactAndroid/src/main/java/com/facebook/react/LazyReactPackage.java +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +14 -16
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +55 -36
- package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +11 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/ViewManagerOnDemandReactPackage.java +2 -3
- package/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +246 -11
- package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +70 -28
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/AssertionException.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/BUCK +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/BackgroundExecutor.java +19 -2
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +8 -8
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ColorPropConverter.java +28 -21
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/{DefaultNativeModuleCallExceptionHandler.java → DefaultJSExceptionHandler.java} +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedAsyncTask.java +3 -4
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedResultAsyncTask.java +3 -4
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedRunnable.java +3 -4
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/{NativeModuleCallExceptionHandler.java → JSExceptionHandler.java} +5 -5
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleSpec.java +2 -9
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.java +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +14 -14
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.java +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/UiThreadUtil.java +17 -4
- package/ReactAndroid/src/main/java/com/facebook/react/common/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/network/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/config/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +44 -18
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +4 -4
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DisabledDevSupportManager.java +4 -4
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/BUCK +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.java +85 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricComponents.java +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricJSIModuleProvider.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +105 -32
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/GuardedFrameCallback.java +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.cpp +32 -25
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.h +4 -7
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/CMakeLists.txt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/FabricMountItem.cpp +7 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/FabricMountItem.h +7 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/FabricMountingManager.cpp +37 -17
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/JBackgroundExecutor.cpp +9 -14
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/JBackgroundExecutor.h +1 -8
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/viewPropConversions.h +13 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/LayoutMetricsConversions.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.java +10 -8
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +11 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +449 -2
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchStringCommandMountItem.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +12 -12
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/module/annotations/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/module/model/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/module/processing/BUCK +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/module/processing/ReactModuleSpecProcessor.java +4 -5
- package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appregistry/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/bundleloader/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/common/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/BUCK +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/fabric/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/image/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/RequestBodyUtil.java +14 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/share/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/BUCK +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/processing/ReactPropertyProcessor.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/shell/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/surface/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/touch/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/BUCK +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/BUCK +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/CMakeLists.txt +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/CompositeTurboModuleManagerDelegate.cpp +59 -0
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/CompositeTurboModuleManagerDelegate.h +49 -0
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/OnLoad.cpp +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/TurboModuleManager.cpp +18 -6
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/TurboModuleManagerDelegate.h +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BUCK +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +119 -10
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerAdapter.java +8 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerDelegate.java +6 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerInterface.java +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/GuardedFrameCallback.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +239 -79
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +20 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +42 -12
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstants.java +0 -3
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.java +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +109 -3
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerRegistry.java +51 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerResolver.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.java +11 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.java +79 -23
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.java +101 -4
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/util/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/util/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/common/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/BUCK +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/BUCK +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +16 -20
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +12 -5
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +30 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewAccessibilityDelegate.java +154 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +4 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/slider/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactFontManager.java +10 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java +18 -17
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +87 -9
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java +27 -6
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManagerMapBuffer.java +17 -10
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +11 -5
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +37 -49
- package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/BUCK +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactMapBufferPropSetter.kt +12 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +20 -5
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundManager.java +6 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +66 -11
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.java +17 -0
- package/ReactAndroid/src/main/java/com/facebook/systrace/BUCK +1 -0
- package/ReactAndroid/src/main/jni/CMakeLists.txt +6 -2
- package/ReactAndroid/src/main/jni/react/jni/BUCK +0 -1
- package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +0 -29
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +0 -3
- package/ReactAndroid/src/main/jni/react/jni/JMessageQueueThread.cpp +5 -7
- package/ReactAndroid/src/main/libraries/fbcore/src/main/java/com/facebook/common/logging/BUCK +1 -0
- package/ReactAndroid/src/main/libraries/fresco/fresco-react-native/BUCK +7 -6
- package/ReactAndroid/src/main/libraries/soloader/java/com/facebook/soloader/BUCK +4 -4
- package/ReactAndroid/src/main/res/views/uimanager/values/ids.xml +10 -1
- package/ReactCommon/React-Fabric.podspec +1 -1
- package/ReactCommon/React-bridging.podspec +1 -1
- package/ReactCommon/ReactCommon.podspec +1 -1
- package/ReactCommon/butter/BUCK +1 -1
- package/ReactCommon/callinvoker/React-callinvoker.podspec +1 -1
- package/ReactCommon/cxxreact/BUCK +3 -4
- package/ReactCommon/cxxreact/JSBigString.h +2 -2
- package/ReactCommon/cxxreact/JSExecutor.h +2 -1
- package/ReactCommon/cxxreact/NativeToJsBridge.cpp +2 -2
- package/ReactCommon/cxxreact/React-cxxreact.podspec +1 -1
- package/ReactCommon/cxxreact/ReactNativeVersion.h +3 -3
- package/ReactCommon/cxxreact/tests/BUCK +6 -48
- package/ReactCommon/cxxreact/tests/jsarg_helpers.cpp +3 -4
- package/ReactCommon/cxxreact/tests/jsbigstring.cpp +0 -43
- package/{ReactAndroid/src/androidTest/java/com/facebook/react/testing/idledetection/IdleWaiter.java → ReactCommon/cxxreact/tests/main.cpp} +6 -5
- package/ReactCommon/cxxreact/tests/methodcall.cpp +1 -2
- package/ReactCommon/hermes/React-hermes.podspec +1 -1
- package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +1 -1
- package/ReactCommon/hermes/inspector/BUCK +2 -1
- package/ReactCommon/hermes/inspector/RuntimeAdapter.h +1 -1
- package/ReactCommon/hermes/inspector/chrome/ConnectionDemux.cpp +1 -1
- package/ReactCommon/hermes/inspector/chrome/ConnectionDemux.h +1 -1
- package/ReactCommon/hermes/inspector/chrome/Registration.cpp +1 -1
- package/ReactCommon/hermes/inspector/chrome/Registration.h +1 -1
- package/ReactCommon/hermes/inspector/tools/msggen/src/HeaderWriter.js +1 -1
- package/ReactCommon/hermes/inspector/tools/msggen/src/index.js +2 -2
- package/ReactCommon/jsi/JSCRuntime.cpp +12 -0
- package/ReactCommon/jsi/React-jsi.podspec +1 -1
- package/ReactCommon/jsi/jsi/decorator.h +6 -0
- package/ReactCommon/jsi/jsi/jsi-inl.h +8 -2
- package/ReactCommon/jsi/jsi/jsi.cpp +26 -8
- package/ReactCommon/jsi/jsi/jsi.h +50 -0
- package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +1 -1
- package/ReactCommon/jsinspector/BUCK +2 -1
- package/ReactCommon/libraries/fbcore/src/test/java/com/facebook/powermock/BUCK +2 -0
- package/ReactCommon/logger/React-logger.podspec +1 -1
- package/ReactCommon/react/bridging/BUCK +1 -1
- package/ReactCommon/react/bridging/Class.h +21 -0
- package/ReactCommon/react/bridging/Convert.h +9 -0
- package/ReactCommon/react/bridging/tests/BridgingTest.h +1 -1
- package/ReactCommon/react/config/BUCK +1 -1
- package/ReactCommon/react/debug/BUCK +1 -1
- package/ReactCommon/react/nativemodule/core/BUCK +3 -3
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.cpp +35 -18
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.h +4 -2
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.cpp +23 -4
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +37 -19
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +46 -61
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +11 -12
- package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +91 -145
- package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.h +5 -22
- package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.mm +4 -2
- package/ReactCommon/react/nativemodule/samples/BUCK +1 -0
- package/ReactCommon/react/nativemodule/samples/platform/android/CMakeLists.txt +19 -0
- package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.cpp +39 -12
- package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.h +1 -1
- package/ReactCommon/react/renderer/animations/BUCK +1 -1
- package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +19 -0
- package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +3 -4
- package/ReactCommon/react/renderer/attributedstring/BUCK +1 -1
- package/ReactCommon/react/renderer/componentregistry/BUCK +1 -1
- package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +1 -1
- package/ReactCommon/react/renderer/componentregistry/native/BUCK +1 -1
- package/ReactCommon/react/renderer/components/image/BUCK +1 -1
- package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/BUCK +1 -1
- package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +0 -3
- package/ReactCommon/react/renderer/components/modal/BUCK +1 -1
- package/ReactCommon/react/renderer/components/progressbar/BUCK +1 -1
- package/ReactCommon/react/renderer/components/progressbar/CMakeLists.txt +1 -1
- package/ReactCommon/react/renderer/components/root/BUCK +1 -1
- package/ReactCommon/react/renderer/components/scrollview/BUCK +1 -1
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +321 -198
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.h +6 -0
- package/ReactCommon/react/renderer/components/slider/BUCK +1 -1
- package/ReactCommon/react/renderer/components/slider/CMakeLists.txt +1 -1
- package/ReactCommon/react/renderer/components/switch/BUCK +1 -1
- package/ReactCommon/react/renderer/components/switch/CMakeLists.txt +1 -1
- package/ReactCommon/react/renderer/components/text/BUCK +1 -1
- package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +132 -18
- package/ReactCommon/react/renderer/components/text/BaseTextProps.h +8 -0
- package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +19 -0
- package/ReactCommon/react/renderer/components/text/ParagraphProps.h +6 -0
- package/ReactCommon/react/renderer/components/text/TextProps.cpp +9 -0
- package/ReactCommon/react/renderer/components/text/TextProps.h +6 -0
- package/ReactCommon/react/renderer/components/textinput/BUCK +1 -1
- package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +9 -0
- package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.h +6 -0
- package/ReactCommon/react/renderer/components/textinput/iostextinput/BUCK +1 -1
- package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.cpp +9 -0
- package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.h +6 -0
- package/ReactCommon/react/renderer/components/unimplementedview/BUCK +1 -1
- package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +208 -115
- package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +9 -1
- package/ReactCommon/react/renderer/components/view/BUCK +1 -1
- package/ReactCommon/react/renderer/components/view/PointerEvent.cpp +11 -2
- package/ReactCommon/react/renderer/components/view/PointerEvent.h +46 -6
- package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +41 -8
- package/ReactCommon/react/renderer/components/view/TouchEventEmitter.h +5 -3
- package/ReactCommon/react/renderer/components/view/ViewProps.cpp +318 -157
- package/ReactCommon/react/renderer/components/view/ViewProps.h +6 -0
- package/ReactCommon/react/renderer/components/view/ViewPropsInterpolation.h +3 -3
- package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +1 -2
- package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +98 -1
- package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +6 -0
- package/ReactCommon/react/renderer/components/view/conversions.h +5 -2
- package/ReactCommon/react/renderer/components/view/primitives.h +7 -0
- package/ReactCommon/react/renderer/components/view/propsConversions.h +37 -1
- package/ReactCommon/react/renderer/core/BUCK +1 -1
- package/ReactCommon/react/renderer/core/ComponentDescriptor.h +5 -5
- package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +22 -8
- package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +4 -3
- package/ReactCommon/react/renderer/core/Props.cpp +24 -7
- package/ReactCommon/react/renderer/core/Props.h +19 -4
- package/ReactCommon/react/renderer/core/PropsMacros.h +94 -0
- package/ReactCommon/react/renderer/core/RawProps.cpp +7 -0
- package/ReactCommon/react/renderer/core/RawProps.h +9 -0
- package/ReactCommon/react/renderer/core/RawPropsParser.cpp +63 -0
- package/ReactCommon/react/renderer/core/RawPropsParser.h +9 -0
- package/ReactCommon/react/renderer/core/RawPropsPrimitives.h +2 -0
- package/ReactCommon/react/renderer/core/RawValue.h +2 -0
- package/ReactCommon/react/renderer/core/ShadowNode.cpp +8 -8
- package/ReactCommon/react/renderer/core/ShadowNode.h +12 -21
- package/ReactCommon/react/renderer/core/propsConversions.h +29 -0
- package/ReactCommon/react/renderer/core/tests/ComponentDescriptorTest.cpp +9 -9
- package/ReactCommon/react/renderer/core/tests/ShadowNodeTest.cpp +4 -4
- package/ReactCommon/react/renderer/debug/BUCK +1 -1
- package/ReactCommon/react/renderer/graphics/BUCK +1 -1
- package/ReactCommon/react/renderer/graphics/React-graphics.podspec +1 -1
- package/ReactCommon/react/renderer/graphics/RectangleEdges.h +5 -0
- package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/PlatformColorParser.h +11 -23
- package/ReactCommon/react/renderer/imagemanager/BUCK +12 -28
- package/ReactCommon/react/renderer/mapbuffer/BUCK +1 -1
- package/ReactCommon/react/renderer/mounting/BUCK +1 -1
- package/ReactCommon/react/renderer/mounting/Differentiator.cpp +35 -5
- package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +2 -2
- package/ReactCommon/react/renderer/mounting/ShadowViewMutation.cpp +32 -4
- package/ReactCommon/react/renderer/mounting/ShadowViewMutation.h +35 -3
- package/ReactCommon/react/renderer/mounting/StubView.h +1 -1
- package/ReactCommon/react/renderer/mounting/StubViewTree.cpp +5 -0
- package/ReactCommon/react/renderer/mounting/tests/MountingTest.cpp +129 -119
- package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +4 -4
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +7 -17
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +0 -10
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.cpp +18 -3
- package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +1 -20
- package/ReactCommon/react/renderer/scheduler/BUCK +1 -1
- package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +2 -2
- package/ReactCommon/react/renderer/telemetry/BUCK +1 -1
- package/ReactCommon/react/renderer/templateprocessor/BUCK +1 -1
- package/ReactCommon/react/renderer/templateprocessor/UITemplateProcessor.cpp +6 -6
- package/ReactCommon/react/renderer/templateprocessor/UITemplateProcessor.h +1 -1
- package/ReactCommon/react/renderer/textlayoutmanager/BUCK +1 -1
- package/ReactCommon/react/renderer/textlayoutmanager/CMakeLists.txt +1 -1
- package/ReactCommon/react/renderer/timeline/BUCK +1 -1
- package/ReactCommon/react/renderer/uimanager/BUCK +1 -1
- package/ReactCommon/react/renderer/uimanager/LayoutAnimationStatusDelegate.h +2 -0
- package/ReactCommon/react/renderer/uimanager/SurfaceRegistryBinding.cpp +66 -24
- package/ReactCommon/react/renderer/uimanager/UIManager.cpp +4 -4
- package/ReactCommon/react/renderer/uimanager/UIManager.h +2 -2
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +2 -2
- package/ReactCommon/react/renderer/uimanager/primitives.h +7 -7
- package/ReactCommon/react/test_utils/shadowTreeGeneration.h +1 -1
- package/ReactCommon/react/utils/BUCK +1 -1
- package/ReactCommon/reactperflogger/BUCK +2 -2
- package/ReactCommon/reactperflogger/React-perflogger.podspec +1 -1
- package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +1 -1
- package/android/com/facebook/react/hermes-engine/{0.69.3/hermes-engine-0.69.3-debug-sources.jar → 0.70.0-rc.2/hermes-engine-0.70.0-rc.2-debug-sources.jar} +0 -0
- package/android/com/facebook/react/hermes-engine/{0.69.3/hermes-engine-0.69.3-debug-sources.jar.md5 → 0.70.0-rc.2/hermes-engine-0.70.0-rc.2-debug-sources.jar.md5} +0 -0
- package/android/com/facebook/react/hermes-engine/{0.69.3/hermes-engine-0.69.3-debug-sources.jar.sha1 → 0.70.0-rc.2/hermes-engine-0.70.0-rc.2-debug-sources.jar.sha1} +0 -0
- package/android/com/facebook/react/hermes-engine/{0.69.3/hermes-engine-0.69.3-debug-sources.jar.sha256 → 0.70.0-rc.2/hermes-engine-0.70.0-rc.2-debug-sources.jar.sha256} +0 -0
- package/android/com/facebook/react/hermes-engine/{0.69.3/hermes-engine-0.69.3-debug-sources.jar.sha512 → 0.70.0-rc.2/hermes-engine-0.70.0-rc.2-debug-sources.jar.sha512} +0 -0
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2-debug.aar +0 -0
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2-debug.aar.md5 +1 -0
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2-debug.aar.sha1 +1 -0
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2-debug.aar.sha256 +1 -0
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2-debug.aar.sha512 +1 -0
- package/android/com/facebook/react/hermes-engine/{0.69.3/hermes-engine-0.69.3-release-sources.jar → 0.70.0-rc.2/hermes-engine-0.70.0-rc.2-release-sources.jar} +0 -0
- package/android/com/facebook/react/hermes-engine/{0.69.3/hermes-engine-0.69.3-release-sources.jar.md5 → 0.70.0-rc.2/hermes-engine-0.70.0-rc.2-release-sources.jar.md5} +0 -0
- package/android/com/facebook/react/hermes-engine/{0.69.3/hermes-engine-0.69.3-release-sources.jar.sha1 → 0.70.0-rc.2/hermes-engine-0.70.0-rc.2-release-sources.jar.sha1} +0 -0
- package/android/com/facebook/react/hermes-engine/{0.69.3/hermes-engine-0.69.3-release-sources.jar.sha256 → 0.70.0-rc.2/hermes-engine-0.70.0-rc.2-release-sources.jar.sha256} +0 -0
- package/android/com/facebook/react/hermes-engine/{0.69.3/hermes-engine-0.69.3-release-sources.jar.sha512 → 0.70.0-rc.2/hermes-engine-0.70.0-rc.2-release-sources.jar.sha512} +0 -0
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2-release.aar +0 -0
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2-release.aar.md5 +1 -0
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2-release.aar.sha1 +1 -0
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2-release.aar.sha256 +1 -0
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2-release.aar.sha512 +1 -0
- package/android/com/facebook/react/hermes-engine/{0.69.3/hermes-engine-0.69.3.module → 0.70.0-rc.2/hermes-engine-0.70.0-rc.2.module} +34 -76
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2.module.md5 +1 -0
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2.module.sha1 +1 -0
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2.module.sha256 +1 -0
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2.module.sha512 +1 -0
- package/android/com/facebook/react/hermes-engine/{0.69.3/hermes-engine-0.69.3.pom → 0.70.0-rc.2/hermes-engine-0.70.0-rc.2.pom} +1 -1
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2.pom.md5 +1 -0
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2.pom.sha1 +1 -0
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2.pom.sha256 +1 -0
- package/android/com/facebook/react/hermes-engine/0.70.0-rc.2/hermes-engine-0.70.0-rc.2.pom.sha512 +1 -0
- package/android/com/facebook/react/hermes-engine/maven-metadata.xml +4 -4
- package/android/com/facebook/react/hermes-engine/maven-metadata.xml.md5 +1 -1
- package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha1 +1 -1
- package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha256 +1 -1
- package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha512 +1 -1
- package/android/com/facebook/react/react-native/{0.69.3/react-native-0.69.3-debug-sources.jar → 0.70.0-rc.2/react-native-0.70.0-rc.2-debug-sources.jar} +0 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2-debug-sources.jar.md5 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2-debug-sources.jar.sha1 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2-debug-sources.jar.sha256 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2-debug-sources.jar.sha512 +1 -0
- package/android/com/facebook/react/react-native/{0.69.3/react-native-0.69.3-debug.aar → 0.70.0-rc.2/react-native-0.70.0-rc.2-debug.aar} +0 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2-debug.aar.md5 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2-debug.aar.sha1 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2-debug.aar.sha256 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2-debug.aar.sha512 +1 -0
- package/android/com/facebook/react/react-native/{0.69.3/react-native-0.69.3-release-sources.jar → 0.70.0-rc.2/react-native-0.70.0-rc.2-release-sources.jar} +0 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2-release-sources.jar.md5 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2-release-sources.jar.sha1 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2-release-sources.jar.sha256 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2-release-sources.jar.sha512 +1 -0
- package/android/com/facebook/react/react-native/{0.69.3/react-native-0.69.3-release.aar → 0.70.0-rc.2/react-native-0.70.0-rc.2-release.aar} +0 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2-release.aar.md5 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2-release.aar.sha1 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2-release.aar.sha256 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2-release.aar.sha512 +1 -0
- package/android/com/facebook/react/react-native/{0.69.3/react-native-0.69.3.module → 0.70.0-rc.2/react-native-0.70.0-rc.2.module} +160 -202
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2.module.md5 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2.module.sha1 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2.module.sha256 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2.module.sha512 +1 -0
- package/android/com/facebook/react/react-native/{0.69.3/react-native-0.69.3.pom → 0.70.0-rc.2/react-native-0.70.0-rc.2.pom} +30 -30
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2.pom.md5 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2.pom.sha1 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2.pom.sha256 +1 -0
- package/android/com/facebook/react/react-native/0.70.0-rc.2/react-native-0.70.0-rc.2.pom.sha512 +1 -0
- package/android/com/facebook/react/react-native/maven-metadata.xml +4 -4
- package/android/com/facebook/react/react-native/maven-metadata.xml.md5 +1 -1
- package/android/com/facebook/react/react-native/maven-metadata.xml.sha1 +1 -1
- package/android/com/facebook/react/react-native/maven-metadata.xml.sha256 +1 -1
- package/android/com/facebook/react/react-native/maven-metadata.xml.sha512 +1 -1
- package/flow/JSITimerInternalType.js +30 -0
- package/jest/setup.js +4 -0
- package/package.json +24 -22
- package/scripts/cocoapods/codegen.rb +102 -0
- package/scripts/cocoapods/codegen_script_phase_extractor.rb +13 -0
- package/scripts/cocoapods/codegen_utils.rb +286 -0
- package/scripts/cocoapods/fabric.rb +19 -0
- package/scripts/cocoapods/flipper.rb +118 -0
- package/scripts/cocoapods/helpers.rb +28 -0
- package/scripts/cocoapods/hermes.rb +20 -0
- package/scripts/cocoapods/local_podspec_patch.rb +51 -0
- package/scripts/cocoapods/new_architecture.rb +59 -0
- package/scripts/cocoapods/utils.rb +154 -0
- package/scripts/codegen/codegen-utils.js +37 -0
- package/scripts/codegen/generate-artifacts-executor.js +481 -0
- package/scripts/codegen/generate-specs-cli-executor.js +127 -0
- package/scripts/generate-artifacts.js +11 -257
- package/scripts/generate-specs-cli.js +3 -88
- package/scripts/hermes/hermes-utils.js +21 -28
- package/scripts/hermes/prepare-hermes-for-build.js +3 -5
- package/scripts/ios-configure-glog.sh +3 -2
- package/scripts/launchPackager.command +4 -0
- package/scripts/react-native-xcode.sh +9 -16
- package/scripts/react_native_pods.rb +90 -561
- package/scripts/react_native_pods_utils/script_phases.sh +4 -4
- package/sdks/.hermesversion +1 -1
- package/sdks/hermes-engine/hermes-engine.podspec +5 -2
- package/sdks/hermes-engine/utils/build-apple-framework.sh +5 -0
- package/sdks/hermesc/linux64-bin/hermesc +0 -0
- package/sdks/hermesc/osx-bin/hermesc +0 -0
- package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
- package/template/App.js +6 -1
- package/template/_flowconfig +1 -1
- package/template/_node-version +1 -0
- package/template/android/app/build.gradle +6 -1
- package/template/android/app/src/main/jni/Android.mk +16 -11
- package/template/android/app/src/main/jni/MainApplicationModuleProvider.cpp +9 -1
- package/template/android/app/src/main/jni/MainApplicationModuleProvider.h +1 -1
- package/template/android/app/src/main/jni/MainApplicationTurboModuleManagerDelegate.cpp +4 -4
- package/template/android/app/src/main/jni/MainApplicationTurboModuleManagerDelegate.h +4 -4
- package/template/android/app/src/main/jni/MainComponentsRegistry.cpp +4 -0
- package/template/android/build.gradle +1 -3
- package/template/android/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/template/android/gradle/wrapper/gradle-wrapper.properties +1 -1
- package/template/ios/Podfile +14 -6
- package/template/package.json +4 -4
- package/third-party-podspecs/RCT-Folly.podspec +2 -2
- package/Libraries/vendor/emitter/EventSubscription.js +0 -19
- package/Libraries/vendor/emitter/_EmitterSubscription.js +0 -62
- package/Libraries/vendor/emitter/_EventEmitter.js +0 -184
- package/Libraries/vendor/emitter/_EventSubscription.js +0 -45
- package/Libraries/vendor/emitter/_EventSubscriptionVendor.js +0 -108
- package/ReactAndroid/src/androidTest/AndroidManifest.xml +0 -20
- package/ReactAndroid/src/androidTest/assets/BUCK +0 -7
- package/ReactAndroid/src/androidTest/buck-runner/AndroidManifest.xml +0 -28
- package/ReactAndroid/src/androidTest/buck-runner/BUCK +0 -24
- package/ReactAndroid/src/androidTest/java/com/facebook/react/bridge/ArgumentsTest.java +0 -93
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/AbstractScrollViewTestCase.java +0 -108
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/AssertModule.java +0 -53
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/BUCK +0 -46
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/FabricUIManagerFactory.java +0 -19
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/FakeAsyncLocalStorage.java +0 -56
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/FakeWebSocketModule.java +0 -44
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/InstanceSpecForTestPackage.java +0 -38
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/IntRecordingModule.java +0 -54
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/JSIntegrationTestChecker.java +0 -55
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/MultipleFailureException.java +0 -46
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppInstrumentationTestCase.java +0 -152
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppTestActivity.java +0 -378
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactInstanceSpecForTest.java +0 -127
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactInstrumentationTest.java +0 -125
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactIntegrationTestCase.java +0 -209
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactSettingsForTests.java +0 -59
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactTestAppShell.java +0 -38
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactTestApplicationImpl.java +0 -22
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactTestFactory.java +0 -27
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactTestHelper.java +0 -217
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ScreenshotingFrameLayout.java +0 -77
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/SingleTouchGestureGenerator.java +0 -150
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/StringRecordingModule.java +0 -42
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/idledetection/BUCK +0 -16
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/idledetection/ReactBridgeIdleSignaler.java +0 -65
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/idledetection/ReactIdleDetectionUtil.java +0 -121
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/network/BUCK +0 -25
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/network/NetworkRecordingModuleMock.java +0 -147
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/rule/BUCK +0 -43
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/rule/ReactNativeTestRule.java +0 -184
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/AnimatedTransformTest.java +0 -49
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/BUCK +0 -43
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/CatalystMeasureLayoutTest.java +0 -138
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/CatalystMultitouchHandlingTestCase.java +0 -681
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/CatalystNativeJSToJavaParametersTestCase.java +0 -837
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/CatalystNativeJavaToJSArgumentsTestCase.java +0 -385
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/CatalystNativeJavaToJSReturnValuesTestCase.java +0 -162
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/CatalystSubviewsClippingTestCase.java +0 -301
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/CatalystTouchBubblingTestCase.java +0 -155
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/CatalystUIManagerTestCase.java +0 -256
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/ImageErrorTestCase.java +0 -47
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/ImageOverlayColorTestCase.java +0 -25
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/InitialPropsTestCase.java +0 -120
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/JSLocaleTest.java +0 -102
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/JSResponderTestCase.java +0 -62
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/LayoutEventsTestCase.java +0 -37
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/NativeIdTestCase.java +0 -89
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/ProgressBarTestCase.java +0 -123
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/ReactHorizontalScrollViewTestCase.java +0 -125
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/ReactScrollViewTestCase.java +0 -127
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/ReactSwipeRefreshLayoutTestCase.java +0 -97
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/ShareTestCase.java +0 -92
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/TestIdTestCase.java +0 -46
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/TextInputTestCase.java +0 -327
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/ViewRenderingTestCase.java +0 -154
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/core/BUCK +0 -33
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/core/ReactInstanceManagerTest.java +0 -96
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/core/ReactRootViewTest.java +0 -203
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/core/WritableNativeMapTest.java +0 -130
- package/ReactAndroid/src/androidTest/js/AnimatedTransformTestModule.js +0 -85
- package/ReactAndroid/src/androidTest/js/Asserts.js +0 -38
- package/ReactAndroid/src/androidTest/js/BUCK +0 -29
- package/ReactAndroid/src/androidTest/js/CatalystRootViewTestModule.js +0 -62
- package/ReactAndroid/src/androidTest/js/ImageErrorTestApp.js +0 -56
- package/ReactAndroid/src/androidTest/js/ImageOverlayColorTestApp.js +0 -29
- package/ReactAndroid/src/androidTest/js/InitialPropsTestApp.js +0 -25
- package/ReactAndroid/src/androidTest/js/JSResponderTestApp.js +0 -66
- package/ReactAndroid/src/androidTest/js/LayoutEventsTestApp.js +0 -89
- package/ReactAndroid/src/androidTest/js/MeasureLayoutTestModule.js +0 -214
- package/ReactAndroid/src/androidTest/js/MultitouchHandlingTestAppModule.js +0 -78
- package/ReactAndroid/src/androidTest/js/NativeIdTestModule.js +0 -76
- package/ReactAndroid/src/androidTest/js/ProgressBarTestModule.js +0 -59
- package/ReactAndroid/src/androidTest/js/ScrollViewTestModule.js +0 -183
- package/ReactAndroid/src/androidTest/js/ShareTestModule.js +0 -36
- package/ReactAndroid/src/androidTest/js/SubviewsClippingTestModule.js +0 -369
- package/ReactAndroid/src/androidTest/js/SwipeRefreshLayoutTestModule.js +0 -101
- package/ReactAndroid/src/androidTest/js/TestBundle.js +0 -113
- package/ReactAndroid/src/androidTest/js/TestIdTestModule.js +0 -86
- package/ReactAndroid/src/androidTest/js/TestJSLocaleModule.js +0 -28
- package/ReactAndroid/src/androidTest/js/TestJSToJavaParametersModule.js +0 -125
- package/ReactAndroid/src/androidTest/js/TestJavaToJSArgumentsModule.js +0 -114
- package/ReactAndroid/src/androidTest/js/TestJavaToJSReturnValuesModule.js +0 -39
- package/ReactAndroid/src/androidTest/js/TextInputTestModule.js +0 -185
- package/ReactAndroid/src/androidTest/js/TouchBubblingTestAppModule.js +0 -84
- package/ReactAndroid/src/androidTest/js/UIManagerTestModule.js +0 -268
- package/ReactAndroid/src/androidTest/js/ViewRenderingTestModule.js +0 -109
- package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/Android.mk +0 -31
- package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/Android.mk +0 -55
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/NativeRunnable.java +0 -25
- package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/Android.mk +0 -49
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Android.mk +0 -105
- package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/Android.mk +0 -27
- package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/Android.mk +0 -27
- package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/jni/Android.mk +0 -32
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/Android.mk +0 -63
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/Android.mk +0 -45
- package/ReactAndroid/src/main/jni/Application.mk +0 -34
- package/ReactAndroid/src/main/jni/first-party/fb/Android.mk +0 -30
- package/ReactAndroid/src/main/jni/first-party/fbgloginit/Android.mk +0 -23
- package/ReactAndroid/src/main/jni/first-party/yogajni/Android.mk +0 -27
- package/ReactAndroid/src/main/jni/react/jni/Android.mk +0 -176
- package/ReactAndroid/src/main/jni/react/jni/JNativeRunnable.h +0 -52
- package/ReactAndroid/src/main/jni/third-party/boost/Android.mk +0 -15
- package/ReactAndroid/src/main/jni/third-party/double-conversion/Android.mk +0 -22
- package/ReactAndroid/src/main/jni/third-party/fmt/Android.mk +0 -15
- package/ReactAndroid/src/main/jni/third-party/folly/Android.mk +0 -128
- package/ReactAndroid/src/main/jni/third-party/glog/Android.mk +0 -32
- package/ReactAndroid/src/main/jni/third-party/jsc/Android.mk +0 -6
- package/ReactAndroid/src/main/jni/third-party/libevent/Android.mk +0 -36
- package/ReactAndroid/src/test/java/com/facebook/common/logging/BUCK +0 -17
- package/ReactAndroid/src/test/java/com/facebook/common/logging/FakeLoggingDelegate.java +0 -138
- package/ReactAndroid/src/test/java/com/facebook/react/BUCK +0 -28
- package/ReactAndroid/src/test/java/com/facebook/react/CompositeReactPackageTest.java +0 -156
- package/ReactAndroid/src/test/java/com/facebook/react/ReactActivityDelegateTest.kt +0 -62
- package/ReactAndroid/src/test/java/com/facebook/react/RootViewTest.java +0 -255
- package/ReactAndroid/src/test/java/com/facebook/react/animated/BUCK +0 -22
- package/ReactAndroid/src/test/java/com/facebook/react/animated/NativeAnimatedInterpolationTest.java +0 -123
- package/ReactAndroid/src/test/java/com/facebook/react/animated/NativeAnimatedNodeTraversalTest.java +0 -1294
- package/ReactAndroid/src/test/java/com/facebook/react/bridge/BUCK +0 -44
- package/ReactAndroid/src/test/java/com/facebook/react/bridge/BaseJavaModuleTest.java +0 -103
- package/ReactAndroid/src/test/java/com/facebook/react/bridge/FallbackJSBundleLoaderTest.java +0 -176
- package/ReactAndroid/src/test/java/com/facebook/react/bridge/InstanceHandleHelper.java +0 -19
- package/ReactAndroid/src/test/java/com/facebook/react/bridge/JavaOnlyArrayTest.java +0 -37
- package/ReactAndroid/src/test/java/com/facebook/react/bridge/JavaScriptModuleRegistryTest.java +0 -35
- package/ReactAndroid/src/test/java/com/facebook/react/bridge/ReactTestHelper.java +0 -59
- package/ReactAndroid/src/test/java/com/facebook/react/devsupport/BUCK +0 -23
- package/ReactAndroid/src/test/java/com/facebook/react/devsupport/JSDebuggerWebSocketClientTest.java +0 -139
- package/ReactAndroid/src/test/java/com/facebook/react/devsupport/MultipartStreamReaderTest.java +0 -151
- package/ReactAndroid/src/test/java/com/facebook/react/devsupport/StackTraceHelperTest.java +0 -65
- package/ReactAndroid/src/test/java/com/facebook/react/fabric/events/BUCK +0 -16
- package/ReactAndroid/src/test/java/com/facebook/react/fabric/events/TouchEventDispatchTest.java +0 -616
- package/ReactAndroid/src/test/java/com/facebook/react/modules/BUCK +0 -45
- package/ReactAndroid/src/test/java/com/facebook/react/modules/blob/BlobModuleTest.java +0 -156
- package/ReactAndroid/src/test/java/com/facebook/react/modules/camera/ImageStoreManagerTest.java +0 -81
- package/ReactAndroid/src/test/java/com/facebook/react/modules/clipboard/ClipboardModuleTest.java +0 -57
- package/ReactAndroid/src/test/java/com/facebook/react/modules/deviceinfo/DeviceInfoModuleTest.java +0 -168
- package/ReactAndroid/src/test/java/com/facebook/react/modules/dialog/DialogModuleTest.java +0 -165
- package/ReactAndroid/src/test/java/com/facebook/react/modules/network/HeaderUtilTest.java +0 -73
- package/ReactAndroid/src/test/java/com/facebook/react/modules/network/NetworkingModuleTest.java +0 -647
- package/ReactAndroid/src/test/java/com/facebook/react/modules/network/ProgressiveStringDecoderTest.java +0 -138
- package/ReactAndroid/src/test/java/com/facebook/react/modules/network/ReactCookieJarContainerTest.java +0 -71
- package/ReactAndroid/src/test/java/com/facebook/react/modules/share/ShareModuleTest.java +0 -230
- package/ReactAndroid/src/test/java/com/facebook/react/modules/storage/AsyncStorageModuleTest.java +0 -345
- package/ReactAndroid/src/test/java/com/facebook/react/modules/timing/TimingModuleTest.java +0 -306
- package/ReactAndroid/src/test/java/com/facebook/react/packagerconnection/BUCK +0 -18
- package/ReactAndroid/src/test/java/com/facebook/react/packagerconnection/JSPackagerClientTest.java +0 -144
- package/ReactAndroid/src/test/java/com/facebook/react/uimanager/BUCK +0 -40
- package/ReactAndroid/src/test/java/com/facebook/react/uimanager/BaseViewManagerTest.java +0 -79
- package/ReactAndroid/src/test/java/com/facebook/react/uimanager/LayoutPropertyApplicatorTest.java +0 -470
- package/ReactAndroid/src/test/java/com/facebook/react/uimanager/MatrixMathHelperTest.java +0 -173
- package/ReactAndroid/src/test/java/com/facebook/react/uimanager/ReactPropAnnotationSetterSpecTest.java +0 -125
- package/ReactAndroid/src/test/java/com/facebook/react/uimanager/ReactPropAnnotationSetterTest.java +0 -499
- package/ReactAndroid/src/test/java/com/facebook/react/uimanager/ReactPropConstantsTest.java +0 -163
- package/ReactAndroid/src/test/java/com/facebook/react/uimanager/ReactPropForShadowNodeSetterTest.java +0 -160
- package/ReactAndroid/src/test/java/com/facebook/react/uimanager/ReactPropForShadowNodeSpecTest.java +0 -122
- package/ReactAndroid/src/test/java/com/facebook/react/uimanager/SimpleViewPropertyTest.java +0 -116
- package/ReactAndroid/src/test/java/com/facebook/react/uimanager/UIManagerModuleConstantsTest.java +0 -173
- package/ReactAndroid/src/test/java/com/facebook/react/uimanager/UIManagerModuleTest.java +0 -721
- package/ReactAndroid/src/test/java/com/facebook/react/uimanager/layoutanimation/BUCK +0 -16
- package/ReactAndroid/src/test/java/com/facebook/react/uimanager/layoutanimation/InterpolatorTypeTest.java +0 -49
- package/ReactAndroid/src/test/java/com/facebook/react/util/BUCK +0 -17
- package/ReactAndroid/src/test/java/com/facebook/react/util/JSStackTraceTest.java +0 -96
- package/ReactAndroid/src/test/java/com/facebook/react/views/BUCK +0 -41
- package/ReactAndroid/src/test/java/com/facebook/react/views/image/ImageResizeModeTest.java +0 -42
- package/ReactAndroid/src/test/java/com/facebook/react/views/image/ReactImagePropertyTest.java +0 -143
- package/ReactAndroid/src/test/java/com/facebook/react/views/slider/ReactSliderPropertyTest.java +0 -100
- package/ReactAndroid/src/test/java/com/facebook/react/views/text/CustomLineHeightSpanTest.java +0 -113
- package/ReactAndroid/src/test/java/com/facebook/react/views/text/ReactTextTest.java +0 -516
- package/ReactAndroid/src/test/java/com/facebook/react/views/textinput/ReactTextInputPropertyTest.java +0 -400
- package/ReactAndroid/src/test/java/com/facebook/react/views/textinput/TextInputTest.java +0 -174
- package/ReactAndroid/src/test/java/com/facebook/react/views/view/ColorUtilTest.java +0 -56
- package/ReactAndroid/src/test/java/org/mockito/configuration/BUCK +0 -13
- package/ReactAndroid/src/test/java/org/mockito/configuration/MockitoConfiguration.java +0 -24
- package/ReactAndroid/src/test/resources/BUCK +0 -18
- package/ReactAndroid/src/test/resources/robolectric.properties +0 -2
- package/ReactCommon/butter/Android.mk +0 -27
- package/ReactCommon/callinvoker/Android.mk +0 -25
- package/ReactCommon/cxxreact/Android.mk +0 -51
- package/ReactCommon/hermes/executor/Android.mk +0 -41
- package/ReactCommon/hermes/inspector/Android.mk +0 -36
- package/ReactCommon/jsi/Android.mk +0 -41
- package/ReactCommon/jsiexecutor/Android.mk +0 -23
- package/ReactCommon/jsinspector/Android.mk +0 -20
- package/ReactCommon/logger/Android.mk +0 -24
- package/ReactCommon/microprofiler/.clang-tidy +0 -5
- package/ReactCommon/microprofiler/BUCK +0 -30
- package/ReactCommon/microprofiler/MicroProfiler.cpp +0 -252
- package/ReactCommon/microprofiler/MicroProfiler.h +0 -89
- package/ReactCommon/react/bridging/Android.mk +0 -27
- package/ReactCommon/react/config/Android.mk +0 -26
- package/ReactCommon/react/debug/Android.mk +0 -30
- package/ReactCommon/react/nativemodule/core/Android.mk +0 -40
- package/ReactCommon/react/nativemodule/samples/platform/android/Android.mk +0 -23
- package/ReactCommon/react/renderer/animations/Android.mk +0 -58
- package/ReactCommon/react/renderer/attributedstring/Android.mk +0 -53
- package/ReactCommon/react/renderer/componentregistry/Android.mk +0 -42
- package/ReactCommon/react/renderer/componentregistry/native/Android.mk +0 -37
- package/ReactCommon/react/renderer/components/image/Android.mk +0 -51
- package/ReactCommon/react/renderer/components/modal/Android.mk +0 -55
- package/ReactCommon/react/renderer/components/progressbar/Android.mk +0 -53
- package/ReactCommon/react/renderer/components/root/Android.mk +0 -46
- package/ReactCommon/react/renderer/components/scrollview/Android.mk +0 -49
- package/ReactCommon/react/renderer/components/slider/Android.mk +0 -59
- package/ReactCommon/react/renderer/components/switch/Android.mk +0 -53
- package/ReactCommon/react/renderer/components/text/Android.mk +0 -59
- package/ReactCommon/react/renderer/components/textinput/Android.mk +0 -67
- package/ReactCommon/react/renderer/components/unimplementedview/Android.mk +0 -47
- package/ReactCommon/react/renderer/components/view/Android.mk +0 -47
- package/ReactCommon/react/renderer/core/Android.mk +0 -41
- package/ReactCommon/react/renderer/debug/Android.mk +0 -28
- package/ReactCommon/react/renderer/graphics/Android.mk +0 -39
- package/ReactCommon/react/renderer/imagemanager/Android.mk +0 -44
- package/ReactCommon/react/renderer/leakchecker/Android.mk +0 -33
- package/ReactCommon/react/renderer/mapbuffer/Android.mk +0 -34
- package/ReactCommon/react/renderer/mounting/Android.mk +0 -55
- package/ReactCommon/react/renderer/runtimescheduler/Android.mk +0 -34
- package/ReactCommon/react/renderer/scheduler/Android.mk +0 -62
- package/ReactCommon/react/renderer/telemetry/Android.mk +0 -43
- package/ReactCommon/react/renderer/templateprocessor/Android.mk +0 -46
- package/ReactCommon/react/renderer/textlayoutmanager/Android.mk +0 -63
- package/ReactCommon/react/renderer/uimanager/Android.mk +0 -58
- package/ReactCommon/react/utils/Android.mk +0 -33
- package/ReactCommon/reactperflogger/Android.mk +0 -26
- package/ReactCommon/runtimeexecutor/Android.mk +0 -19
- package/ReactCommon/yoga/Android.mk +0 -21
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-debug-javadoc.jar +0 -0
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-debug-javadoc.jar.md5 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-debug-javadoc.jar.sha1 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-debug-javadoc.jar.sha256 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-debug-javadoc.jar.sha512 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-debug.aar +0 -0
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-debug.aar.md5 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-debug.aar.sha1 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-debug.aar.sha256 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-debug.aar.sha512 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-release-javadoc.jar +0 -0
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-release-javadoc.jar.md5 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-release-javadoc.jar.sha1 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-release-javadoc.jar.sha256 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-release-javadoc.jar.sha512 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-release.aar +0 -0
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-release.aar.md5 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-release.aar.sha1 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-release.aar.sha256 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3-release.aar.sha512 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3.module.md5 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3.module.sha1 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3.module.sha256 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3.module.sha512 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3.pom.md5 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3.pom.sha1 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3.pom.sha256 +0 -1
- package/android/com/facebook/react/hermes-engine/0.69.3/hermes-engine-0.69.3.pom.sha512 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-debug-javadoc.jar +0 -0
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-debug-javadoc.jar.md5 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-debug-javadoc.jar.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-debug-javadoc.jar.sha256 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-debug-javadoc.jar.sha512 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-debug-sources.jar.md5 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-debug-sources.jar.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-debug-sources.jar.sha256 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-debug-sources.jar.sha512 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-debug.aar.md5 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-debug.aar.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-debug.aar.sha256 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-debug.aar.sha512 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-release-javadoc.jar +0 -0
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-release-javadoc.jar.md5 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-release-javadoc.jar.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-release-javadoc.jar.sha256 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-release-javadoc.jar.sha512 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-release-sources.jar.md5 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-release-sources.jar.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-release-sources.jar.sha256 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-release-sources.jar.sha512 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-release.aar.md5 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-release.aar.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-release.aar.sha256 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3-release.aar.sha512 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3.module.md5 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3.module.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3.module.sha256 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3.module.sha512 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3.pom.md5 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3.pom.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3.pom.sha256 +0 -1
- package/android/com/facebook/react/react-native/0.69.3/react-native-0.69.3.pom.sha512 +0 -1
- package/jest/preprocessor.js +0 -40
- package/jest/preprocessor_DO_NOT_USE.js +0 -122
- package/scripts/cocoapods/FlipperConfiguration.rb +0 -31
|
@@ -11,18 +11,22 @@ import android.content.Context;
|
|
|
11
11
|
import android.view.View;
|
|
12
12
|
import androidx.annotation.NonNull;
|
|
13
13
|
import androidx.annotation.Nullable;
|
|
14
|
+
import com.facebook.common.logging.FLog;
|
|
14
15
|
import com.facebook.react.bridge.BaseJavaModule;
|
|
15
16
|
import com.facebook.react.bridge.ReactApplicationContext;
|
|
16
17
|
import com.facebook.react.bridge.ReadableArray;
|
|
17
18
|
import com.facebook.react.bridge.ReadableMap;
|
|
18
19
|
import com.facebook.react.common.mapbuffer.MapBuffer;
|
|
20
|
+
import com.facebook.react.config.ReactFeatureFlags;
|
|
19
21
|
import com.facebook.react.touch.JSResponderHandler;
|
|
20
22
|
import com.facebook.react.touch.ReactInterceptingViewGroup;
|
|
21
23
|
import com.facebook.react.uimanager.annotations.ReactProp;
|
|
22
24
|
import com.facebook.react.uimanager.annotations.ReactPropGroup;
|
|
23
25
|
import com.facebook.react.uimanager.annotations.ReactPropertyHolder;
|
|
24
26
|
import com.facebook.yoga.YogaMeasureMode;
|
|
27
|
+
import java.util.HashMap;
|
|
25
28
|
import java.util.Map;
|
|
29
|
+
import java.util.Stack;
|
|
26
30
|
|
|
27
31
|
/**
|
|
28
32
|
* Class responsible for knowing how to create and update catalyst Views of a given type. It is also
|
|
@@ -33,6 +37,40 @@ import java.util.Map;
|
|
|
33
37
|
public abstract class ViewManager<T extends View, C extends ReactShadowNode>
|
|
34
38
|
extends BaseJavaModule {
|
|
35
39
|
|
|
40
|
+
private static String NAME = ViewManager.class.getSimpleName();
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* For View recycling: we store a Stack of unused, dead Views. This is null by default, and when
|
|
44
|
+
* null signals that View Recycling is disabled. `enableViewRecycling` must be explicitly called
|
|
45
|
+
* in a concrete constructor to enable View Recycling per ViewManager.
|
|
46
|
+
*/
|
|
47
|
+
@Nullable private HashMap<Integer, Stack<T>> mRecyclableViews = null;
|
|
48
|
+
|
|
49
|
+
private int mRecyclableViewsBufferSize = 1024;
|
|
50
|
+
|
|
51
|
+
/** Call in constructor of concrete ViewManager class to enable. */
|
|
52
|
+
protected void setupViewRecycling() {
|
|
53
|
+
if (ReactFeatureFlags.enableViewRecycling) {
|
|
54
|
+
mRecyclableViews = new HashMap<>();
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/** Call in constructor of concrete ViewManager class to enable. */
|
|
59
|
+
protected void setupViewRecycling(int bufferSize) {
|
|
60
|
+
mRecyclableViewsBufferSize = bufferSize;
|
|
61
|
+
setupViewRecycling();
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
private @Nullable Stack<T> getRecyclableViewStack(int surfaceId) {
|
|
65
|
+
if (mRecyclableViews == null) {
|
|
66
|
+
return null;
|
|
67
|
+
}
|
|
68
|
+
if (!mRecyclableViews.containsKey(surfaceId)) {
|
|
69
|
+
mRecyclableViews.put(surfaceId, new Stack<T>());
|
|
70
|
+
}
|
|
71
|
+
return mRecyclableViews.get(surfaceId);
|
|
72
|
+
}
|
|
73
|
+
|
|
36
74
|
/**
|
|
37
75
|
* For the vast majority of ViewManagers, you will not need to override this. Only override this
|
|
38
76
|
* if you really know what you're doing and have a very unique use-case.
|
|
@@ -137,7 +175,13 @@ public abstract class ViewManager<T extends View, C extends ReactShadowNode>
|
|
|
137
175
|
@NonNull ThemedReactContext reactContext,
|
|
138
176
|
@Nullable ReactStylesDiffMap initialProps,
|
|
139
177
|
@Nullable StateWrapper stateWrapper) {
|
|
140
|
-
T view =
|
|
178
|
+
T view = null;
|
|
179
|
+
@Nullable Stack<T> recyclableViews = getRecyclableViewStack(reactContext.getSurfaceId());
|
|
180
|
+
if (recyclableViews != null && !recyclableViews.empty()) {
|
|
181
|
+
view = recycleView(reactContext, recyclableViews.pop());
|
|
182
|
+
} else {
|
|
183
|
+
view = createViewInstance(reactContext);
|
|
184
|
+
}
|
|
141
185
|
view.setId(reactTag);
|
|
142
186
|
addEventEmitters(reactContext, view);
|
|
143
187
|
if (initialProps != null) {
|
|
@@ -157,7 +201,49 @@ public abstract class ViewManager<T extends View, C extends ReactShadowNode>
|
|
|
157
201
|
* Called when view is detached from view hierarchy and allows for some additional cleanup by the
|
|
158
202
|
* {@link ViewManager} subclass.
|
|
159
203
|
*/
|
|
160
|
-
public void onDropViewInstance(@NonNull T view) {
|
|
204
|
+
public void onDropViewInstance(@NonNull T view) {
|
|
205
|
+
// Some legacy components will return an Activity here instead of a ThemedReactContext
|
|
206
|
+
Context viewContext = view.getContext();
|
|
207
|
+
if (viewContext == null) {
|
|
208
|
+
// Who knows! Anything is possible. Checking instanceof on null is an NPE,
|
|
209
|
+
// So this is not redundant.
|
|
210
|
+
FLog.e(NAME, "onDropViewInstance: view [" + view.getId() + "] has a null context");
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
if (!(viewContext instanceof ThemedReactContext)) {
|
|
214
|
+
FLog.e(
|
|
215
|
+
NAME,
|
|
216
|
+
"onDropViewInstance: view ["
|
|
217
|
+
+ view.getId()
|
|
218
|
+
+ "] has a context that is not a ThemedReactContext: "
|
|
219
|
+
+ viewContext);
|
|
220
|
+
return;
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
// View recycling
|
|
224
|
+
ThemedReactContext themedReactContext = (ThemedReactContext) viewContext;
|
|
225
|
+
int surfaceId = themedReactContext.getSurfaceId();
|
|
226
|
+
@Nullable Stack<T> recyclableViews = getRecyclableViewStack(surfaceId);
|
|
227
|
+
|
|
228
|
+
// Any max buffer size <0 results in an infinite buffer size
|
|
229
|
+
if (recyclableViews != null
|
|
230
|
+
&& (mRecyclableViewsBufferSize < 0
|
|
231
|
+
|| recyclableViews.size() < mRecyclableViewsBufferSize)) {
|
|
232
|
+
recyclableViews.push(prepareToRecycleView(themedReactContext, view));
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
/**
|
|
237
|
+
* Called when a View is removed from the hierachy. This should be used to reset any properties.
|
|
238
|
+
*/
|
|
239
|
+
protected T prepareToRecycleView(@NonNull ThemedReactContext reactContext, @NonNull T view) {
|
|
240
|
+
return view;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
/** Called when a View is going to be reused. */
|
|
244
|
+
protected T recycleView(@NonNull ThemedReactContext reactContext, @NonNull T view) {
|
|
245
|
+
return view;
|
|
246
|
+
}
|
|
161
247
|
|
|
162
248
|
/**
|
|
163
249
|
* Subclasses can override this method to install custom event emitters on the given View. You
|
|
@@ -285,7 +371,7 @@ public abstract class ViewManager<T extends View, C extends ReactShadowNode>
|
|
|
285
371
|
* this component type.
|
|
286
372
|
*/
|
|
287
373
|
public @Nullable Object updateState(
|
|
288
|
-
@NonNull T view, ReactStylesDiffMap props,
|
|
374
|
+
@NonNull T view, ReactStylesDiffMap props, StateWrapper stateWrapper) {
|
|
289
375
|
return null;
|
|
290
376
|
}
|
|
291
377
|
|
|
@@ -370,4 +456,24 @@ public abstract class ViewManager<T extends View, C extends ReactShadowNode>
|
|
|
370
456
|
* components support setting padding, the default implementation of this method does nothing.
|
|
371
457
|
*/
|
|
372
458
|
public void setPadding(T view, int left, int top, int right, int bottom) {}
|
|
459
|
+
|
|
460
|
+
/**
|
|
461
|
+
* Lifecycle method: called when a surface is stopped. Currently only used for View Recycling
|
|
462
|
+
* cleanup. There is no corresponding startSurface lifecycle event for ViewManagers because we
|
|
463
|
+
* currently only need this for recycling cleanup. Only called in Fabric.
|
|
464
|
+
*/
|
|
465
|
+
public void onSurfaceStopped(int surfaceId) {
|
|
466
|
+
if (mRecyclableViews != null) {
|
|
467
|
+
mRecyclableViews.remove(surfaceId);
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
|
|
471
|
+
/** With even slight memory pressure, we immediately evict all recyclable Views. */
|
|
472
|
+
/* package */ void trimMemory() {
|
|
473
|
+
// Wipe out all existing recyclable Views, but do not disable View Recycling entirely.
|
|
474
|
+
// We only take any action if View Recycling is already enabled.
|
|
475
|
+
if (mRecyclableViews != null) {
|
|
476
|
+
mRecyclableViews = new HashMap<>();
|
|
477
|
+
}
|
|
478
|
+
}
|
|
373
479
|
}
|
|
@@ -7,7 +7,10 @@
|
|
|
7
7
|
|
|
8
8
|
package com.facebook.react.uimanager;
|
|
9
9
|
|
|
10
|
+
import android.content.ComponentCallbacks2;
|
|
11
|
+
import android.content.res.Configuration;
|
|
10
12
|
import androidx.annotation.Nullable;
|
|
13
|
+
import com.facebook.react.bridge.UiThreadUtil;
|
|
11
14
|
import com.facebook.react.common.MapBuilder;
|
|
12
15
|
import java.util.List;
|
|
13
16
|
import java.util.Map;
|
|
@@ -16,7 +19,7 @@ import java.util.Map;
|
|
|
16
19
|
* Class that stores the mapping between native view name used in JS and the corresponding instance
|
|
17
20
|
* of {@link ViewManager}.
|
|
18
21
|
*/
|
|
19
|
-
public final class ViewManagerRegistry {
|
|
22
|
+
public final class ViewManagerRegistry implements ComponentCallbacks2 {
|
|
20
23
|
|
|
21
24
|
private final Map<String, ViewManager> mViewManagers;
|
|
22
25
|
private final @Nullable ViewManagerResolver mViewManagerResolver;
|
|
@@ -91,4 +94,51 @@ public final class ViewManagerRegistry {
|
|
|
91
94
|
}
|
|
92
95
|
return null;
|
|
93
96
|
}
|
|
97
|
+
|
|
98
|
+
/** Send lifecycle signal to all ViewManagers that StopSurface has been called. */
|
|
99
|
+
public void onSurfaceStopped(final int surfaceId) {
|
|
100
|
+
Runnable runnable =
|
|
101
|
+
new Runnable() {
|
|
102
|
+
@Override
|
|
103
|
+
public void run() {
|
|
104
|
+
for (Map.Entry<String, ViewManager> entry : mViewManagers.entrySet()) {
|
|
105
|
+
entry.getValue().onSurfaceStopped(surfaceId);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
if (UiThreadUtil.isOnUiThread()) {
|
|
110
|
+
runnable.run();
|
|
111
|
+
} else {
|
|
112
|
+
UiThreadUtil.runOnUiThread(runnable);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/** ComponentCallbacks2 method. */
|
|
117
|
+
@Override
|
|
118
|
+
public void onTrimMemory(int level) {
|
|
119
|
+
Runnable runnable =
|
|
120
|
+
new Runnable() {
|
|
121
|
+
@Override
|
|
122
|
+
public void run() {
|
|
123
|
+
for (Map.Entry<String, ViewManager> entry : mViewManagers.entrySet()) {
|
|
124
|
+
entry.getValue().trimMemory();
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
if (UiThreadUtil.isOnUiThread()) {
|
|
129
|
+
runnable.run();
|
|
130
|
+
} else {
|
|
131
|
+
UiThreadUtil.runOnUiThread(runnable);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
/** ComponentCallbacks2 method. */
|
|
136
|
+
@Override
|
|
137
|
+
public void onConfigurationChanged(Configuration newConfig) {}
|
|
138
|
+
|
|
139
|
+
/** ComponentCallbacks2 method. */
|
|
140
|
+
@Override
|
|
141
|
+
public void onLowMemory() {
|
|
142
|
+
this.onTrimMemory(0);
|
|
143
|
+
}
|
|
94
144
|
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
package com.facebook.react.uimanager;
|
|
9
9
|
|
|
10
|
-
import java.util.
|
|
10
|
+
import java.util.Collection;
|
|
11
11
|
import javax.annotation.Nullable;
|
|
12
12
|
|
|
13
13
|
/** Enables lazy discovery of a specific {@link ViewManager} by its name. */
|
|
@@ -22,5 +22,5 @@ public interface ViewManagerResolver {
|
|
|
22
22
|
/**
|
|
23
23
|
* Provides a list of view manager names to register in JS as {@code UIManager.ViewManagerName}
|
|
24
24
|
*/
|
|
25
|
-
|
|
25
|
+
Collection<String> getViewManagerNames();
|
|
26
26
|
}
|
|
@@ -146,6 +146,8 @@ public class ViewProps {
|
|
|
146
146
|
public static final String Z_INDEX = "zIndex";
|
|
147
147
|
public static final String RENDER_TO_HARDWARE_TEXTURE = "renderToHardwareTextureAndroid";
|
|
148
148
|
public static final String ACCESSIBILITY_LABEL = "accessibilityLabel";
|
|
149
|
+
public static final String ACCESSIBILITY_COLLECTION = "accessibilityCollection";
|
|
150
|
+
public static final String ACCESSIBILITY_COLLECTION_ITEM = "accessibilityCollectionItem";
|
|
149
151
|
public static final String ACCESSIBILITY_HINT = "accessibilityHint";
|
|
150
152
|
public static final String ACCESSIBILITY_LIVE_REGION = "accessibilityLiveRegion";
|
|
151
153
|
public static final String ACCESSIBILITY_ROLE = "accessibilityRole";
|
|
@@ -9,6 +9,7 @@ rn_android_library(
|
|
|
9
9
|
"pfh:ReactNative_CommonInfrastructurePlaceholder",
|
|
10
10
|
"supermodule:xplat/default/public.react_native.infra",
|
|
11
11
|
],
|
|
12
|
+
language = "JAVA",
|
|
12
13
|
provided_deps = [
|
|
13
14
|
react_native_dep("third-party/android/androidx:annotation"),
|
|
14
15
|
react_native_dep("third-party/android/androidx:core"),
|
|
@@ -12,6 +12,7 @@ import com.facebook.react.bridge.WritableMap;
|
|
|
12
12
|
import com.facebook.react.common.SystemClock;
|
|
13
13
|
import com.facebook.react.uimanager.IllegalViewOperationException;
|
|
14
14
|
import com.facebook.react.uimanager.common.UIManagerType;
|
|
15
|
+
import com.facebook.react.uimanager.common.ViewUtil;
|
|
15
16
|
|
|
16
17
|
/**
|
|
17
18
|
* A UI event that can be dispatched to JS.
|
|
@@ -72,14 +73,22 @@ public abstract class Event<T extends Event> {
|
|
|
72
73
|
// We infer UIManagerType. Even though it's not passed in explicitly, we have a
|
|
73
74
|
// contract that Fabric events *always* have a SurfaceId passed in, and non-Fabric events
|
|
74
75
|
// NEVER have a SurfaceId passed in (the default/placeholder of -1 is passed in instead).
|
|
76
|
+
//
|
|
75
77
|
// Why does this matter?
|
|
76
78
|
// Events can be sent to Views that are part of the View hierarchy *but not directly managed
|
|
77
79
|
// by React Native*. For example, embedded custom hierachies, Litho hierachies, etc.
|
|
78
|
-
// In those cases it's important to
|
|
80
|
+
// In those cases it's important to know that the Event should be sent to the Fabric or
|
|
79
81
|
// non-Fabric UIManager, and we cannot use the ViewTag for inference since it's not controlled
|
|
80
82
|
// by RN and is essentially a random number.
|
|
81
83
|
// At some point it would be great to pass the SurfaceContext here instead.
|
|
82
|
-
|
|
84
|
+
@UIManagerType
|
|
85
|
+
int uiManagerType = (surfaceId == -1 ? UIManagerType.DEFAULT : UIManagerType.FABRIC);
|
|
86
|
+
if (uiManagerType == UIManagerType.DEFAULT && !ViewUtil.isRootTag(viewTag)) {
|
|
87
|
+
// TODO (T123064648): Some events for Fabric still didn't have the surfaceId set, so if it's
|
|
88
|
+
// not a React RootView, double check if the tag belongs to Fabric.
|
|
89
|
+
uiManagerType = ViewUtil.getUIManagerType(viewTag);
|
|
90
|
+
}
|
|
91
|
+
mUIManagerType = uiManagerType;
|
|
83
92
|
|
|
84
93
|
mTimestampMs = timestampMs;
|
|
85
94
|
mInitialized = true;
|
|
@@ -14,6 +14,7 @@ import com.facebook.infer.annotation.Assertions;
|
|
|
14
14
|
import com.facebook.react.bridge.Arguments;
|
|
15
15
|
import com.facebook.react.bridge.ReactSoftExceptionLogger;
|
|
16
16
|
import com.facebook.react.bridge.WritableMap;
|
|
17
|
+
import com.facebook.react.uimanager.PixelUtil;
|
|
17
18
|
import java.util.ArrayList;
|
|
18
19
|
import java.util.Arrays;
|
|
19
20
|
import java.util.List;
|
|
@@ -26,12 +27,22 @@ public class PointerEvent extends Event<PointerEvent> {
|
|
|
26
27
|
private static final int UNSET_COALESCING_KEY = -1;
|
|
27
28
|
|
|
28
29
|
public static PointerEvent obtain(
|
|
29
|
-
String eventName,
|
|
30
|
+
String eventName,
|
|
31
|
+
int surfaceId,
|
|
32
|
+
int viewTag,
|
|
33
|
+
MotionEvent motionEventToCopy,
|
|
34
|
+
float[] offsetCoords) {
|
|
30
35
|
PointerEvent event = EVENTS_POOL.acquire();
|
|
31
36
|
if (event == null) {
|
|
32
37
|
event = new PointerEvent();
|
|
33
38
|
}
|
|
34
|
-
event.init(
|
|
39
|
+
event.init(
|
|
40
|
+
eventName,
|
|
41
|
+
surfaceId,
|
|
42
|
+
viewTag,
|
|
43
|
+
Assertions.assertNotNull(motionEventToCopy),
|
|
44
|
+
offsetCoords,
|
|
45
|
+
0);
|
|
35
46
|
return event;
|
|
36
47
|
}
|
|
37
48
|
|
|
@@ -40,30 +51,43 @@ public class PointerEvent extends Event<PointerEvent> {
|
|
|
40
51
|
int surfaceId,
|
|
41
52
|
int viewTag,
|
|
42
53
|
MotionEvent motionEventToCopy,
|
|
54
|
+
float[] offsetCoords,
|
|
43
55
|
int coalescingKey) {
|
|
44
56
|
PointerEvent event = EVENTS_POOL.acquire();
|
|
45
57
|
if (event == null) {
|
|
46
58
|
event = new PointerEvent();
|
|
47
59
|
}
|
|
48
60
|
event.init(
|
|
49
|
-
eventName,
|
|
61
|
+
eventName,
|
|
62
|
+
surfaceId,
|
|
63
|
+
viewTag,
|
|
64
|
+
Assertions.assertNotNull(motionEventToCopy),
|
|
65
|
+
offsetCoords,
|
|
66
|
+
coalescingKey);
|
|
50
67
|
return event;
|
|
51
68
|
}
|
|
52
69
|
|
|
53
70
|
private @Nullable MotionEvent mMotionEvent;
|
|
54
71
|
private @Nullable String mEventName;
|
|
55
72
|
private int mCoalescingKey = UNSET_COALESCING_KEY;
|
|
73
|
+
private float mOffsetX;
|
|
74
|
+
private float mOffsetY;
|
|
75
|
+
private @Nullable List<WritableMap> mPointersEventData;
|
|
56
76
|
|
|
57
77
|
private void init(
|
|
58
78
|
String eventName,
|
|
59
79
|
int surfaceId,
|
|
60
80
|
int viewTag,
|
|
61
81
|
MotionEvent motionEventToCopy,
|
|
82
|
+
float[] offsetCoords,
|
|
62
83
|
int coalescingKey) {
|
|
84
|
+
|
|
63
85
|
super.init(surfaceId, viewTag, motionEventToCopy.getEventTime());
|
|
64
86
|
mEventName = eventName;
|
|
65
87
|
mMotionEvent = MotionEvent.obtain(motionEventToCopy);
|
|
66
88
|
mCoalescingKey = coalescingKey;
|
|
89
|
+
mOffsetX = offsetCoords[0];
|
|
90
|
+
mOffsetY = offsetCoords[1];
|
|
67
91
|
}
|
|
68
92
|
|
|
69
93
|
private PointerEvent() {}
|
|
@@ -75,12 +99,33 @@ public class PointerEvent extends Event<PointerEvent> {
|
|
|
75
99
|
|
|
76
100
|
@Override
|
|
77
101
|
public void dispatch(RCTEventEmitter rctEventEmitter) {
|
|
78
|
-
|
|
102
|
+
if (mMotionEvent == null) {
|
|
103
|
+
ReactSoftExceptionLogger.logSoftException(
|
|
104
|
+
TAG,
|
|
105
|
+
new IllegalStateException(
|
|
106
|
+
"Cannot dispatch a Pointer that has no MotionEvent; the PointerEvehas been recycled"));
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
if (mPointersEventData == null) {
|
|
110
|
+
mPointersEventData = createPointersEventData();
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
if (mPointersEventData == null) {
|
|
114
|
+
// No relevant MotionEvent to dispatch
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
boolean shouldCopy = mPointersEventData.size() > 1;
|
|
119
|
+
for (WritableMap pointerEventData : mPointersEventData) {
|
|
120
|
+
WritableMap eventData = shouldCopy ? pointerEventData.copy() : pointerEventData;
|
|
121
|
+
rctEventEmitter.receiveEvent(this.getViewTag(), mEventName, eventData);
|
|
122
|
+
}
|
|
79
123
|
return;
|
|
80
124
|
}
|
|
81
125
|
|
|
82
126
|
@Override
|
|
83
127
|
public void onDispose() {
|
|
128
|
+
mPointersEventData = null;
|
|
84
129
|
MotionEvent motionEvent = mMotionEvent;
|
|
85
130
|
mMotionEvent = null;
|
|
86
131
|
if (motionEvent != null) {
|
|
@@ -107,13 +152,13 @@ public class PointerEvent extends Event<PointerEvent> {
|
|
|
107
152
|
ArrayList<WritableMap> pointerEvents = new ArrayList<>();
|
|
108
153
|
|
|
109
154
|
for (int index = 0; index < motionEvent.getPointerCount(); index++) {
|
|
110
|
-
pointerEvents.add(this.
|
|
155
|
+
pointerEvents.add(this.createPointerEventData(index));
|
|
111
156
|
}
|
|
112
157
|
|
|
113
158
|
return pointerEvents;
|
|
114
159
|
}
|
|
115
160
|
|
|
116
|
-
private WritableMap
|
|
161
|
+
private WritableMap createPointerEventData(int index) {
|
|
117
162
|
WritableMap pointerEvent = Arguments.createMap();
|
|
118
163
|
|
|
119
164
|
pointerEvent.putDouble("pointerId", mMotionEvent.getPointerId(index));
|
|
@@ -126,46 +171,57 @@ public class PointerEvent extends Event<PointerEvent> {
|
|
|
126
171
|
pointerEvent.putDouble("clientX", mMotionEvent.getX(index));
|
|
127
172
|
pointerEvent.putDouble("clientY", mMotionEvent.getY(index));
|
|
128
173
|
|
|
174
|
+
// Offset refers to upper left edge of the target view
|
|
175
|
+
pointerEvent.putDouble("offsetX", PixelUtil.toDIPFromPixel(mOffsetX));
|
|
176
|
+
pointerEvent.putDouble("offsetY", PixelUtil.toDIPFromPixel(mOffsetY));
|
|
177
|
+
|
|
129
178
|
pointerEvent.putInt("target", this.getViewTag());
|
|
130
179
|
pointerEvent.putDouble("timestamp", this.getTimestampMs());
|
|
131
180
|
return pointerEvent;
|
|
132
181
|
}
|
|
133
182
|
|
|
134
|
-
|
|
135
|
-
public void dispatchModern(RCTModernEventEmitter rctEventEmitter) {
|
|
136
|
-
if (mMotionEvent == null) {
|
|
137
|
-
ReactSoftExceptionLogger.logSoftException(
|
|
138
|
-
TAG,
|
|
139
|
-
new IllegalStateException(
|
|
140
|
-
"Cannot dispatch a Pointer that has no MotionEvent; the PointerEvehas been recycled"));
|
|
141
|
-
return;
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
List<WritableMap> relevantPointerEventData = null;
|
|
145
|
-
|
|
183
|
+
private List<WritableMap> createPointersEventData() {
|
|
146
184
|
int activePointerIndex = mMotionEvent.getActionIndex();
|
|
185
|
+
List<WritableMap> pointersEventData = null;
|
|
147
186
|
switch (mEventName) {
|
|
148
187
|
// Cases where all pointer info is relevant
|
|
149
188
|
case PointerEventHelper.POINTER_MOVE:
|
|
150
189
|
case PointerEventHelper.POINTER_CANCEL:
|
|
151
|
-
|
|
190
|
+
pointersEventData = createPointerEvents();
|
|
152
191
|
break;
|
|
153
192
|
// Cases where only the "active" pointer info is relevant
|
|
154
193
|
case PointerEventHelper.POINTER_ENTER:
|
|
155
194
|
case PointerEventHelper.POINTER_DOWN:
|
|
156
195
|
case PointerEventHelper.POINTER_UP:
|
|
157
196
|
case PointerEventHelper.POINTER_LEAVE:
|
|
158
|
-
|
|
197
|
+
pointersEventData = Arrays.asList(createPointerEventData(activePointerIndex));
|
|
159
198
|
break;
|
|
160
199
|
}
|
|
161
200
|
|
|
162
|
-
|
|
201
|
+
return pointersEventData;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
@Override
|
|
205
|
+
public void dispatchModern(RCTModernEventEmitter rctEventEmitter) {
|
|
206
|
+
if (mMotionEvent == null) {
|
|
207
|
+
ReactSoftExceptionLogger.logSoftException(
|
|
208
|
+
TAG,
|
|
209
|
+
new IllegalStateException(
|
|
210
|
+
"Cannot dispatch a Pointer that has no MotionEvent; the PointerEvehas been recycled"));
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
if (mPointersEventData == null) {
|
|
215
|
+
mPointersEventData = createPointersEventData();
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
if (mPointersEventData == null) {
|
|
163
219
|
// No relevant MotionEvent to dispatch
|
|
164
220
|
return;
|
|
165
221
|
}
|
|
166
222
|
|
|
167
|
-
boolean shouldCopy =
|
|
168
|
-
for (WritableMap pointerEventData :
|
|
223
|
+
boolean shouldCopy = mPointersEventData.size() > 1;
|
|
224
|
+
for (WritableMap pointerEventData : mPointersEventData) {
|
|
169
225
|
WritableMap eventData = shouldCopy ? pointerEventData.copy() : pointerEventData;
|
|
170
226
|
rctEventEmitter.receiveEvent(
|
|
171
227
|
this.getSurfaceId(),
|
package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.java
CHANGED
|
@@ -8,6 +8,11 @@
|
|
|
8
8
|
package com.facebook.react.uimanager.events;
|
|
9
9
|
|
|
10
10
|
import android.view.MotionEvent;
|
|
11
|
+
import android.view.View;
|
|
12
|
+
import androidx.annotation.Nullable;
|
|
13
|
+
import com.facebook.common.logging.FLog;
|
|
14
|
+
import com.facebook.react.R;
|
|
15
|
+
import com.facebook.react.common.ReactConstants;
|
|
11
16
|
|
|
12
17
|
/** Class responsible for generating catalyst touch events based on android {@link MotionEvent}. */
|
|
13
18
|
public class PointerEventHelper {
|
|
@@ -17,13 +22,51 @@ public class PointerEventHelper {
|
|
|
17
22
|
public static final String POINTER_TYPE_MOUSE = "mouse";
|
|
18
23
|
public static final String POINTER_TYPE_UNKNOWN = "";
|
|
19
24
|
|
|
25
|
+
private static final int X_FLAG_SUPPORTS_HOVER = 0x01000000;
|
|
26
|
+
|
|
27
|
+
public static enum EVENT {
|
|
28
|
+
CANCEL,
|
|
29
|
+
CANCEL_CAPTURE,
|
|
30
|
+
DOWN,
|
|
31
|
+
DOWN_CAPTURE,
|
|
32
|
+
ENTER,
|
|
33
|
+
ENTER_CAPTURE,
|
|
34
|
+
LEAVE,
|
|
35
|
+
LEAVE_CAPTURE,
|
|
36
|
+
MOVE,
|
|
37
|
+
MOVE_CAPTURE,
|
|
38
|
+
UP,
|
|
39
|
+
UP_CAPTURE,
|
|
40
|
+
};
|
|
41
|
+
|
|
20
42
|
public static final String POINTER_CANCEL = "topPointerCancel";
|
|
21
43
|
public static final String POINTER_DOWN = "topPointerDown";
|
|
22
|
-
public static final String POINTER_ENTER = "
|
|
23
|
-
public static final String POINTER_LEAVE = "
|
|
24
|
-
public static final String POINTER_MOVE = "
|
|
44
|
+
public static final String POINTER_ENTER = "topPointerEnter";
|
|
45
|
+
public static final String POINTER_LEAVE = "topPointerLeave";
|
|
46
|
+
public static final String POINTER_MOVE = "topPointerMove";
|
|
25
47
|
public static final String POINTER_UP = "topPointerUp";
|
|
26
48
|
|
|
49
|
+
/** We don't dispatch capture events from native; that's currently handled by JS. */
|
|
50
|
+
public static @Nullable String getDispatchableEventName(EVENT event) {
|
|
51
|
+
switch (event) {
|
|
52
|
+
case LEAVE:
|
|
53
|
+
return PointerEventHelper.POINTER_LEAVE;
|
|
54
|
+
case DOWN:
|
|
55
|
+
return PointerEventHelper.POINTER_DOWN;
|
|
56
|
+
case MOVE:
|
|
57
|
+
return PointerEventHelper.POINTER_MOVE;
|
|
58
|
+
case ENTER:
|
|
59
|
+
return PointerEventHelper.POINTER_ENTER;
|
|
60
|
+
case CANCEL:
|
|
61
|
+
return PointerEventHelper.POINTER_CANCEL;
|
|
62
|
+
case UP:
|
|
63
|
+
return PointerEventHelper.POINTER_UP;
|
|
64
|
+
default:
|
|
65
|
+
FLog.e(ReactConstants.TAG, "No dispatchable event name for type: " + event);
|
|
66
|
+
return null;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
27
70
|
public static String getW3CPointerType(final int toolType) {
|
|
28
71
|
// https://www.w3.org/TR/pointerevents3/#dom-pointerevent-pointertype
|
|
29
72
|
switch (toolType) {
|
|
@@ -39,6 +82,50 @@ public class PointerEventHelper {
|
|
|
39
82
|
return POINTER_TYPE_UNKNOWN;
|
|
40
83
|
}
|
|
41
84
|
|
|
85
|
+
public static boolean isListening(@Nullable View view, EVENT event) {
|
|
86
|
+
if (view == null) {
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
Object value = null;
|
|
91
|
+
switch (event) {
|
|
92
|
+
case DOWN:
|
|
93
|
+
case DOWN_CAPTURE:
|
|
94
|
+
case UP:
|
|
95
|
+
case UP_CAPTURE:
|
|
96
|
+
case CANCEL:
|
|
97
|
+
case CANCEL_CAPTURE:
|
|
98
|
+
return true;
|
|
99
|
+
case ENTER:
|
|
100
|
+
value = view.getTag(R.id.pointer_enter);
|
|
101
|
+
break;
|
|
102
|
+
case ENTER_CAPTURE:
|
|
103
|
+
value = view.getTag(R.id.pointer_enter_capture);
|
|
104
|
+
break;
|
|
105
|
+
case LEAVE:
|
|
106
|
+
value = view.getTag(R.id.pointer_leave);
|
|
107
|
+
break;
|
|
108
|
+
case LEAVE_CAPTURE:
|
|
109
|
+
value = view.getTag(R.id.pointer_leave_capture);
|
|
110
|
+
break;
|
|
111
|
+
case MOVE:
|
|
112
|
+
value = view.getTag(R.id.pointer_move);
|
|
113
|
+
break;
|
|
114
|
+
case MOVE_CAPTURE:
|
|
115
|
+
value = view.getTag(R.id.pointer_move_capture);
|
|
116
|
+
break;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
if (value == null) {
|
|
120
|
+
return false;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
if (value instanceof Boolean) {
|
|
124
|
+
return (Boolean) value;
|
|
125
|
+
}
|
|
126
|
+
return false;
|
|
127
|
+
}
|
|
128
|
+
|
|
42
129
|
public static int getEventCategory(String pointerEventType) {
|
|
43
130
|
if (pointerEventType == null) {
|
|
44
131
|
return EventCategoryDef.UNSPECIFIED;
|
|
@@ -59,7 +146,17 @@ public class PointerEventHelper {
|
|
|
59
146
|
return EventCategoryDef.UNSPECIFIED;
|
|
60
147
|
}
|
|
61
148
|
|
|
62
|
-
public static boolean supportsHover(
|
|
149
|
+
public static boolean supportsHover(MotionEvent motionEvent) {
|
|
150
|
+
// A flag has been set on the MotionEvent to indicate it supports hover
|
|
151
|
+
// See D36958947 on justifications for this.
|
|
152
|
+
// TODO(luwe): Leverage previous events to determine if MotionEvent
|
|
153
|
+
// is from an input device that supports hover
|
|
154
|
+
boolean supportsHoverFlag = (motionEvent.getFlags() & X_FLAG_SUPPORTS_HOVER) != 0;
|
|
155
|
+
if (supportsHoverFlag) {
|
|
156
|
+
return true;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
int toolType = motionEvent.getToolType(motionEvent.getActionIndex());
|
|
63
160
|
String pointerType = getW3CPointerType(toolType);
|
|
64
161
|
|
|
65
162
|
if (pointerType.equals(POINTER_TYPE_MOUSE)) {
|
package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java
CHANGED
|
@@ -86,7 +86,7 @@ public class ReactEventEmitter implements RCTModernEventEmitter {
|
|
|
86
86
|
@Override
|
|
87
87
|
public void receiveTouches(TouchEvent event) {
|
|
88
88
|
int reactTag = event.getViewTag();
|
|
89
|
-
@UIManagerType int uiManagerType =
|
|
89
|
+
@UIManagerType int uiManagerType = event.getUIManagerType();
|
|
90
90
|
if (uiManagerType == UIManagerType.FABRIC && mFabricEventEmitter != null) {
|
|
91
91
|
mFabricEventEmitter.receiveTouches(event);
|
|
92
92
|
} else if (uiManagerType == UIManagerType.DEFAULT && getEventEmitter(reactTag) != null) {
|