react-native 0.0.0-16bb2ae4f → 0.0.0-18697adec
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Libraries/ActionSheetIOS/ActionSheetIOS.js +14 -1
- package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +2 -0
- package/Libraries/Animated/AnimatedEvent.js +23 -4
- package/Libraries/Animated/NativeAnimatedHelper.js +3 -3
- package/Libraries/BatchedBridge/MessageQueue.js +10 -10
- package/Libraries/Blob/FileReader.js +1 -1
- package/Libraries/Blob/React-RCTBlob.podspec +1 -1
- package/Libraries/Blob/URL.js +1 -1
- package/Libraries/Components/Button.js +3 -0
- package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +3 -6
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +4 -7
- package/Libraries/Components/ScrollView/ScrollView.js +14 -5
- package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +1 -0
- package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +268 -252
- package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +1 -0
- package/Libraries/Components/StatusBar/StatusBar.js +6 -14
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +2 -3
- package/Libraries/Components/TextInput/AndroidTextInputViewConfig.js +1 -0
- package/Libraries/Components/TextInput/TextInput.js +27 -1
- package/Libraries/Components/TextInput/TextInputState.js +1 -1
- package/Libraries/Components/View/ViewAccessibility.js +1 -0
- package/Libraries/Core/ExceptionsManager.js +3 -1
- package/Libraries/Core/ReactNativeVersion.js +1 -1
- package/Libraries/Core/Timers/JSTimers.js +37 -28
- package/Libraries/Core/Timers/immediateShim.js +67 -0
- package/Libraries/Core/Timers/queueMicrotask.js +41 -0
- package/Libraries/Core/polyfillPromise.js +1 -1
- package/Libraries/Core/setUpBatchedBridge.js +1 -1
- package/Libraries/Core/setUpGlobals.js +2 -0
- package/Libraries/Core/setUpRegeneratorRuntime.js +25 -8
- package/Libraries/Core/setUpTimers.js +65 -6
- package/Libraries/DeprecatedPropTypes/DeprecatedTextInputPropTypes.js +1 -1
- package/Libraries/Image/Image.ios.js +6 -0
- package/Libraries/Image/ImageBackground.js +10 -8
- package/Libraries/Image/ImageProps.js +28 -0
- package/Libraries/Image/ImageSource.js +1 -1
- package/Libraries/Image/React-RCTImage.podspec +1 -1
- package/Libraries/LinkingIOS/React-RCTLinking.podspec +1 -1
- package/Libraries/Lists/FlatList.js +43 -26
- package/Libraries/Lists/VirtualizedList.js +3 -1
- package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +4 -4
- package/Libraries/LogBox/Data/LogBoxData.js +18 -18
- package/Libraries/LogBox/UI/LogBoxImages/alert-triangle.png +0 -0
- package/Libraries/LogBox/UI/LogBoxImages/chevron-left.png +0 -0
- package/Libraries/LogBox/UI/LogBoxImages/chevron-right.png +0 -0
- package/Libraries/LogBox/UI/LogBoxImages/close.png +0 -0
- package/Libraries/LogBox/UI/LogBoxImages/loader.png +0 -0
- package/Libraries/NativeAnimation/Nodes/RCTPropsAnimatedNode.m +0 -3
- package/Libraries/NativeAnimation/RCTNativeAnimatedModule.mm +6 -3
- package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.h +1 -2
- package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +17 -11
- package/Libraries/NativeAnimation/React-RCTAnimation.podspec +1 -1
- package/Libraries/Network/React-RCTNetwork.podspec +1 -1
- package/Libraries/Network/XMLHttpRequest.js +3 -1
- package/Libraries/NewAppScreen/components/logo.png +0 -0
- package/Libraries/Performance/QuickPerformanceLogger.js +2 -1
- package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +2 -1
- package/Libraries/PermissionsAndroid/PermissionsAndroid.js +2 -0
- package/Libraries/Pressability/Pressability.js +1 -0
- package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +1 -0
- package/Libraries/PushNotificationIOS/RCTPushNotificationManager.mm +0 -1
- package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +1 -1
- package/Libraries/ReactNative/AppRegistry.js +1 -1
- package/Libraries/ReactNative/PaperUIManager.js +1 -0
- package/Libraries/ReactNative/renderApplication.js +1 -1
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +1 -2
- package/Libraries/Reliability/UserFlow.js +7 -0
- package/Libraries/Renderer/REVISION +1 -1
- package/Libraries/Renderer/implementations/ReactFabric-dev.fb.js +4485 -3842
- package/Libraries/Renderer/implementations/ReactFabric-prod.fb.js +2060 -1709
- package/Libraries/Renderer/implementations/ReactFabric-profiling.fb.js +2148 -1796
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.fb.js +4264 -3695
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.fb.js +1303 -1063
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.fb.js +1374 -1139
- package/Libraries/Renderer/shims/ReactFabric.js +3 -1
- package/Libraries/Renderer/shims/ReactFeatureFlags.js +3 -1
- package/Libraries/Renderer/shims/ReactNative.js +3 -1
- package/Libraries/Renderer/shims/ReactNativeTypes.js +3 -1
- package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +3 -1
- package/Libraries/Renderer/shims/createReactNativeComponentClass.js +3 -1
- package/Libraries/Settings/React-RCTSettings.podspec +1 -1
- package/Libraries/StyleSheet/normalizeColor.js +2 -2
- package/Libraries/Text/Text.js +11 -0
- package/Libraries/Text/TextInput/RCTBaseTextInputView.m +2 -12
- package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.m +4 -11
- package/Libraries/Text/TextProps.js +1 -7
- package/Libraries/TurboModule/TurboModuleRegistry.js +1 -1
- package/Libraries/TypeSafety/RCTTypeSafety.podspec +1 -1
- package/Libraries/UTFSequence.js +1 -1
- package/Libraries/Utilities/Dimensions.js +9 -14
- package/Libraries/Utilities/FeatureDetection.js +31 -0
- package/Libraries/Utilities/HMRClient.js +10 -6
- package/Libraries/Utilities/MatrixMath.js +1 -1
- package/Libraries/Utilities/NativeDeviceInfo.js +1 -1
- package/Libraries/Utilities/deprecatedPropType.js +2 -2
- package/Libraries/Utilities/useWindowDimensions.js +7 -2
- package/Libraries/Vibration/React-RCTVibration.podspec +1 -1
- package/Libraries/vendor/emitter/_EventSubscriptionVendor.js +1 -1
- package/React/Base/RCTBridge+Private.h +8 -0
- package/React/Base/RCTBridge.h +13 -0
- package/React/Base/RCTBridge.m +30 -7
- package/React/Base/RCTBridgeModule.h +3 -12
- package/React/Base/RCTBundleURLProvider.h +26 -1
- package/React/Base/RCTBundleURLProvider.mm +79 -15
- package/React/Base/RCTConstants.h +6 -7
- package/React/Base/RCTConstants.m +12 -12
- package/React/Base/RCTConvert.h +1 -1
- package/React/Base/RCTConvert.m +1 -1
- package/React/Base/RCTCxxConvert.h +1 -1
- package/React/Base/RCTDefines.h +12 -3
- package/React/Base/RCTEventDispatcherProtocol.h +2 -0
- package/React/Base/RCTJSThread.h +29 -0
- package/React/Base/RCTJSThread.m +19 -0
- package/React/Base/RCTMultipartStreamReader.m +0 -2
- package/React/Base/RCTRootView.h +15 -0
- package/React/Base/RCTRootView.m +15 -0
- package/React/Base/RCTTouchHandler.m +4 -9
- package/React/Base/RCTUtils.h +3 -0
- package/React/Base/RCTUtils.m +14 -7
- package/React/Base/RCTVersion.m +1 -1
- package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.h +11 -0
- package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +35 -1
- package/React/CoreModules/BUCK +3 -3
- package/React/CoreModules/RCTAccessibilityManager.mm +1 -1
- package/React/CoreModules/RCTActionSheetManager.mm +14 -5
- package/React/CoreModules/RCTAsyncLocalStorage.mm +4 -0
- package/React/CoreModules/RCTDevLoadingView.mm +5 -10
- package/React/CoreModules/RCTDevSettings.mm +12 -10
- package/React/CoreModules/RCTDevSplitBundleLoader.mm +1 -1
- package/React/CoreModules/RCTDeviceInfo.mm +4 -4
- package/React/CoreModules/RCTEventDispatcher.mm +5 -0
- package/React/CoreModules/RCTLogBox.mm +14 -10
- package/React/CoreModules/RCTPerfMonitor.mm +9 -4
- package/React/CoreModules/RCTRedBox.mm +1 -5
- package/React/CoreModules/React-CoreModules.podspec +1 -1
- package/React/CxxBridge/RCTCxxBridge.mm +18 -1
- package/React/DevSupport/RCTPackagerConnection.h +3 -0
- package/React/DevSupport/RCTPackagerConnection.mm +19 -8
- package/React/FBReactNativeSpec/FBReactNativeSpec.podspec +12 -4
- package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +1 -2
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +64 -62
- package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +31 -11
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.h +6 -0
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +108 -4
- package/React/Fabric/Mounting/RCTComponentViewFactory.mm +1 -0
- package/React/Fabric/Mounting/RCTMountingManager.h +3 -0
- package/React/Fabric/Mounting/RCTMountingManager.mm +22 -3
- package/React/Fabric/Mounting/UIView+ComponentViewProtocol.h +2 -0
- package/React/Fabric/Mounting/UIView+ComponentViewProtocol.mm +12 -0
- package/React/Fabric/RCTConversions.h +3 -0
- package/React/Fabric/RCTScheduler.mm +12 -5
- package/React/Fabric/RCTSurfacePresenter.mm +6 -7
- package/React/Fabric/RCTSurfacePresenterBridgeAdapter.h +1 -1
- package/React/Fabric/RCTSurfaceRegistry.h +1 -1
- package/React/Fabric/RCTSurfaceTouchHandler.mm +6 -20
- package/React/Fabric/Surface/RCTFabricSurface.mm +3 -0
- package/React/Modules/RCTI18nUtil.h +14 -6
- package/React/Modules/RCTI18nUtil.m +1 -47
- package/React/Profiler/RCTProfileTrampoline-arm.S +1 -1
- package/React/Profiler/RCTProfileTrampoline-arm64.S +2 -2
- package/React/React-RCTFabric.podspec +1 -1
- package/React/Views/RCTFont.mm +54 -38
- package/React/Views/RCTModalHostView.h +1 -1
- package/React/Views/RCTModalHostView.m +16 -0
- package/React/Views/RCTModalHostViewManager.m +1 -0
- package/React/Views/RCTView.m +2 -7
- package/React/Views/RCTViewManager.m +4 -2
- package/React/Views/SafeAreaView/RCTSafeAreaView.m +1 -5
- package/React/Views/ScrollView/RCTScrollView.h +1 -0
- package/React/Views/ScrollView/RCTScrollView.m +111 -36
- package/React/Views/ScrollView/RCTScrollViewManager.m +1 -7
- package/React/Views/UIView+React.m +2 -11
- package/React-Core.podspec +1 -1
- package/ReactAndroid/Android-prebuilt.mk +8 -0
- package/ReactAndroid/README.md +1 -1
- package/ReactAndroid/build.gradle +12 -5
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/BUCK +1 -1
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppInstrumentationTestCase.java +1 -1
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/idledetection/BUCK +1 -1
- package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/rule/BUCK +5 -5
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/BUCK +0 -1
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/core/BUCK +5 -5
- package/ReactAndroid/src/androidTest/js/BUCK +26 -0
- package/ReactAndroid/src/androidTest/js/TestBundle.js +0 -7
- package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/Android.mk +2 -2
- package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/Android.mk +4 -4
- package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutorFactory.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/RuntimeConfig.java +0 -6
- package/ReactAndroid/src/main/java/com/facebook/react/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactAndroidHWInputDeviceHelper.java +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java +6 -2
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +89 -44
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +28 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +13 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +5 -4
- package/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +4 -4
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/BackgroundExecutor.java +3 -2
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.java +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +11 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.java +37 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.java +22 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +3 -6
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.java +39 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/{ReactSoftException.java → ReactSoftExceptionLogger.java} +8 -3
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/RuntimeScheduler.java +21 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.java +8 -7
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.java +10 -0
- package/ReactAndroid/src/main/java/com/facebook/react/common/BUCK +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +32 -4
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.java +97 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +9 -58
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +14 -9
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java +3 -72
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PackagerStatusCheck.java +100 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/Binding.java +10 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricComponents.java +4 -3
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricJSIModuleProvider.java +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +64 -31
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Android.mk +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.cpp +54 -10
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.h +7 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.java +14 -6
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +4 -4
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +40 -11
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SendAccessibilityEvent.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/Android.mk +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/Android.mk +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/bundleloader/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/{JavaScriptTimerManager.java → JavaScriptTimerExecutor.java} +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JavaTimerManager.java +7 -7
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/TimingModule.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java +10 -6
- package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.java +7 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/image/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.java +23 -19
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +1 -4
- package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/share/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/BUCK +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.java +11 -9
- package/ReactAndroid/src/main/java/com/facebook/react/shell/BUCK +0 -1
- package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java +0 -5
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManager.java +4 -2
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/TurboModuleManager.cpp +39 -11
- package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/TurboModuleManager.h +9 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.java +7 -28
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/PixelUtil.java +1 -6
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.java +25 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.java +162 -66
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.java +9 -9
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +6 -5
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java +16 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.java +12 -20
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/LockFreeEventDispatcherImpl.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java +14 -13
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.java +21 -5
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java +7 -11
- package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK +1 -1
- 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 +9 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +24 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/slider/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java +4 -7
- package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java +0 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java +23 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +8 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +20 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +31 -12
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManagerMapBuffer.java +31 -11
- 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 +14 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +114 -62
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/CanvasUtil.java +92 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +39 -8
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +24 -3
- package/ReactAndroid/src/main/jni/react/jni/Android.mk +5 -3
- package/ReactAndroid/src/main/jni/react/jni/BUCK +5 -2
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +61 -0
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +8 -0
- package/ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.cpp +18 -0
- package/ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.h +25 -0
- package/ReactAndroid/src/main/jni/react/jni/JReactSoftExceptionLogger.cpp +21 -0
- package/ReactAndroid/src/main/jni/react/jni/JReactSoftExceptionLogger.h +28 -0
- package/{ReactCommon/react/renderer/core/Constants.cpp → ReactAndroid/src/main/jni/react/jni/JRuntimeScheduler.cpp} +6 -8
- package/ReactAndroid/src/main/jni/react/jni/JRuntimeScheduler.h +30 -0
- package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +1 -1
- package/ReactAndroid/src/main/jni/third-party/libevent/Android.mk +0 -1
- package/ReactAndroid/src/main/third-party/android/androidx/BUCK +63 -2
- package/ReactAndroid/src/main/third-party/java/testing-support-lib/BUCK +0 -31
- package/ReactAndroid/src/test/java/com/facebook/react/bridge/ReactTestHelper.java +1 -0
- package/ReactAndroid/src/test/java/com/facebook/react/modules/BUCK +1 -0
- package/ReactAndroid/src/test/java/com/facebook/react/modules/deviceinfo/DeviceInfoModuleTest.java +168 -0
- package/ReactCommon/React-Fabric.podspec +10 -1
- package/ReactCommon/ReactCommon.podspec +2 -1
- package/ReactCommon/callinvoker/BUCK +2 -2
- package/ReactCommon/callinvoker/React-callinvoker.podspec +1 -1
- package/ReactCommon/cxxreact/Android.mk +2 -1
- package/ReactCommon/cxxreact/BUCK +1 -0
- package/ReactCommon/cxxreact/CxxNativeModule.cpp +28 -0
- package/ReactCommon/cxxreact/CxxNativeModule.h +9 -0
- package/ReactCommon/cxxreact/React-cxxreact.podspec +2 -1
- package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
- package/ReactCommon/hermes/React-hermes.podspec +1 -1
- package/ReactCommon/hermes/executor/Android.mk +4 -4
- package/ReactCommon/hermes/inspector/Android.mk +1 -2
- package/ReactCommon/hermes/inspector/tools/msggen/package.json +7 -4
- package/ReactCommon/hermes/inspector/tools/msggen/yarn.lock +13 -10
- package/ReactCommon/jsi/Android.mk +1 -1
- package/ReactCommon/jsi/BUCK +0 -2
- package/ReactCommon/jsi/React-jsi.podspec +1 -1
- package/ReactCommon/jsiexecutor/Android.mk +2 -2
- package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +1 -1
- package/ReactCommon/logger/Android.mk +23 -0
- package/ReactCommon/logger/BUCK +43 -0
- package/ReactCommon/logger/React-logger.podspec +40 -0
- package/ReactCommon/logger/react_native_log.cpp +52 -0
- package/ReactCommon/logger/react_native_log.h +33 -0
- package/ReactCommon/react/nativemodule/core/Android.mk +2 -2
- package/ReactCommon/react/nativemodule/core/ReactCommon/LongLivedObject.cpp +1 -0
- package/ReactCommon/react/nativemodule/core/ReactCommon/LongLivedObject.h +3 -2
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +46 -1
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +10 -0
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +37 -1
- package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +24 -22
- package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.h +11 -8
- package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModule.h +7 -5
- package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModule.mm +51 -29
- package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.mm +45 -34
- package/ReactCommon/react/nativemodule/samples/BUCK +2 -2
- package/ReactCommon/react/nativemodule/samples/platform/android/Android.mk +1 -1
- package/ReactCommon/react/renderer/animations/BUCK +1 -0
- package/ReactCommon/react/renderer/animations/LayoutAnimationCallbackWrapper.h +34 -0
- package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +5 -27
- package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.h +8 -14
- package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +920 -1136
- package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.h +80 -245
- package/ReactCommon/react/renderer/animations/conversions.h +212 -0
- package/ReactCommon/react/renderer/animations/primitives.h +104 -0
- package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +9 -6
- package/ReactCommon/react/renderer/animations/utils.cpp +71 -0
- package/ReactCommon/react/renderer/animations/utils.h +80 -0
- package/ReactCommon/react/renderer/attributedstring/AttributedString.h +0 -1
- package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +7 -3
- package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.h +12 -2
- package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +7 -2
- package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +3 -1
- package/ReactCommon/react/renderer/attributedstring/conversions.h +162 -11
- package/ReactCommon/react/renderer/attributedstring/primitives.h +34 -1
- package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.cpp +2 -2
- package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h +1 -0
- package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +10 -4
- package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.h +4 -1
- package/ReactCommon/react/renderer/componentregistry/componentNameByReactViewName.cpp +2 -1
- package/ReactCommon/react/renderer/components/image/Android.mk +1 -1
- package/ReactCommon/react/renderer/components/image/ImageProps.cpp +28 -9
- package/ReactCommon/react/renderer/components/image/ImageProps.h +5 -1
- package/ReactCommon/react/renderer/components/image/conversions.h +9 -2
- package/ReactCommon/react/renderer/components/inputaccessory/BUCK +1 -1
- package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/BUCK +1 -1
- package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +0 -1
- package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.cpp +2 -1
- package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.h +2 -0
- package/ReactCommon/react/renderer/components/root/RootProps.cpp +12 -2
- package/ReactCommon/react/renderer/components/root/RootProps.h +6 -1
- package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +2 -1
- package/ReactCommon/react/renderer/components/root/RootShadowNode.h +2 -0
- package/ReactCommon/react/renderer/components/root/tests/RootShadowNodeTest.cpp +8 -4
- package/ReactCommon/react/renderer/components/safeareaview/BUCK +1 -1
- package/ReactCommon/react/renderer/components/scrollview/Android.mk +1 -1
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +45 -4
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.h +5 -1
- package/ReactCommon/react/renderer/components/scrollview/conversions.h +5 -0
- package/ReactCommon/react/renderer/components/text/Android.mk +1 -1
- package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +32 -0
- package/ReactCommon/react/renderer/components/text/BaseTextProps.h +5 -1
- package/ReactCommon/react/renderer/components/text/ParagraphComponentDescriptor.h +1 -16
- package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +10 -4
- package/ReactCommon/react/renderer/components/text/ParagraphProps.h +5 -1
- package/ReactCommon/react/renderer/components/text/RawTextProps.cpp +3 -2
- package/ReactCommon/react/renderer/components/text/RawTextProps.h +5 -1
- package/ReactCommon/react/renderer/components/text/RawTextShadowNode.h +0 -6
- package/ReactCommon/react/renderer/components/text/TextProps.cpp +6 -3
- package/ReactCommon/react/renderer/components/text/TextProps.h +5 -1
- package/ReactCommon/react/renderer/components/text/TextShadowNode.h +0 -6
- package/ReactCommon/react/renderer/components/textinput/Android.mk +1 -1
- package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +58 -91
- package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.h +10 -6
- package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.cpp +46 -22
- package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.h +6 -5
- package/ReactCommon/react/renderer/components/textinput/iostextinput/conversions.h +15 -3
- package/ReactCommon/react/renderer/components/textinput/iostextinput/primitives.h +6 -0
- package/ReactCommon/react/renderer/components/textinput/iostextinput/propsConversions.h +63 -2
- package/ReactCommon/react/renderer/components/unimplementedview/Android.mk +1 -1
- package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.cpp +4 -2
- package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.h +5 -2
- package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewProps.h +1 -0
- package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +21 -0
- package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +24 -1
- package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +3 -0
- package/ReactCommon/react/renderer/components/view/Android.mk +3 -2
- package/ReactCommon/react/renderer/components/view/BUCK +1 -0
- package/ReactCommon/react/renderer/components/view/Touch.h +1 -32
- package/ReactCommon/react/renderer/components/view/ViewComponentDescriptor.h +0 -22
- package/ReactCommon/react/renderer/components/view/ViewProps.cpp +62 -14
- package/ReactCommon/react/renderer/components/view/ViewProps.h +7 -1
- package/ReactCommon/react/renderer/components/view/ViewPropsInterpolation.h +2 -10
- package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +5 -4
- package/ReactCommon/react/renderer/components/view/ViewShadowNode.h +1 -1
- package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +58 -33
- package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +2 -8
- package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +3 -2
- package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +2 -0
- package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +62 -8
- package/ReactCommon/react/renderer/components/view/conversions.h +57 -14
- package/ReactCommon/react/renderer/components/view/propsConversions.h +163 -28
- package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +7 -2
- package/ReactCommon/react/renderer/core/Android.mk +1 -1
- package/ReactCommon/react/renderer/core/ComponentDescriptor.h +5 -2
- package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +19 -21
- package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +4 -0
- package/ReactCommon/react/renderer/core/EventDispatcher.cpp +12 -31
- package/ReactCommon/react/renderer/core/EventDispatcher.h +1 -4
- package/ReactCommon/react/renderer/core/LayoutableShadowNode.h +0 -6
- package/ReactCommon/react/renderer/core/Props.cpp +10 -2
- package/ReactCommon/react/renderer/core/Props.h +6 -1
- package/ReactCommon/react/renderer/core/PropsParserContext.h +29 -0
- package/ReactCommon/react/renderer/core/RawProps.cpp +2 -1
- package/ReactCommon/react/renderer/core/RawProps.h +3 -1
- package/ReactCommon/react/renderer/core/RawPropsKey.cpp +10 -2
- package/ReactCommon/react/renderer/core/RawPropsParser.h +11 -2
- package/ReactCommon/react/renderer/core/ReactPrimitives.h +0 -2
- package/ReactCommon/react/renderer/core/ShadowNode.cpp +7 -10
- package/ReactCommon/react/renderer/core/ShadowNode.h +4 -0
- package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +1 -0
- package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +11 -1
- package/ReactCommon/react/renderer/core/propsConversions.h +18 -8
- package/ReactCommon/react/renderer/core/tests/ComponentDescriptorTest.cpp +16 -4
- package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +85 -20
- package/ReactCommon/react/renderer/core/tests/TestComponent.h +6 -2
- package/ReactCommon/react/renderer/graphics/Android.mk +5 -2
- package/ReactCommon/react/renderer/graphics/BUCK +12 -1
- package/ReactCommon/react/renderer/graphics/React-graphics.podspec +2 -1
- package/ReactCommon/react/renderer/graphics/Transform.cpp +1 -1
- package/ReactCommon/react/renderer/graphics/Transform.h +1 -1
- package/ReactCommon/react/renderer/graphics/conversions.h +34 -19
- package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/PlatformColorParser.h +67 -0
- package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/PlatformColorParser.h +29 -0
- package/ReactCommon/react/renderer/graphics/platform/ios/Color.h +42 -1
- package/ReactCommon/react/renderer/graphics/platform/ios/PlatformColorParser.h +34 -0
- package/ReactCommon/react/renderer/graphics/platform/ios/RCTPlatformColorUtils.h +12 -0
- package/ReactCommon/react/renderer/graphics/platform/ios/RCTPlatformColorUtils.mm +206 -0
- package/ReactCommon/react/renderer/imagemanager/BUCK +1 -1
- package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTSyncImageManager.mm +1 -1
- package/ReactCommon/react/renderer/mapbuffer/BUCK +2 -2
- package/ReactCommon/react/renderer/mounting/Android.mk +2 -1
- package/ReactCommon/react/renderer/mounting/MountingOverrideDelegate.h +1 -1
- package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +6 -2
- package/ReactCommon/react/renderer/mounting/ShadowTree.h +3 -1
- package/ReactCommon/react/renderer/mounting/ShadowViewMutation.cpp +12 -0
- package/ReactCommon/react/renderer/mounting/ShadowViewMutation.h +10 -1
- package/ReactCommon/react/renderer/mounting/tests/MountingTest.cpp +12 -1
- package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +8 -1
- package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +10 -3
- package/ReactCommon/react/renderer/runtimescheduler/Android.mk +2 -1
- package/ReactCommon/react/renderer/runtimescheduler/BUCK +1 -0
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +10 -4
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +9 -2
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.cpp +4 -2
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.h +4 -2
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.cpp +30 -0
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.h +34 -0
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerClock.h +4 -2
- package/ReactCommon/react/renderer/runtimescheduler/SchedulerPriority.h +4 -2
- package/ReactCommon/react/renderer/runtimescheduler/Task.cpp +11 -5
- package/ReactCommon/react/renderer/runtimescheduler/Task.h +5 -3
- package/ReactCommon/react/renderer/runtimescheduler/primitives.h +4 -2
- package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +34 -0
- package/ReactCommon/react/renderer/{core/Constants.h → scheduler/InspectorData.h} +9 -8
- package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +44 -29
- package/ReactCommon/react/renderer/scheduler/Scheduler.h +14 -0
- package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +49 -29
- package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +12 -4
- package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +1 -0
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.h +2 -0
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.mm +22 -0
- package/ReactCommon/react/renderer/timeline/BUCK +6 -6
- package/ReactCommon/react/renderer/uimanager/UIManager.cpp +34 -30
- package/ReactCommon/react/renderer/uimanager/UIManager.h +6 -3
- package/ReactCommon/react/renderer/uimanager/UIManagerAnimationDelegate.h +1 -1
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +101 -108
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +4 -7
- package/ReactCommon/react/test_utils/BUCK +3 -0
- package/ReactCommon/react/test_utils/MockSurfaceHandler.h +25 -0
- package/ReactCommon/react/test_utils/shadowTreeGeneration.h +18 -4
- package/ReactCommon/react/utils/Android.mk +3 -1
- package/ReactCommon/react/utils/BUCK +1 -0
- package/ReactCommon/react/utils/ContextContainer.h +0 -27
- package/ReactCommon/reactperflogger/React-perflogger.podspec +1 -1
- package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +1 -1
- package/ReactCommon/runtimeexecutor/ReactCommon/RuntimeExecutor.h +12 -0
- package/android/com/facebook/react/react-native/{0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.aar → 0.0.0-18697adec/react-native-0.0.0-18697adec.aar} +0 -0
- package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.aar.md5 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.aar.sha1 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.aar.sha256 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.aar.sha512 +1 -0
- package/android/com/facebook/react/react-native/{0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.module → 0.0.0-18697adec/react-native-0.0.0-18697adec.module} +30 -17
- package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.module.md5 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.module.sha1 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.module.sha256 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.module.sha512 +1 -0
- package/android/com/facebook/react/react-native/{0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.pom → 0.0.0-18697adec/react-native-0.0.0-18697adec.pom} +8 -2
- package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.pom.md5 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.pom.sha1 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.pom.sha256 +1 -0
- package/android/com/facebook/react/react-native/0.0.0-18697adec/react-native-0.0.0-18697adec.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/HermesInternalType.js +114 -0
- package/flow/global.js +68 -0
- package/index.js +37 -24
- package/jest/renderer.js +3 -7
- package/jest/setup.js +2 -1
- package/package.json +55 -16
- package/react.gradle +19 -13
- package/scripts/generate-specs-cli.js +20 -2
- package/scripts/ios-configure-glog.sh +4 -0
- package/scripts/react-native-xcode.sh +1 -1
- package/scripts/react_native_pods.rb +195 -38
- package/template/_flowconfig +1 -1
- package/template/android/app/build.gradle +2 -2
- package/template/android/build.gradle +1 -2
- package/template/android/gradle/wrapper/gradle-wrapper.properties +1 -1
- package/template/android/gradle.properties +1 -1
- package/template/ios/HelloWorld.xcodeproj/project.pbxproj +2 -0
- package/template/ios/Podfile +1 -0
- package/template/package.json +3 -4
- package/third-party-podspecs/RCT-Folly.podspec +6 -3
- package/Libraries/BUCK +0 -26
- package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.android.js +0 -87
- package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.ios.js +0 -30
- package/Libraries/Components/DatePickerAndroid/DatePickerAndroidTypes.js +0 -30
- package/Libraries/Components/StaticContainer.react.js +0 -51
- package/Libraries/Components/StatusBar/StatusBarIOS.js +0 -38
- package/Libraries/Components/Touchable/ensurePositiveDelayProps.js +0 -25
- package/Libraries/Interaction/InteractionMixin.js +0 -54
- package/Libraries/ReactNative/queryLayoutByID.js +0 -58
- package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/DatePickerDialogTestCase.java +0 -172
- package/ReactAndroid/src/androidTest/js/DatePickerDialogTestModule.js +0 -45
- package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/BUCK +0 -27
- package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogFragment.java +0 -137
- package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogModule.java +0 -153
- package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerMode.java +0 -15
- package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DismissableDatePickerDialog.java +0 -117
- package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/BUCK +0 -20
- package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/RuntimeSchedulerManager.java +0 -39
- package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/jni/Android.mk +0 -34
- package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/jni/BUCK +0 -35
- package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/jni/OnLoad.cpp +0 -15
- package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/jni/RuntimeSchedulerManager.cpp +0 -46
- package/ReactAndroid/src/main/java/com/facebook/react/runtimescheduler/jni/RuntimeSchedulerManager.h +0 -40
- package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.aar.md5 +0 -1
- package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.aar.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.aar.sha256 +0 -1
- package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.aar.sha512 +0 -1
- package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.module.md5 +0 -1
- package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.module.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.module.sha256 +0 -1
- package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.module.sha512 +0 -1
- package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.pom.md5 +0 -1
- package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.pom.sha1 +0 -1
- package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.pom.sha256 +0 -1
- package/android/com/facebook/react/react-native/0.0.0-16bb2ae4f/react-native-0.0.0-16bb2ae4f.pom.sha512 +0 -1
- package/scripts/generate-specs.sh +0 -100
- package/template/_editorconfig +0 -3
- package/template/_gitattributes +0 -3
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
#include <react/renderer/core/LayoutConstraints.h>
|
|
13
13
|
#include <react/renderer/core/LayoutContext.h>
|
|
14
14
|
#include <react/renderer/core/ReactPrimitives.h>
|
|
15
|
+
#include <react/utils/ContextContainer.h>
|
|
15
16
|
|
|
16
17
|
namespace facebook {
|
|
17
18
|
namespace react {
|
|
@@ -33,7 +34,7 @@ class UIManager;
|
|
|
33
34
|
* ensure the logical consistency of some methods (e.g. calling `stop` for
|
|
34
35
|
* non-running surface will crash).
|
|
35
36
|
*/
|
|
36
|
-
class SurfaceHandler
|
|
37
|
+
class SurfaceHandler {
|
|
37
38
|
public:
|
|
38
39
|
/*
|
|
39
40
|
* Represents a status of the `SurfaceHandler` instance.
|
|
@@ -61,7 +62,7 @@ class SurfaceHandler final {
|
|
|
61
62
|
* Can be constructed anytime with a `moduleName` and a `surfaceId`.
|
|
62
63
|
*/
|
|
63
64
|
SurfaceHandler(std::string const &moduleName, SurfaceId surfaceId) noexcept;
|
|
64
|
-
~SurfaceHandler() noexcept;
|
|
65
|
+
virtual ~SurfaceHandler() noexcept;
|
|
65
66
|
|
|
66
67
|
/*
|
|
67
68
|
* Movable-only.
|
|
@@ -73,6 +74,12 @@ class SurfaceHandler final {
|
|
|
73
74
|
|
|
74
75
|
#pragma mark - Surface Life-Cycle Management
|
|
75
76
|
|
|
77
|
+
/*
|
|
78
|
+
* Must be called before surface is started.
|
|
79
|
+
*/
|
|
80
|
+
void setContextContainer(
|
|
81
|
+
ContextContainer::Shared contextContainer) const noexcept;
|
|
82
|
+
|
|
76
83
|
/*
|
|
77
84
|
* Returns a momentum value of the status.
|
|
78
85
|
*/
|
|
@@ -88,10 +95,10 @@ class SurfaceHandler final {
|
|
|
88
95
|
void stop() const noexcept;
|
|
89
96
|
|
|
90
97
|
/*
|
|
91
|
-
* Sets (and gets) the
|
|
98
|
+
* Sets (and gets) the running mode.
|
|
92
99
|
* The running mode can be changed anytime (even for `Unregistered` surface).
|
|
93
100
|
*/
|
|
94
|
-
void setDisplayMode(DisplayMode displayMode) const noexcept;
|
|
101
|
+
virtual void setDisplayMode(DisplayMode displayMode) const noexcept;
|
|
95
102
|
DisplayMode getDisplayMode() const noexcept;
|
|
96
103
|
|
|
97
104
|
#pragma mark - Accessors
|
|
@@ -171,6 +178,7 @@ class SurfaceHandler final {
|
|
|
171
178
|
folly::dynamic props{};
|
|
172
179
|
LayoutConstraints layoutConstraints{};
|
|
173
180
|
LayoutContext layoutContext{};
|
|
181
|
+
ContextContainer::Shared contextContainer{};
|
|
174
182
|
};
|
|
175
183
|
|
|
176
184
|
/*
|
|
@@ -24,6 +24,7 @@ void SurfaceManager::startSurface(
|
|
|
24
24
|
{
|
|
25
25
|
std::unique_lock<better::shared_mutex> lock(mutex_);
|
|
26
26
|
auto surfaceHandler = SurfaceHandler{moduleName, surfaceId};
|
|
27
|
+
surfaceHandler.setContextContainer(scheduler_.getContextContainer());
|
|
27
28
|
registry_.emplace(surfaceId, std::move(surfaceHandler));
|
|
28
29
|
}
|
|
29
30
|
|
|
@@ -35,6 +35,8 @@ NSAttributedString *RCTNSAttributedStringFromAttributedStringBox(
|
|
|
35
35
|
facebook::react::AttributedStringBox RCTAttributedStringBoxFromNSAttributedString(
|
|
36
36
|
NSAttributedString *nsAttributedString);
|
|
37
37
|
|
|
38
|
+
NSString *RCTNSStringFromStringApplyingTextTransform(NSString *string, facebook::react::TextTransform textTransform);
|
|
39
|
+
|
|
38
40
|
@interface RCTWeakEventEmitterWrapper : NSObject
|
|
39
41
|
@property (nonatomic, assign) facebook::react::SharedEventEmitter eventEmitter;
|
|
40
42
|
@end
|
|
@@ -288,6 +288,9 @@ NSDictionary<NSAttributedStringKey, id> *RCTNSTextAttributesFromTextAttributes(T
|
|
|
288
288
|
case AccessibilityRole::Tab:
|
|
289
289
|
attributes[RCTTextAttributesAccessibilityRoleAttributeName] = @("tab");
|
|
290
290
|
break;
|
|
291
|
+
case AccessibilityRole::TabBar:
|
|
292
|
+
attributes[RCTTextAttributesAccessibilityRoleAttributeName] = @("tabbar");
|
|
293
|
+
break;
|
|
291
294
|
case AccessibilityRole::Tablist:
|
|
292
295
|
attributes[RCTTextAttributesAccessibilityRoleAttributeName] = @("tablist");
|
|
293
296
|
break;
|
|
@@ -332,6 +335,11 @@ NSAttributedString *RCTNSAttributedStringFromAttributedString(const AttributedSt
|
|
|
332
335
|
} else {
|
|
333
336
|
NSString *string = [NSString stringWithCString:fragment.string.c_str() encoding:NSUTF8StringEncoding];
|
|
334
337
|
|
|
338
|
+
if (fragment.textAttributes.textTransform.hasValue()) {
|
|
339
|
+
auto textTransform = fragment.textAttributes.textTransform.value();
|
|
340
|
+
string = RCTNSStringFromStringApplyingTextTransform(string, textTransform);
|
|
341
|
+
}
|
|
342
|
+
|
|
335
343
|
nsAttributedStringFragment = [[NSMutableAttributedString alloc]
|
|
336
344
|
initWithString:string
|
|
337
345
|
attributes:RCTNSTextAttributesFromTextAttributes(fragment.textAttributes)];
|
|
@@ -370,3 +378,17 @@ AttributedStringBox RCTAttributedStringBoxFromNSAttributedString(NSAttributedStr
|
|
|
370
378
|
{
|
|
371
379
|
return nsAttributedString.length ? AttributedStringBox{wrapManagedObject(nsAttributedString)} : AttributedStringBox{};
|
|
372
380
|
}
|
|
381
|
+
|
|
382
|
+
NSString *RCTNSStringFromStringApplyingTextTransform(NSString *string, TextTransform textTransform)
|
|
383
|
+
{
|
|
384
|
+
switch (textTransform) {
|
|
385
|
+
case TextTransform::Uppercase:
|
|
386
|
+
return [string uppercaseString];
|
|
387
|
+
case TextTransform::Lowercase:
|
|
388
|
+
return [string lowercaseString];
|
|
389
|
+
case TextTransform::Capitalize:
|
|
390
|
+
return [string capitalizedString];
|
|
391
|
+
default:
|
|
392
|
+
return string;
|
|
393
|
+
}
|
|
394
|
+
}
|
|
@@ -50,11 +50,11 @@ rn_xplat_cxx_library(
|
|
|
50
50
|
tests = [":tests"],
|
|
51
51
|
visibility = ["PUBLIC"],
|
|
52
52
|
deps = [
|
|
53
|
-
"fbsource//xplat/fbsystrace:fbsystrace",
|
|
54
|
-
"fbsource//xplat/folly:headers_only",
|
|
55
|
-
"fbsource//xplat/folly:memory",
|
|
56
|
-
"fbsource//xplat/folly:molly",
|
|
57
53
|
"//third-party/glog:glog",
|
|
54
|
+
"//xplat/fbsystrace:fbsystrace",
|
|
55
|
+
"//xplat/folly:headers_only",
|
|
56
|
+
"//xplat/folly:memory",
|
|
57
|
+
"//xplat/folly:molly",
|
|
58
58
|
react_native_xplat_target("react/utils:utils"),
|
|
59
59
|
react_native_xplat_target("react/renderer/debug:debug"),
|
|
60
60
|
react_native_xplat_target("react/renderer/core:core"),
|
|
@@ -77,8 +77,8 @@ fb_xplat_cxx_test(
|
|
|
77
77
|
contacts = ["oncall+react_native@xmail.facebook.com"],
|
|
78
78
|
platforms = (ANDROID, APPLE, CXX),
|
|
79
79
|
deps = [
|
|
80
|
-
"fbsource//xplat/folly:molly",
|
|
81
|
-
"fbsource//xplat/third-party/gmock:gtest",
|
|
82
80
|
":timeline",
|
|
81
|
+
"//xplat/folly:molly",
|
|
82
|
+
"//xplat/third-party/gmock:gtest",
|
|
83
83
|
],
|
|
84
84
|
)
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
#include "UIManager.h"
|
|
9
9
|
|
|
10
10
|
#include <react/debug/react_native_assert.h>
|
|
11
|
+
#include <react/renderer/core/PropsParserContext.h>
|
|
11
12
|
#include <react/renderer/core/ShadowNodeFragment.h>
|
|
12
13
|
#include <react/renderer/debug/SystraceSection.h>
|
|
13
14
|
#include <react/renderer/graphics/Geometry.h>
|
|
@@ -29,9 +30,11 @@ static std::unique_ptr<LeakChecker> constructLeakCheckerIfNeeded(
|
|
|
29
30
|
|
|
30
31
|
UIManager::UIManager(
|
|
31
32
|
RuntimeExecutor const &runtimeExecutor,
|
|
32
|
-
BackgroundExecutor const &backgroundExecutor
|
|
33
|
+
BackgroundExecutor const &backgroundExecutor,
|
|
34
|
+
ContextContainer::Shared contextContainer)
|
|
33
35
|
: runtimeExecutor_(runtimeExecutor),
|
|
34
36
|
backgroundExecutor_(backgroundExecutor),
|
|
37
|
+
contextContainer_(contextContainer),
|
|
35
38
|
leakChecker_(constructLeakCheckerIfNeeded(runtimeExecutor)) {}
|
|
36
39
|
|
|
37
40
|
UIManager::~UIManager() {
|
|
@@ -51,10 +54,13 @@ SharedShadowNode UIManager::createNode(
|
|
|
51
54
|
auto fallbackDescriptor =
|
|
52
55
|
componentDescriptorRegistry_->getFallbackComponentDescriptor();
|
|
53
56
|
|
|
57
|
+
PropsParserContext propsParserContext{surfaceId, *contextContainer_.get()};
|
|
58
|
+
|
|
54
59
|
auto const fragment = ShadowNodeFamilyFragment{tag, surfaceId, nullptr};
|
|
55
60
|
auto family =
|
|
56
61
|
componentDescriptor.createFamily(fragment, std::move(eventTarget));
|
|
57
|
-
auto const props =
|
|
62
|
+
auto const props =
|
|
63
|
+
componentDescriptor.cloneProps(propsParserContext, nullptr, rawProps);
|
|
58
64
|
auto const state =
|
|
59
65
|
componentDescriptor.createInitialState(ShadowNodeFragment{props}, family);
|
|
60
66
|
|
|
@@ -65,16 +71,17 @@ SharedShadowNode UIManager::createNode(
|
|
|
65
71
|
fallbackDescriptor->getComponentHandle() ==
|
|
66
72
|
componentDescriptor.getComponentHandle()
|
|
67
73
|
? componentDescriptor.cloneProps(
|
|
68
|
-
|
|
74
|
+
propsParserContext,
|
|
75
|
+
props,
|
|
76
|
+
RawProps(folly::dynamic::object("name", name)))
|
|
69
77
|
: props,
|
|
70
78
|
/* .children = */ ShadowNodeFragment::childrenPlaceholder(),
|
|
71
79
|
/* .state = */ state,
|
|
72
80
|
},
|
|
73
81
|
family);
|
|
74
82
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
delegate->uiManagerDidCreateShadowNode(*shadowNode.get());
|
|
83
|
+
if (delegate_) {
|
|
84
|
+
delegate_->uiManagerDidCreateShadowNode(*shadowNode.get());
|
|
78
85
|
}
|
|
79
86
|
if (leakChecker_) {
|
|
80
87
|
leakChecker_->uiManagerDidCreateShadowNodeFamily(family);
|
|
@@ -89,20 +96,22 @@ SharedShadowNode UIManager::cloneNode(
|
|
|
89
96
|
const RawProps *rawProps) const {
|
|
90
97
|
SystraceSection s("UIManager::cloneNode");
|
|
91
98
|
|
|
99
|
+
PropsParserContext propsParserContext{
|
|
100
|
+
shadowNode->getFamily().getSurfaceId(), *contextContainer_.get()};
|
|
101
|
+
|
|
92
102
|
auto &componentDescriptor = shadowNode->getComponentDescriptor();
|
|
93
103
|
auto clonedShadowNode = componentDescriptor.cloneShadowNode(
|
|
94
104
|
*shadowNode,
|
|
95
105
|
{
|
|
96
106
|
/* .props = */
|
|
97
107
|
rawProps ? componentDescriptor.cloneProps(
|
|
98
|
-
shadowNode->getProps(), *rawProps)
|
|
108
|
+
propsParserContext, shadowNode->getProps(), *rawProps)
|
|
99
109
|
: ShadowNodeFragment::propsPlaceholder(),
|
|
100
110
|
/* .children = */ children,
|
|
101
111
|
});
|
|
102
112
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
delegate->uiManagerDidCloneShadowNode(
|
|
113
|
+
if (delegate_) {
|
|
114
|
+
delegate_->uiManagerDidCloneShadowNode(
|
|
106
115
|
*shadowNode.get(), *clonedShadowNode.get());
|
|
107
116
|
}
|
|
108
117
|
|
|
@@ -142,9 +151,8 @@ void UIManager::setIsJSResponder(
|
|
|
142
151
|
ShadowNode::Shared const &shadowNode,
|
|
143
152
|
bool isJSResponder,
|
|
144
153
|
bool blockNativeResponder) const {
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
delegate->uiManagerDidSetIsJSResponder(
|
|
154
|
+
if (delegate_) {
|
|
155
|
+
delegate_->uiManagerDidSetIsJSResponder(
|
|
148
156
|
shadowNode, isJSResponder, blockNativeResponder);
|
|
149
157
|
}
|
|
150
158
|
}
|
|
@@ -160,6 +168,7 @@ void UIManager::startSurface(
|
|
|
160
168
|
shadowTreeRegistry_.add(std::move(shadowTree));
|
|
161
169
|
|
|
162
170
|
runtimeExecutor_([=](jsi::Runtime &runtime) {
|
|
171
|
+
SystraceSection s("UIManager::startSurface::onRuntime");
|
|
163
172
|
auto uiManagerBinding = UIManagerBinding::getBinding(runtime);
|
|
164
173
|
if (!uiManagerBinding) {
|
|
165
174
|
return;
|
|
@@ -325,18 +334,16 @@ void UIManager::dispatchCommand(
|
|
|
325
334
|
const ShadowNode::Shared &shadowNode,
|
|
326
335
|
std::string const &commandName,
|
|
327
336
|
folly::dynamic const args) const {
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
delegate->uiManagerDidDispatchCommand(shadowNode, commandName, args);
|
|
337
|
+
if (delegate_) {
|
|
338
|
+
delegate_->uiManagerDidDispatchCommand(shadowNode, commandName, args);
|
|
331
339
|
}
|
|
332
340
|
}
|
|
333
341
|
|
|
334
342
|
void UIManager::sendAccessibilityEvent(
|
|
335
343
|
const ShadowNode::Shared &shadowNode,
|
|
336
344
|
std::string const &eventType) {
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
delegate->uiManagerDidSendAccessibilityEvent(shadowNode, eventType);
|
|
345
|
+
if (delegate_) {
|
|
346
|
+
delegate_->uiManagerDidSendAccessibilityEvent(shadowNode, eventType);
|
|
340
347
|
}
|
|
341
348
|
}
|
|
342
349
|
|
|
@@ -345,9 +352,8 @@ void UIManager::configureNextLayoutAnimation(
|
|
|
345
352
|
RawValue const &config,
|
|
346
353
|
jsi::Value const &successCallback,
|
|
347
354
|
jsi::Value const &failureCallback) const {
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
animationDelegate->uiManagerDidConfigureNextLayoutAnimation(
|
|
355
|
+
if (animationDelegate_) {
|
|
356
|
+
animationDelegate_->uiManagerDidConfigureNextLayoutAnimation(
|
|
351
357
|
runtime,
|
|
352
358
|
config,
|
|
353
359
|
std::move(successCallback),
|
|
@@ -423,9 +429,8 @@ void UIManager::shadowTreeDidFinishTransaction(
|
|
|
423
429
|
MountingCoordinator::Shared const &mountingCoordinator) const {
|
|
424
430
|
SystraceSection s("UIManager::shadowTreeDidFinishTransaction");
|
|
425
431
|
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
delegate->uiManagerDidFinishTransaction(mountingCoordinator);
|
|
432
|
+
if (delegate_) {
|
|
433
|
+
delegate_->uiManagerDidFinishTransaction(mountingCoordinator);
|
|
429
434
|
}
|
|
430
435
|
}
|
|
431
436
|
|
|
@@ -436,15 +441,14 @@ void UIManager::setAnimationDelegate(UIManagerAnimationDelegate *delegate) {
|
|
|
436
441
|
}
|
|
437
442
|
|
|
438
443
|
void UIManager::stopSurfaceForAnimationDelegate(SurfaceId surfaceId) const {
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
animationDelegate->stopSurface(surfaceId);
|
|
444
|
+
if (animationDelegate_ != nullptr) {
|
|
445
|
+
animationDelegate_->stopSurface(surfaceId);
|
|
442
446
|
}
|
|
443
447
|
}
|
|
444
448
|
|
|
445
449
|
void UIManager::animationTick() {
|
|
446
|
-
|
|
447
|
-
|
|
450
|
+
if (animationDelegate_ != nullptr &&
|
|
451
|
+
animationDelegate_->shouldAnimateFrame()) {
|
|
448
452
|
shadowTreeRegistry_.enumerate(
|
|
449
453
|
[&](ShadowTree const &shadowTree, bool &stop) {
|
|
450
454
|
shadowTree.notifyDelegatesOfUpdates();
|
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
#include <react/renderer/uimanager/UIManagerAnimationDelegate.h>
|
|
24
24
|
#include <react/renderer/uimanager/UIManagerDelegate.h>
|
|
25
25
|
#include <react/renderer/uimanager/primitives.h>
|
|
26
|
+
#include <react/utils/ContextContainer.h>
|
|
26
27
|
|
|
27
28
|
namespace facebook::react {
|
|
28
29
|
|
|
@@ -33,7 +34,8 @@ class UIManager final : public ShadowTreeDelegate {
|
|
|
33
34
|
public:
|
|
34
35
|
UIManager(
|
|
35
36
|
RuntimeExecutor const &runtimeExecutor,
|
|
36
|
-
BackgroundExecutor const &backgroundExecutor
|
|
37
|
+
BackgroundExecutor const &backgroundExecutor,
|
|
38
|
+
ContextContainer::Shared contextContainer);
|
|
37
39
|
|
|
38
40
|
~UIManager();
|
|
39
41
|
|
|
@@ -184,11 +186,12 @@ class UIManager final : public ShadowTreeDelegate {
|
|
|
184
186
|
ShadowTreeRegistry const &getShadowTreeRegistry() const;
|
|
185
187
|
|
|
186
188
|
SharedComponentDescriptorRegistry componentDescriptorRegistry_;
|
|
187
|
-
|
|
188
|
-
|
|
189
|
+
UIManagerDelegate *delegate_;
|
|
190
|
+
UIManagerAnimationDelegate *animationDelegate_{nullptr};
|
|
189
191
|
RuntimeExecutor const runtimeExecutor_{};
|
|
190
192
|
ShadowTreeRegistry shadowTreeRegistry_{};
|
|
191
193
|
BackgroundExecutor const backgroundExecutor_{};
|
|
194
|
+
ContextContainer::Shared contextContainer_;
|
|
192
195
|
|
|
193
196
|
mutable better::shared_mutex commitHookMutex_;
|
|
194
197
|
mutable std::vector<UIManagerCommitHook const *> commitHooks_;
|
|
@@ -106,10 +106,6 @@ void UIManagerBinding::attach(std::shared_ptr<UIManager> const &uiManager) {
|
|
|
106
106
|
uiManager_ = uiManager;
|
|
107
107
|
}
|
|
108
108
|
|
|
109
|
-
void UIManagerBinding::setEnableAsyncMeasure(bool enable) {
|
|
110
|
-
enableAsyncMeasure_ = enable;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
109
|
static jsi::Value callMethodOfModule(
|
|
114
110
|
jsi::Runtime &runtime,
|
|
115
111
|
std::string const &moduleName,
|
|
@@ -133,12 +129,40 @@ static jsi::Value callMethodOfModule(
|
|
|
133
129
|
return jsi::Value::undefined();
|
|
134
130
|
}
|
|
135
131
|
|
|
132
|
+
jsi::Value UIManagerBinding::getInspectorDataForInstance(
|
|
133
|
+
jsi::Runtime &runtime,
|
|
134
|
+
SharedEventEmitter eventEmitter) const {
|
|
135
|
+
auto eventTarget = eventEmitter->eventTarget_;
|
|
136
|
+
EventEmitter::DispatchMutex().lock();
|
|
137
|
+
|
|
138
|
+
if (!runtime.global().hasProperty(runtime, "__fbBatchedBridge") ||
|
|
139
|
+
!eventTarget) {
|
|
140
|
+
return jsi::Value::undefined();
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
eventTarget->retain(runtime);
|
|
144
|
+
auto instanceHandle = eventTarget->getInstanceHandle(runtime);
|
|
145
|
+
eventTarget->release(runtime);
|
|
146
|
+
EventEmitter::DispatchMutex().unlock();
|
|
147
|
+
|
|
148
|
+
if (instanceHandle.isUndefined()) {
|
|
149
|
+
return jsi::Value::undefined();
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
return callMethodOfModule(
|
|
153
|
+
runtime,
|
|
154
|
+
"ReactFabric",
|
|
155
|
+
"getInspectorDataForInstance",
|
|
156
|
+
{std::move(instanceHandle)});
|
|
157
|
+
}
|
|
158
|
+
|
|
136
159
|
void UIManagerBinding::startSurface(
|
|
137
160
|
jsi::Runtime &runtime,
|
|
138
161
|
SurfaceId surfaceId,
|
|
139
162
|
std::string const &moduleName,
|
|
140
163
|
folly::dynamic const &initalProps,
|
|
141
164
|
DisplayMode displayMode) const {
|
|
165
|
+
SystraceSection s("UIManagerBinding::startSurface");
|
|
142
166
|
folly::dynamic parameters = folly::dynamic::object();
|
|
143
167
|
parameters["rootTag"] = surfaceId;
|
|
144
168
|
parameters["initialProps"] = initalProps;
|
|
@@ -172,6 +196,7 @@ void UIManagerBinding::setSurfaceProps(
|
|
|
172
196
|
std::string const &moduleName,
|
|
173
197
|
folly::dynamic const &initalProps,
|
|
174
198
|
DisplayMode displayMode) const {
|
|
199
|
+
SystraceSection s("UIManagerBinding::setSurfaceProps");
|
|
175
200
|
folly::dynamic parameters = folly::dynamic::object();
|
|
176
201
|
parameters["rootTag"] = surfaceId;
|
|
177
202
|
parameters["initialProps"] = initalProps;
|
|
@@ -271,6 +296,7 @@ jsi::Value UIManagerBinding::get(
|
|
|
271
296
|
jsi::Runtime &runtime,
|
|
272
297
|
jsi::PropNameID const &name) {
|
|
273
298
|
auto methodName = name.utf8(runtime);
|
|
299
|
+
SystraceSection s("UIManagerBinding::get", "name", methodName);
|
|
274
300
|
|
|
275
301
|
// Convert shared_ptr<UIManager> to a raw ptr
|
|
276
302
|
// Why? Because:
|
|
@@ -639,44 +665,33 @@ jsi::Value UIManagerBinding::get(
|
|
|
639
665
|
runtime,
|
|
640
666
|
name,
|
|
641
667
|
4,
|
|
642
|
-
[
|
|
668
|
+
[uiManager](
|
|
643
669
|
jsi::Runtime &runtime,
|
|
644
670
|
jsi::Value const &thisValue,
|
|
645
671
|
jsi::Value const *arguments,
|
|
646
672
|
size_t count) noexcept -> jsi::Value {
|
|
647
|
-
auto
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
673
|
+
auto layoutMetrics = uiManager->getRelativeLayoutMetrics(
|
|
674
|
+
*shadowNodeFromValue(runtime, arguments[0]),
|
|
675
|
+
shadowNodeFromValue(runtime, arguments[1]).get(),
|
|
676
|
+
{/* .includeTransform = */ false});
|
|
677
|
+
|
|
678
|
+
if (layoutMetrics == EmptyLayoutMetrics) {
|
|
679
|
+
auto onFailFunction =
|
|
680
|
+
arguments[2].getObject(runtime).getFunction(runtime);
|
|
681
|
+
onFailFunction.call(runtime);
|
|
682
|
+
return jsi::Value::undefined();
|
|
683
|
+
}
|
|
684
|
+
|
|
685
|
+
auto onSuccessFunction =
|
|
686
|
+
arguments[3].getObject(runtime).getFunction(runtime);
|
|
687
|
+
auto frame = layoutMetrics.frame;
|
|
688
|
+
|
|
689
|
+
onSuccessFunction.call(
|
|
654
690
|
runtime,
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
onSuccess =
|
|
660
|
-
std::move(onSuccess)](jsi::Runtime &runtime) noexcept {
|
|
661
|
-
auto layoutMetrics = uiManager->getRelativeLayoutMetrics(
|
|
662
|
-
*shadowNode,
|
|
663
|
-
ancestorShadowNode.get(),
|
|
664
|
-
{/* .includeTransform = */ false});
|
|
665
|
-
|
|
666
|
-
if (layoutMetrics == EmptyLayoutMetrics) {
|
|
667
|
-
onFail->call(runtime);
|
|
668
|
-
return;
|
|
669
|
-
}
|
|
670
|
-
|
|
671
|
-
auto frame = layoutMetrics.frame;
|
|
672
|
-
|
|
673
|
-
onSuccess->call(
|
|
674
|
-
runtime,
|
|
675
|
-
{jsi::Value{runtime, (double)frame.origin.x},
|
|
676
|
-
jsi::Value{runtime, (double)frame.origin.y},
|
|
677
|
-
jsi::Value{runtime, (double)frame.size.width},
|
|
678
|
-
jsi::Value{runtime, (double)frame.size.height}});
|
|
679
|
-
});
|
|
691
|
+
{jsi::Value{runtime, (double)frame.origin.x},
|
|
692
|
+
jsi::Value{runtime, (double)frame.origin.y},
|
|
693
|
+
jsi::Value{runtime, (double)frame.size.width},
|
|
694
|
+
jsi::Value{runtime, (double)frame.size.height}});
|
|
680
695
|
return jsi::Value::undefined();
|
|
681
696
|
});
|
|
682
697
|
}
|
|
@@ -686,45 +701,39 @@ jsi::Value UIManagerBinding::get(
|
|
|
686
701
|
runtime,
|
|
687
702
|
name,
|
|
688
703
|
2,
|
|
689
|
-
[
|
|
704
|
+
[uiManager](
|
|
690
705
|
jsi::Runtime &runtime,
|
|
691
706
|
jsi::Value const &thisValue,
|
|
692
707
|
jsi::Value const *arguments,
|
|
693
708
|
size_t count) noexcept -> jsi::Value {
|
|
694
|
-
auto
|
|
695
|
-
|
|
696
|
-
|
|
709
|
+
auto shadowNode = shadowNodeFromValue(runtime, arguments[0]);
|
|
710
|
+
auto layoutMetrics = uiManager->getRelativeLayoutMetrics(
|
|
711
|
+
*shadowNode, nullptr, {/* .includeTransform = */ true});
|
|
712
|
+
auto onSuccessFunction =
|
|
713
|
+
arguments[1].getObject(runtime).getFunction(runtime);
|
|
714
|
+
|
|
715
|
+
if (layoutMetrics == EmptyLayoutMetrics) {
|
|
716
|
+
onSuccessFunction.call(runtime, {0, 0, 0, 0, 0, 0});
|
|
717
|
+
return jsi::Value::undefined();
|
|
718
|
+
}
|
|
719
|
+
auto newestCloneOfShadowNode =
|
|
720
|
+
uiManager->getNewestCloneOfShadowNode(*shadowNode);
|
|
721
|
+
|
|
722
|
+
auto layoutableShadowNode = traitCast<LayoutableShadowNode const *>(
|
|
723
|
+
newestCloneOfShadowNode.get());
|
|
724
|
+
Point originRelativeToParent = layoutableShadowNode
|
|
725
|
+
? layoutableShadowNode->getLayoutMetrics().frame.origin
|
|
726
|
+
: Point();
|
|
727
|
+
|
|
728
|
+
auto frame = layoutMetrics.frame;
|
|
729
|
+
onSuccessFunction.call(
|
|
697
730
|
runtime,
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
if (layoutMetrics == EmptyLayoutMetrics) {
|
|
705
|
-
onSuccess->call(runtime, {0, 0, 0, 0, 0, 0});
|
|
706
|
-
return;
|
|
707
|
-
}
|
|
708
|
-
auto newestCloneOfShadowNode =
|
|
709
|
-
uiManager->getNewestCloneOfShadowNode(*shadowNode);
|
|
710
|
-
|
|
711
|
-
auto layoutableShadowNode =
|
|
712
|
-
traitCast<LayoutableShadowNode const *>(
|
|
713
|
-
newestCloneOfShadowNode.get());
|
|
714
|
-
Point originRelativeToParent = layoutableShadowNode
|
|
715
|
-
? layoutableShadowNode->getLayoutMetrics().frame.origin
|
|
716
|
-
: Point();
|
|
717
|
-
|
|
718
|
-
auto frame = layoutMetrics.frame;
|
|
719
|
-
onSuccess->call(
|
|
720
|
-
runtime,
|
|
721
|
-
{jsi::Value{runtime, (double)originRelativeToParent.x},
|
|
722
|
-
jsi::Value{runtime, (double)originRelativeToParent.y},
|
|
723
|
-
jsi::Value{runtime, (double)frame.size.width},
|
|
724
|
-
jsi::Value{runtime, (double)frame.size.height},
|
|
725
|
-
jsi::Value{runtime, (double)frame.origin.x},
|
|
726
|
-
jsi::Value{runtime, (double)frame.origin.y}});
|
|
727
|
-
});
|
|
731
|
+
{jsi::Value{runtime, (double)originRelativeToParent.x},
|
|
732
|
+
jsi::Value{runtime, (double)originRelativeToParent.y},
|
|
733
|
+
jsi::Value{runtime, (double)frame.size.width},
|
|
734
|
+
jsi::Value{runtime, (double)frame.size.height},
|
|
735
|
+
jsi::Value{runtime, (double)frame.origin.x},
|
|
736
|
+
jsi::Value{runtime, (double)frame.origin.y}});
|
|
728
737
|
return jsi::Value::undefined();
|
|
729
738
|
});
|
|
730
739
|
}
|
|
@@ -734,38 +743,32 @@ jsi::Value UIManagerBinding::get(
|
|
|
734
743
|
runtime,
|
|
735
744
|
name,
|
|
736
745
|
2,
|
|
737
|
-
[
|
|
746
|
+
[uiManager](
|
|
738
747
|
jsi::Runtime &runtime,
|
|
739
748
|
jsi::Value const &thisValue,
|
|
740
749
|
jsi::Value const *arguments,
|
|
741
750
|
size_t count) noexcept -> jsi::Value {
|
|
742
|
-
auto
|
|
743
|
-
arguments[
|
|
744
|
-
|
|
751
|
+
auto layoutMetrics = uiManager->getRelativeLayoutMetrics(
|
|
752
|
+
*shadowNodeFromValue(runtime, arguments[0]),
|
|
753
|
+
nullptr,
|
|
754
|
+
{/* .includeTransform = */ true,
|
|
755
|
+
/* includeViewportOffset = */ true});
|
|
756
|
+
|
|
757
|
+
auto onSuccessFunction =
|
|
758
|
+
arguments[1].getObject(runtime).getFunction(runtime);
|
|
759
|
+
|
|
760
|
+
if (layoutMetrics == EmptyLayoutMetrics) {
|
|
761
|
+
onSuccessFunction.call(runtime, {0, 0, 0, 0});
|
|
762
|
+
return jsi::Value::undefined();
|
|
763
|
+
}
|
|
764
|
+
|
|
765
|
+
auto frame = layoutMetrics.frame;
|
|
766
|
+
onSuccessFunction.call(
|
|
745
767
|
runtime,
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
auto layoutMetrics = uiManager->getRelativeLayoutMetrics(
|
|
751
|
-
*shadowNode,
|
|
752
|
-
nullptr,
|
|
753
|
-
{/* .includeTransform = */ true,
|
|
754
|
-
/* includeViewportOffset = */ true});
|
|
755
|
-
|
|
756
|
-
if (layoutMetrics == EmptyLayoutMetrics) {
|
|
757
|
-
onSuccess->call(runtime, {0, 0, 0, 0});
|
|
758
|
-
return;
|
|
759
|
-
}
|
|
760
|
-
|
|
761
|
-
auto frame = layoutMetrics.frame;
|
|
762
|
-
onSuccess->call(
|
|
763
|
-
runtime,
|
|
764
|
-
{jsi::Value{runtime, (double)frame.origin.x},
|
|
765
|
-
jsi::Value{runtime, (double)frame.origin.y},
|
|
766
|
-
jsi::Value{runtime, (double)frame.size.width},
|
|
767
|
-
jsi::Value{runtime, (double)frame.size.height}});
|
|
768
|
-
});
|
|
768
|
+
{jsi::Value{runtime, (double)frame.origin.x},
|
|
769
|
+
jsi::Value{runtime, (double)frame.origin.y},
|
|
770
|
+
jsi::Value{runtime, (double)frame.size.width},
|
|
771
|
+
jsi::Value{runtime, (double)frame.size.height}});
|
|
769
772
|
return jsi::Value::undefined();
|
|
770
773
|
});
|
|
771
774
|
}
|
|
@@ -833,14 +836,4 @@ jsi::Value UIManagerBinding::get(
|
|
|
833
836
|
return jsi::Value::undefined();
|
|
834
837
|
}
|
|
835
838
|
|
|
836
|
-
void UIManagerBinding::executeMeasure(
|
|
837
|
-
jsi::Runtime &runtime,
|
|
838
|
-
std::function<void(jsi::Runtime &)> &&callback) const noexcept {
|
|
839
|
-
if (enableAsyncMeasure_) {
|
|
840
|
-
runtimeExecutor_(std::move(callback));
|
|
841
|
-
} else {
|
|
842
|
-
callback(runtime);
|
|
843
|
-
}
|
|
844
|
-
}
|
|
845
|
-
|
|
846
839
|
} // namespace facebook::react
|
|
@@ -49,8 +49,6 @@ class UIManagerBinding : public jsi::HostObject {
|
|
|
49
49
|
*/
|
|
50
50
|
void attach(std::shared_ptr<UIManager> const &uiManager);
|
|
51
51
|
|
|
52
|
-
void setEnableAsyncMeasure(bool enable);
|
|
53
|
-
|
|
54
52
|
/*
|
|
55
53
|
* Starts React Native Surface with given id, moduleName, and props.
|
|
56
54
|
* Thread synchronization must be enforced externally.
|
|
@@ -74,6 +72,10 @@ class UIManagerBinding : public jsi::HostObject {
|
|
|
74
72
|
folly::dynamic const &props,
|
|
75
73
|
DisplayMode displayMode) const;
|
|
76
74
|
|
|
75
|
+
jsi::Value getInspectorDataForInstance(
|
|
76
|
+
jsi::Runtime &runtime,
|
|
77
|
+
SharedEventEmitter eventEmitter) const;
|
|
78
|
+
|
|
77
79
|
/*
|
|
78
80
|
* Stops React Native Surface with given id.
|
|
79
81
|
* Thread synchronization must be enforced externally.
|
|
@@ -106,15 +108,10 @@ class UIManagerBinding : public jsi::HostObject {
|
|
|
106
108
|
jsi::Value get(jsi::Runtime &runtime, jsi::PropNameID const &name) override;
|
|
107
109
|
|
|
108
110
|
private:
|
|
109
|
-
void executeMeasure(
|
|
110
|
-
jsi::Runtime &runtime,
|
|
111
|
-
std::function<void(jsi::Runtime &)> &&callback) const noexcept;
|
|
112
|
-
|
|
113
111
|
std::shared_ptr<UIManager> uiManager_;
|
|
114
112
|
std::unique_ptr<EventHandler const> eventHandler_;
|
|
115
113
|
mutable ReactEventPriority currentEventPriority_;
|
|
116
114
|
|
|
117
|
-
bool enableAsyncMeasure_;
|
|
118
115
|
RuntimeExecutor runtimeExecutor_;
|
|
119
116
|
};
|
|
120
117
|
|