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
|
@@ -11,7 +11,7 @@ import android.view.MotionEvent;
|
|
|
11
11
|
import androidx.annotation.Nullable;
|
|
12
12
|
import androidx.core.util.Pools;
|
|
13
13
|
import com.facebook.infer.annotation.Assertions;
|
|
14
|
-
import com.facebook.react.bridge.
|
|
14
|
+
import com.facebook.react.bridge.ReactSoftExceptionLogger;
|
|
15
15
|
import com.facebook.react.bridge.SoftAssertions;
|
|
16
16
|
|
|
17
17
|
/**
|
|
@@ -96,7 +96,7 @@ public class TouchEvent extends Event<TouchEvent> {
|
|
|
96
96
|
float viewX,
|
|
97
97
|
float viewY,
|
|
98
98
|
TouchEventCoalescingKeyHelper touchEventCoalescingKeyHelper) {
|
|
99
|
-
super.init(surfaceId, viewTag);
|
|
99
|
+
super.init(surfaceId, viewTag, motionEventToCopy.getEventTime());
|
|
100
100
|
|
|
101
101
|
SoftAssertions.assertCondition(
|
|
102
102
|
gestureStartTime != UNSET, "Gesture start time must be initialized");
|
|
@@ -131,9 +131,25 @@ public class TouchEvent extends Event<TouchEvent> {
|
|
|
131
131
|
|
|
132
132
|
@Override
|
|
133
133
|
public void onDispose() {
|
|
134
|
-
|
|
134
|
+
MotionEvent motionEvent = mMotionEvent;
|
|
135
135
|
mMotionEvent = null;
|
|
136
|
-
|
|
136
|
+
if (motionEvent != null) {
|
|
137
|
+
motionEvent.recycle();
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
// Either `this` is in the event pool, or motionEvent
|
|
141
|
+
// is null. It is in theory not possible for a TouchEvent to
|
|
142
|
+
// be in the EVENTS_POOL but for motionEvent to be null. However,
|
|
143
|
+
// out of an abundance of caution and to avoid memory leaks or
|
|
144
|
+
// other crashes at all costs, we attempt to release here and log
|
|
145
|
+
// a soft exception here if release throws an IllegalStateException
|
|
146
|
+
// due to `this` being over-released. This may indicate that there is
|
|
147
|
+
// a logic error in our events system or pooling mechanism.
|
|
148
|
+
try {
|
|
149
|
+
EVENTS_POOL.release(this);
|
|
150
|
+
} catch (IllegalStateException e) {
|
|
151
|
+
ReactSoftExceptionLogger.logSoftException(TAG, e);
|
|
152
|
+
}
|
|
137
153
|
}
|
|
138
154
|
|
|
139
155
|
@Override
|
|
@@ -166,7 +182,7 @@ public class TouchEvent extends Event<TouchEvent> {
|
|
|
166
182
|
@Override
|
|
167
183
|
public void dispatch(RCTEventEmitter rctEventEmitter) {
|
|
168
184
|
if (!hasMotionEvent()) {
|
|
169
|
-
|
|
185
|
+
ReactSoftExceptionLogger.logSoftException(
|
|
170
186
|
TAG,
|
|
171
187
|
new IllegalStateException(
|
|
172
188
|
"Cannot dispatch a TouchEvent that has no MotionEvent; the TouchEvent has been recycled"));
|
|
@@ -64,7 +64,7 @@ public class TouchesHelper {
|
|
|
64
64
|
touch.putDouble(LOCATION_Y_KEY, PixelUtil.toDIPFromPixel(locationY));
|
|
65
65
|
touch.putInt(TARGET_SURFACE_KEY, surfaceId);
|
|
66
66
|
touch.putInt(TARGET_KEY, reactTarget);
|
|
67
|
-
touch.putDouble(TIMESTAMP_KEY, event.
|
|
67
|
+
touch.putDouble(TIMESTAMP_KEY, event.getTimestampMs());
|
|
68
68
|
touch.putDouble(POINTER_IDENTIFIER_KEY, motionEvent.getPointerId(index));
|
|
69
69
|
touches.pushMap(touch);
|
|
70
70
|
}
|
|
@@ -19,7 +19,7 @@ rn_xplat_cxx_library(
|
|
|
19
19
|
],
|
|
20
20
|
fbandroid_allow_jni_merging = True,
|
|
21
21
|
labels = ["supermodule:xplat/default/public.react_native.infra"],
|
|
22
|
-
platforms =
|
|
22
|
+
platforms = ANDROID,
|
|
23
23
|
preprocessor_flags = [
|
|
24
24
|
"-DLOG_TAG=\"ReactNative\"",
|
|
25
25
|
"-DWITH_FBSYSTRACE=1",
|
|
@@ -26,6 +26,6 @@ rn_android_library(
|
|
|
26
26
|
react_native_target("java/com/facebook/react/uimanager:uimanager"),
|
|
27
27
|
react_native_target("java/com/facebook/react/uimanager/annotations:annotations"),
|
|
28
28
|
react_native_target("java/com/facebook/react/views/scroll:scroll"),
|
|
29
|
-
react_native_root_target("
|
|
29
|
+
react_native_root_target(":generated_components_java-FBReactNativeComponentSpec"),
|
|
30
30
|
],
|
|
31
31
|
)
|
|
@@ -18,7 +18,7 @@ rn_android_library(
|
|
|
18
18
|
react_native_dep("third-party/java/infer-annotations:infer-annotations"),
|
|
19
19
|
react_native_dep("third-party/java/jsr-305:jsr-305"),
|
|
20
20
|
react_native_dep("libraries/fbcore/src/main/java/com/facebook/common/logging:logging"),
|
|
21
|
-
react_native_root_target("
|
|
21
|
+
react_native_root_target(":generated_components_java-FBReactNativeComponentSpec"),
|
|
22
22
|
react_native_target("java/com/facebook/react/bridge:bridge"),
|
|
23
23
|
react_native_target("java/com/facebook/react/common:common"),
|
|
24
24
|
react_native_target("java/com/facebook/react/module/annotations:annotations"),
|
|
@@ -293,14 +293,11 @@ public class ReactModalHostView extends ViewGroup
|
|
|
293
293
|
@Override
|
|
294
294
|
public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) {
|
|
295
295
|
if (event.getAction() == KeyEvent.ACTION_UP) {
|
|
296
|
-
// We need to stop the BACK button from closing the dialog by default
|
|
297
|
-
// that
|
|
298
|
-
//
|
|
299
|
-
// to
|
|
300
|
-
|
|
301
|
-
// visible
|
|
302
|
-
// to false on the Modal and the Modal will go away
|
|
303
|
-
if (keyCode == KeyEvent.KEYCODE_BACK) {
|
|
296
|
+
// We need to stop the BACK button and ESCAPE key from closing the dialog by default
|
|
297
|
+
// so we capture that event and instead inform JS so that it can make the decision as
|
|
298
|
+
// to whether or not to allow the back/escape key to close the dialog. If it chooses
|
|
299
|
+
// to, it can just set visible to false on the Modal and the Modal will go away
|
|
300
|
+
if (keyCode == KeyEvent.KEYCODE_BACK || keyCode == KeyEvent.KEYCODE_ESCAPE) {
|
|
304
301
|
Assertions.assertNotNull(
|
|
305
302
|
mOnRequestCloseListener,
|
|
306
303
|
"setOnRequestCloseListener must be called by the manager");
|
|
@@ -308,9 +305,8 @@ public class ReactModalHostView extends ViewGroup
|
|
|
308
305
|
return true;
|
|
309
306
|
} else {
|
|
310
307
|
// We redirect the rest of the key events to the current activity, since the
|
|
311
|
-
// activity
|
|
312
|
-
//
|
|
313
|
-
// menu
|
|
308
|
+
// activity expects to receive those events and react to them, ie. in the case of
|
|
309
|
+
// the dev menu
|
|
314
310
|
Activity currentActivity = ((ReactContext) getContext()).getCurrentActivity();
|
|
315
311
|
if (currentActivity != null) {
|
|
316
312
|
return currentActivity.onKeyUp(keyCode, event);
|
|
@@ -19,6 +19,6 @@ rn_android_library(
|
|
|
19
19
|
react_native_target("java/com/facebook/react/module/annotations:annotations"),
|
|
20
20
|
react_native_target("java/com/facebook/react/uimanager:uimanager"),
|
|
21
21
|
react_native_target("java/com/facebook/react/uimanager/annotations:annotations"),
|
|
22
|
-
react_native_root_target("
|
|
22
|
+
react_native_root_target(":generated_components_java-FBReactNativeComponentSpec"),
|
|
23
23
|
],
|
|
24
24
|
)
|
|
@@ -30,5 +30,6 @@ rn_android_library(
|
|
|
30
30
|
react_native_target("java/com/facebook/react/uimanager:uimanager"),
|
|
31
31
|
react_native_target("java/com/facebook/react/uimanager/annotations:annotations"),
|
|
32
32
|
react_native_target("java/com/facebook/react/views/view:view"),
|
|
33
|
+
react_native_target("res:uimanager"),
|
|
33
34
|
],
|
|
34
35
|
)
|
package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java
CHANGED
|
@@ -40,6 +40,7 @@ import com.facebook.react.uimanager.MeasureSpecAssertions;
|
|
|
40
40
|
import com.facebook.react.uimanager.PixelUtil;
|
|
41
41
|
import com.facebook.react.uimanager.ReactClippingViewGroup;
|
|
42
42
|
import com.facebook.react.uimanager.ReactClippingViewGroupHelper;
|
|
43
|
+
import com.facebook.react.uimanager.ReactOverflowView;
|
|
43
44
|
import com.facebook.react.uimanager.ViewProps;
|
|
44
45
|
import com.facebook.react.uimanager.events.NativeGestureUtil;
|
|
45
46
|
import com.facebook.react.views.view.ReactViewBackgroundManager;
|
|
@@ -49,7 +50,9 @@ import java.util.List;
|
|
|
49
50
|
|
|
50
51
|
/** Similar to {@link ReactScrollView} but only supports horizontal scrolling. */
|
|
51
52
|
public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
52
|
-
implements ReactClippingViewGroup,
|
|
53
|
+
implements ReactClippingViewGroup,
|
|
54
|
+
FabricViewStateManager.HasFabricViewStateManager,
|
|
55
|
+
ReactOverflowView {
|
|
53
56
|
|
|
54
57
|
private static boolean DEBUG_MODE = false && ReactBuildConfig.DEBUG;
|
|
55
58
|
private static String TAG = ReactHorizontalScrollView.class.getSimpleName();
|
|
@@ -245,6 +248,11 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
|
|
|
245
248
|
invalidate();
|
|
246
249
|
}
|
|
247
250
|
|
|
251
|
+
@Override
|
|
252
|
+
public @Nullable String getOverflow() {
|
|
253
|
+
return mOverflow;
|
|
254
|
+
}
|
|
255
|
+
|
|
248
256
|
@Override
|
|
249
257
|
protected void onDraw(Canvas canvas) {
|
|
250
258
|
if (DEBUG_MODE) {
|
|
@@ -20,12 +20,14 @@ import android.view.KeyEvent;
|
|
|
20
20
|
import android.view.MotionEvent;
|
|
21
21
|
import android.view.View;
|
|
22
22
|
import android.view.ViewGroup;
|
|
23
|
+
import android.view.accessibility.AccessibilityNodeInfo;
|
|
23
24
|
import android.widget.OverScroller;
|
|
24
25
|
import android.widget.ScrollView;
|
|
25
26
|
import androidx.annotation.Nullable;
|
|
26
27
|
import androidx.core.view.ViewCompat;
|
|
27
28
|
import com.facebook.common.logging.FLog;
|
|
28
29
|
import com.facebook.infer.annotation.Assertions;
|
|
30
|
+
import com.facebook.react.R;
|
|
29
31
|
import com.facebook.react.bridge.ReactContext;
|
|
30
32
|
import com.facebook.react.bridge.WritableMap;
|
|
31
33
|
import com.facebook.react.bridge.WritableNativeMap;
|
|
@@ -35,6 +37,7 @@ import com.facebook.react.uimanager.MeasureSpecAssertions;
|
|
|
35
37
|
import com.facebook.react.uimanager.PixelUtil;
|
|
36
38
|
import com.facebook.react.uimanager.ReactClippingViewGroup;
|
|
37
39
|
import com.facebook.react.uimanager.ReactClippingViewGroupHelper;
|
|
40
|
+
import com.facebook.react.uimanager.ReactOverflowView;
|
|
38
41
|
import com.facebook.react.uimanager.ViewProps;
|
|
39
42
|
import com.facebook.react.uimanager.common.UIManagerType;
|
|
40
43
|
import com.facebook.react.uimanager.common.ViewUtil;
|
|
@@ -54,7 +57,8 @@ public class ReactScrollView extends ScrollView
|
|
|
54
57
|
implements ReactClippingViewGroup,
|
|
55
58
|
ViewGroup.OnHierarchyChangeListener,
|
|
56
59
|
View.OnLayoutChangeListener,
|
|
57
|
-
FabricViewStateManager.HasFabricViewStateManager
|
|
60
|
+
FabricViewStateManager.HasFabricViewStateManager,
|
|
61
|
+
ReactOverflowView {
|
|
58
62
|
|
|
59
63
|
private static @Nullable Field sScrollerField;
|
|
60
64
|
private static boolean sTriedToGetScrollerField = false;
|
|
@@ -117,6 +121,20 @@ public class ReactScrollView extends ScrollView
|
|
|
117
121
|
setScrollBarStyle(SCROLLBARS_OUTSIDE_OVERLAY);
|
|
118
122
|
}
|
|
119
123
|
|
|
124
|
+
@Override
|
|
125
|
+
public void onInitializeAccessibilityNodeInfo(AccessibilityNodeInfo info) {
|
|
126
|
+
super.onInitializeAccessibilityNodeInfo(info);
|
|
127
|
+
|
|
128
|
+
// Expose the testID prop as the resource-id name of the view. Black-box E2E/UI testing
|
|
129
|
+
// frameworks, which interact with the UI through the accessibility framework, do not have
|
|
130
|
+
// access to view tags. This allows developers/testers to avoid polluting the
|
|
131
|
+
// content-description with test identifiers.
|
|
132
|
+
final String testId = (String) this.getTag(R.id.react_test_id);
|
|
133
|
+
if (testId != null) {
|
|
134
|
+
info.setViewIdResourceName(testId);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
|
|
120
138
|
@Nullable
|
|
121
139
|
private OverScroller getOverScrollerFromParent() {
|
|
122
140
|
OverScroller scroller;
|
|
@@ -209,6 +227,11 @@ public class ReactScrollView extends ScrollView
|
|
|
209
227
|
invalidate();
|
|
210
228
|
}
|
|
211
229
|
|
|
230
|
+
@Override
|
|
231
|
+
public @Nullable String getOverflow() {
|
|
232
|
+
return mOverflow;
|
|
233
|
+
}
|
|
234
|
+
|
|
212
235
|
@Override
|
|
213
236
|
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
|
|
214
237
|
MeasureSpecAssertions.assertExplicitMeasureSpec(widthMeasureSpec, heightMeasureSpec);
|
|
@@ -11,7 +11,7 @@ import androidx.annotation.Nullable;
|
|
|
11
11
|
import androidx.core.util.Pools;
|
|
12
12
|
import com.facebook.infer.annotation.Assertions;
|
|
13
13
|
import com.facebook.react.bridge.Arguments;
|
|
14
|
-
import com.facebook.react.bridge.
|
|
14
|
+
import com.facebook.react.bridge.ReactSoftExceptionLogger;
|
|
15
15
|
import com.facebook.react.bridge.WritableMap;
|
|
16
16
|
import com.facebook.react.uimanager.PixelUtil;
|
|
17
17
|
import com.facebook.react.uimanager.events.Event;
|
|
@@ -97,7 +97,7 @@ public class ScrollEvent extends Event<ScrollEvent> {
|
|
|
97
97
|
} catch (IllegalStateException e) {
|
|
98
98
|
// This exception can be thrown when an event is double-released.
|
|
99
99
|
// This is a problem but won't cause user-visible impact, so it's okay to fail silently.
|
|
100
|
-
|
|
100
|
+
ReactSoftExceptionLogger.logSoftException(TAG, e);
|
|
101
101
|
}
|
|
102
102
|
}
|
|
103
103
|
|
|
@@ -22,6 +22,6 @@ rn_android_library(
|
|
|
22
22
|
react_native_target("java/com/facebook/react/common:common"),
|
|
23
23
|
react_native_target("java/com/facebook/react/uimanager:uimanager"),
|
|
24
24
|
react_native_target("java/com/facebook/react/uimanager/annotations:annotations"),
|
|
25
|
-
react_native_root_target("
|
|
25
|
+
react_native_root_target(":generated_components_java-FBReactNativeComponentSpec"),
|
|
26
26
|
],
|
|
27
27
|
)
|
|
@@ -16,7 +16,6 @@ import android.view.View;
|
|
|
16
16
|
import android.view.ViewGroup;
|
|
17
17
|
import android.widget.SeekBar;
|
|
18
18
|
import androidx.annotation.Nullable;
|
|
19
|
-
import androidx.core.view.AccessibilityDelegateCompat;
|
|
20
19
|
import androidx.core.view.ViewCompat;
|
|
21
20
|
import androidx.core.view.accessibility.AccessibilityNodeInfoCompat.AccessibilityActionCompat;
|
|
22
21
|
import com.facebook.react.bridge.ReactContext;
|
|
@@ -24,6 +23,7 @@ import com.facebook.react.bridge.ReadableMap;
|
|
|
24
23
|
import com.facebook.react.common.MapBuilder;
|
|
25
24
|
import com.facebook.react.uimanager.LayoutShadowNode;
|
|
26
25
|
import com.facebook.react.uimanager.PixelUtil;
|
|
26
|
+
import com.facebook.react.uimanager.ReactAccessibilityDelegate;
|
|
27
27
|
import com.facebook.react.uimanager.SimpleViewManager;
|
|
28
28
|
import com.facebook.react.uimanager.ThemedReactContext;
|
|
29
29
|
import com.facebook.react.uimanager.UIManagerHelper;
|
|
@@ -149,7 +149,7 @@ public class ReactSliderManager extends SimpleViewManager<ReactSlider>
|
|
|
149
149
|
@Override
|
|
150
150
|
protected ReactSlider createViewInstance(ThemedReactContext context) {
|
|
151
151
|
final ReactSlider slider = new ReactSlider(context, null, STYLE);
|
|
152
|
-
ViewCompat.setAccessibilityDelegate(slider,
|
|
152
|
+
ViewCompat.setAccessibilityDelegate(slider, new ReactSliderAccessibilityDelegate());
|
|
153
153
|
return slider;
|
|
154
154
|
}
|
|
155
155
|
|
|
@@ -278,8 +278,8 @@ public class ReactSliderManager extends SimpleViewManager<ReactSlider>
|
|
|
278
278
|
return mDelegate;
|
|
279
279
|
}
|
|
280
280
|
|
|
281
|
-
protected
|
|
282
|
-
private
|
|
281
|
+
protected class ReactSliderAccessibilityDelegate extends ReactAccessibilityDelegate {
|
|
282
|
+
private boolean isSliderAction(int action) {
|
|
283
283
|
return (action == AccessibilityActionCompat.ACTION_SCROLL_FORWARD.getId())
|
|
284
284
|
|| (action == AccessibilityActionCompat.ACTION_SCROLL_BACKWARD.getId())
|
|
285
285
|
|| (action == AccessibilityActionCompat.ACTION_SET_PROGRESS.getId());
|
|
@@ -297,7 +297,4 @@ public class ReactSliderManager extends SimpleViewManager<ReactSlider>
|
|
|
297
297
|
return rv;
|
|
298
298
|
}
|
|
299
299
|
};
|
|
300
|
-
|
|
301
|
-
protected static ReactSliderAccessibilityDelegate sAccessibilityDelegate =
|
|
302
|
-
new ReactSliderAccessibilityDelegate();
|
|
303
300
|
}
|
|
@@ -26,6 +26,6 @@ rn_android_library(
|
|
|
26
26
|
react_native_target("java/com/facebook/react/views/scroll:scroll"),
|
|
27
27
|
],
|
|
28
28
|
exported_deps = [
|
|
29
|
-
react_native_root_target("
|
|
29
|
+
react_native_root_target(":generated_components_java-FBReactNativeComponentSpec"),
|
|
30
30
|
],
|
|
31
31
|
)
|
|
@@ -24,6 +24,6 @@ rn_android_library(
|
|
|
24
24
|
react_native_target("java/com/facebook/react/common:common"),
|
|
25
25
|
react_native_target("java/com/facebook/react/uimanager:uimanager"),
|
|
26
26
|
react_native_target("java/com/facebook/react/uimanager/annotations:annotations"),
|
|
27
|
-
react_native_root_target("
|
|
27
|
+
react_native_root_target(":generated_components_java-FBReactNativeComponentSpec"),
|
|
28
28
|
],
|
|
29
29
|
)
|
package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java
CHANGED
|
@@ -110,10 +110,6 @@ public abstract class ReactTextAnchorViewManager<T extends View, C extends React
|
|
|
110
110
|
view.setHyphenationFrequency(Layout.HYPHENATION_FREQUENCY_NONE);
|
|
111
111
|
} else if (frequency.equals("full")) {
|
|
112
112
|
view.setHyphenationFrequency(Layout.HYPHENATION_FREQUENCY_FULL);
|
|
113
|
-
} else if (frequency.equals("balanced")) {
|
|
114
|
-
view.setHyphenationFrequency(Layout.BREAK_STRATEGY_BALANCED);
|
|
115
|
-
} else if (frequency.equals("high")) {
|
|
116
|
-
view.setHyphenationFrequency(Layout.BREAK_STRATEGY_HIGH_QUALITY);
|
|
117
113
|
} else if (frequency.equals("normal")) {
|
|
118
114
|
view.setHyphenationFrequency(Layout.HYPHENATION_FREQUENCY_NORMAL);
|
|
119
115
|
} else {
|
|
@@ -21,7 +21,7 @@ import androidx.annotation.Nullable;
|
|
|
21
21
|
import com.facebook.infer.annotation.Assertions;
|
|
22
22
|
import com.facebook.react.bridge.Arguments;
|
|
23
23
|
import com.facebook.react.bridge.ReactNoCrashSoftException;
|
|
24
|
-
import com.facebook.react.bridge.
|
|
24
|
+
import com.facebook.react.bridge.ReactSoftExceptionLogger;
|
|
25
25
|
import com.facebook.react.bridge.WritableArray;
|
|
26
26
|
import com.facebook.react.bridge.WritableMap;
|
|
27
27
|
import com.facebook.react.uimanager.NativeViewHierarchyOptimizer;
|
|
@@ -32,6 +32,7 @@ import com.facebook.react.uimanager.ThemedReactContext;
|
|
|
32
32
|
import com.facebook.react.uimanager.UIViewOperationQueue;
|
|
33
33
|
import com.facebook.react.uimanager.annotations.ReactProp;
|
|
34
34
|
import com.facebook.react.uimanager.events.RCTEventEmitter;
|
|
35
|
+
import com.facebook.yoga.YogaBaselineFunction;
|
|
35
36
|
import com.facebook.yoga.YogaConstants;
|
|
36
37
|
import com.facebook.yoga.YogaDirection;
|
|
37
38
|
import com.facebook.yoga.YogaMeasureFunction;
|
|
@@ -116,7 +117,7 @@ public class ReactTextShadowNode extends ReactBaseTextShadowNode {
|
|
|
116
117
|
.getJSModule(RCTEventEmitter.class)
|
|
117
118
|
.receiveEvent(getReactTag(), "topTextLayout", event);
|
|
118
119
|
} else {
|
|
119
|
-
|
|
120
|
+
ReactSoftExceptionLogger.logSoftException(
|
|
120
121
|
"ReactTextShadowNode",
|
|
121
122
|
new ReactNoCrashSoftException("Cannot get RCTEventEmitter, no CatalystInstance"));
|
|
122
123
|
}
|
|
@@ -159,6 +160,20 @@ public class ReactTextShadowNode extends ReactBaseTextShadowNode {
|
|
|
159
160
|
}
|
|
160
161
|
};
|
|
161
162
|
|
|
163
|
+
private final YogaBaselineFunction mTextBaselineFunction =
|
|
164
|
+
new YogaBaselineFunction() {
|
|
165
|
+
@Override
|
|
166
|
+
public float baseline(YogaNode node, float width, float height) {
|
|
167
|
+
Spannable text =
|
|
168
|
+
Assertions.assertNotNull(
|
|
169
|
+
mPreparedSpannableText,
|
|
170
|
+
"Spannable element has not been prepared in onBeforeLayout");
|
|
171
|
+
|
|
172
|
+
Layout layout = measureSpannedText(text, width, YogaMeasureMode.EXACTLY);
|
|
173
|
+
return layout.getLineBaseline(layout.getLineCount() - 1);
|
|
174
|
+
}
|
|
175
|
+
};
|
|
176
|
+
|
|
162
177
|
public ReactTextShadowNode() {
|
|
163
178
|
this(null);
|
|
164
179
|
}
|
|
@@ -171,6 +186,7 @@ public class ReactTextShadowNode extends ReactBaseTextShadowNode {
|
|
|
171
186
|
private void initMeasureFunction() {
|
|
172
187
|
if (!isVirtual()) {
|
|
173
188
|
setMeasureFunction(mTextMeasureFunction);
|
|
189
|
+
setBaselineFunction(mTextBaselineFunction);
|
|
174
190
|
}
|
|
175
191
|
}
|
|
176
192
|
|
|
@@ -327,6 +343,11 @@ public class ReactTextShadowNode extends ReactBaseTextShadowNode {
|
|
|
327
343
|
mJustificationMode);
|
|
328
344
|
uiViewOperationQueue.enqueueUpdateExtraData(getReactTag(), reactTextUpdate);
|
|
329
345
|
}
|
|
346
|
+
|
|
347
|
+
if (mAdjustsFontSizeToFit) {
|
|
348
|
+
// Nodes with `adjustsFontSizeToFit` enabled need to be remeasured on every relayout.
|
|
349
|
+
markUpdated();
|
|
350
|
+
}
|
|
330
351
|
}
|
|
331
352
|
|
|
332
353
|
@ReactProp(name = "onTextLayout")
|
|
@@ -56,6 +56,7 @@ public class ReactTextView extends AppCompatTextView implements ReactCompoundVie
|
|
|
56
56
|
private boolean mAdjustsFontSizeToFit = false;
|
|
57
57
|
private int mLinkifyMaskType = 0;
|
|
58
58
|
private boolean mNotifyOnInlineViewLayout;
|
|
59
|
+
private boolean mTextIsSelectable = false;
|
|
59
60
|
|
|
60
61
|
private ReactViewBackgroundManager mReactBackgroundManager;
|
|
61
62
|
private Spannable mSpanned;
|
|
@@ -433,9 +434,16 @@ public class ReactTextView extends AppCompatTextView implements ReactCompoundVie
|
|
|
433
434
|
}
|
|
434
435
|
}
|
|
435
436
|
|
|
437
|
+
@Override
|
|
438
|
+
public void setTextIsSelectable(boolean selectable) {
|
|
439
|
+
mTextIsSelectable = selectable;
|
|
440
|
+
super.setTextIsSelectable(selectable);
|
|
441
|
+
}
|
|
442
|
+
|
|
436
443
|
@Override
|
|
437
444
|
public void onAttachedToWindow() {
|
|
438
445
|
super.onAttachedToWindow();
|
|
446
|
+
setTextIsSelectable(mTextIsSelectable);
|
|
439
447
|
if (mContainsImages && getText() instanceof Spanned) {
|
|
440
448
|
Spanned text = (Spanned) getText();
|
|
441
449
|
TextInlineImageSpan[] spans = text.getSpans(0, text.length(), TextInlineImageSpan.class);
|
|
@@ -68,9 +68,10 @@ public class TextAttributeProps {
|
|
|
68
68
|
private static final int DEFAULT_TEXT_SHADOW_COLOR = 0x55000000;
|
|
69
69
|
private static final int DEFAULT_JUSTIFICATION_MODE =
|
|
70
70
|
(Build.VERSION.SDK_INT < Build.VERSION_CODES.O) ? 0 : Layout.JUSTIFICATION_MODE_NONE;
|
|
71
|
-
|
|
72
71
|
private static final int DEFAULT_BREAK_STRATEGY =
|
|
73
72
|
(Build.VERSION.SDK_INT < Build.VERSION_CODES.M) ? 0 : Layout.BREAK_STRATEGY_HIGH_QUALITY;
|
|
73
|
+
private static final int DEFAULT_HYPHENATION_FREQUENCY =
|
|
74
|
+
(Build.VERSION.SDK_INT < Build.VERSION_CODES.M) ? 0 : Layout.HYPHENATION_FREQUENCY_NONE;
|
|
74
75
|
|
|
75
76
|
protected float mLineHeight = Float.NaN;
|
|
76
77
|
protected boolean mIsColorSet = false;
|
|
@@ -568,4 +569,22 @@ public class TextAttributeProps {
|
|
|
568
569
|
}
|
|
569
570
|
return androidTextBreakStrategy;
|
|
570
571
|
}
|
|
572
|
+
|
|
573
|
+
public static int getHyphenationFrequency(@Nullable String hyphenationFrequency) {
|
|
574
|
+
int androidHyphenationFrequency = DEFAULT_HYPHENATION_FREQUENCY;
|
|
575
|
+
if (hyphenationFrequency != null) {
|
|
576
|
+
switch (hyphenationFrequency) {
|
|
577
|
+
case "none":
|
|
578
|
+
androidHyphenationFrequency = Layout.HYPHENATION_FREQUENCY_NONE;
|
|
579
|
+
break;
|
|
580
|
+
case "normal":
|
|
581
|
+
androidHyphenationFrequency = Layout.HYPHENATION_FREQUENCY_NORMAL;
|
|
582
|
+
break;
|
|
583
|
+
default:
|
|
584
|
+
androidHyphenationFrequency = Layout.HYPHENATION_FREQUENCY_FULL;
|
|
585
|
+
break;
|
|
586
|
+
}
|
|
587
|
+
}
|
|
588
|
+
return androidHyphenationFrequency;
|
|
589
|
+
}
|
|
571
590
|
}
|
|
@@ -25,7 +25,7 @@ import androidx.annotation.NonNull;
|
|
|
25
25
|
import androidx.annotation.Nullable;
|
|
26
26
|
import com.facebook.common.logging.FLog;
|
|
27
27
|
import com.facebook.react.bridge.ReactNoCrashSoftException;
|
|
28
|
-
import com.facebook.react.bridge.
|
|
28
|
+
import com.facebook.react.bridge.ReactSoftExceptionLogger;
|
|
29
29
|
import com.facebook.react.bridge.ReadableArray;
|
|
30
30
|
import com.facebook.react.bridge.ReadableMap;
|
|
31
31
|
import com.facebook.react.bridge.ReadableNativeMap;
|
|
@@ -64,6 +64,7 @@ public class TextLayoutManager {
|
|
|
64
64
|
private static final boolean DEFAULT_INCLUDE_FONT_PADDING = true;
|
|
65
65
|
private static final String INCLUDE_FONT_PADDING_KEY = "includeFontPadding";
|
|
66
66
|
private static final String TEXT_BREAK_STRATEGY_KEY = "textBreakStrategy";
|
|
67
|
+
private static final String HYPHENATION_FREQUENCY_KEY = "android_hyphenationFrequency";
|
|
67
68
|
private static final String MAXIMUM_NUMBER_OF_LINES_KEY = "maximumNumberOfLines";
|
|
68
69
|
private static final LruCache<ReadableNativeMap, Spannable> sSpannableCache =
|
|
69
70
|
new LruCache<>(spannableCacheSize);
|
|
@@ -250,7 +251,8 @@ public class TextLayoutManager {
|
|
|
250
251
|
float width,
|
|
251
252
|
YogaMeasureMode widthYogaMeasureMode,
|
|
252
253
|
boolean includeFontPadding,
|
|
253
|
-
int textBreakStrategy
|
|
254
|
+
int textBreakStrategy,
|
|
255
|
+
int hyphenationFrequency) {
|
|
254
256
|
Layout layout;
|
|
255
257
|
int spanLength = text.length();
|
|
256
258
|
boolean unconstrainedWidth = widthYogaMeasureMode == YogaMeasureMode.UNDEFINED || width < 0;
|
|
@@ -281,14 +283,13 @@ public class TextLayoutManager {
|
|
|
281
283
|
.setLineSpacing(0.f, 1.f)
|
|
282
284
|
.setIncludePad(includeFontPadding)
|
|
283
285
|
.setBreakStrategy(textBreakStrategy)
|
|
284
|
-
.setHyphenationFrequency(
|
|
286
|
+
.setHyphenationFrequency(hyphenationFrequency)
|
|
285
287
|
.build();
|
|
286
288
|
}
|
|
287
|
-
|
|
288
289
|
} else if (boring != null && (unconstrainedWidth || boring.width <= width)) {
|
|
289
290
|
int boringLayoutWidth = boring.width;
|
|
290
291
|
if (boring.width < 0) {
|
|
291
|
-
|
|
292
|
+
ReactSoftExceptionLogger.logSoftException(
|
|
292
293
|
TAG, new ReactNoCrashSoftException("Text width is invalid: " + boring.width));
|
|
293
294
|
boringLayoutWidth = 0;
|
|
294
295
|
}
|
|
@@ -325,7 +326,7 @@ public class TextLayoutManager {
|
|
|
325
326
|
.setLineSpacing(0.f, 1.f)
|
|
326
327
|
.setIncludePad(includeFontPadding)
|
|
327
328
|
.setBreakStrategy(textBreakStrategy)
|
|
328
|
-
.setHyphenationFrequency(
|
|
329
|
+
.setHyphenationFrequency(hyphenationFrequency);
|
|
329
330
|
|
|
330
331
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
|
|
331
332
|
builder.setUseLineSpacingFromFallbacks(true);
|
|
@@ -378,6 +379,9 @@ public class TextLayoutManager {
|
|
|
378
379
|
paragraphAttributes.hasKey(INCLUDE_FONT_PADDING_KEY)
|
|
379
380
|
? paragraphAttributes.getBoolean(INCLUDE_FONT_PADDING_KEY)
|
|
380
381
|
: DEFAULT_INCLUDE_FONT_PADDING;
|
|
382
|
+
int hyphenationFrequency =
|
|
383
|
+
TextAttributeProps.getHyphenationFrequency(
|
|
384
|
+
paragraphAttributes.getString(HYPHENATION_FREQUENCY_KEY));
|
|
381
385
|
|
|
382
386
|
if (text == null) {
|
|
383
387
|
throw new IllegalStateException("Spannable element has not been prepared in onBeforeLayout");
|
|
@@ -387,7 +391,13 @@ public class TextLayoutManager {
|
|
|
387
391
|
|
|
388
392
|
Layout layout =
|
|
389
393
|
createLayout(
|
|
390
|
-
text,
|
|
394
|
+
text,
|
|
395
|
+
boring,
|
|
396
|
+
width,
|
|
397
|
+
widthYogaMeasureMode,
|
|
398
|
+
includeFontPadding,
|
|
399
|
+
textBreakStrategy,
|
|
400
|
+
hyphenationFrequency);
|
|
391
401
|
|
|
392
402
|
int maximumNumberOfLines =
|
|
393
403
|
paragraphAttributes.hasKey(MAXIMUM_NUMBER_OF_LINES_KEY)
|
|
@@ -493,16 +503,16 @@ public class TextLayoutManager {
|
|
|
493
503
|
|
|
494
504
|
// The attachment array returns the positions of each of the attachments as
|
|
495
505
|
attachmentsPositions[attachmentPosition] =
|
|
496
|
-
PixelUtil.
|
|
506
|
+
PixelUtil.toDIPFromPixel(placeholderTopPosition);
|
|
497
507
|
attachmentsPositions[attachmentPosition + 1] =
|
|
498
|
-
PixelUtil.
|
|
508
|
+
PixelUtil.toDIPFromPixel(placeholderLeftPosition);
|
|
499
509
|
attachmentIndex++;
|
|
500
510
|
}
|
|
501
511
|
}
|
|
502
512
|
}
|
|
503
513
|
|
|
504
|
-
float widthInSP = PixelUtil.
|
|
505
|
-
float heightInSP = PixelUtil.
|
|
514
|
+
float widthInSP = PixelUtil.toDIPFromPixel(calculatedWidth);
|
|
515
|
+
float heightInSP = PixelUtil.toDIPFromPixel(calculatedHeight);
|
|
506
516
|
|
|
507
517
|
if (ENABLE_MEASURE_LOGGING) {
|
|
508
518
|
FLog.e(
|
|
@@ -539,10 +549,19 @@ public class TextLayoutManager {
|
|
|
539
549
|
paragraphAttributes.hasKey(INCLUDE_FONT_PADDING_KEY)
|
|
540
550
|
? paragraphAttributes.getBoolean(INCLUDE_FONT_PADDING_KEY)
|
|
541
551
|
: DEFAULT_INCLUDE_FONT_PADDING;
|
|
552
|
+
int hyphenationFrequency =
|
|
553
|
+
TextAttributeProps.getTextBreakStrategy(
|
|
554
|
+
paragraphAttributes.getString(HYPHENATION_FREQUENCY_KEY));
|
|
542
555
|
|
|
543
556
|
Layout layout =
|
|
544
557
|
createLayout(
|
|
545
|
-
text,
|
|
558
|
+
text,
|
|
559
|
+
boring,
|
|
560
|
+
width,
|
|
561
|
+
YogaMeasureMode.EXACTLY,
|
|
562
|
+
includeFontPadding,
|
|
563
|
+
textBreakStrategy,
|
|
564
|
+
hyphenationFrequency);
|
|
546
565
|
return FontMetricsUtil.getFontMetrics(text, layout, sTextPaintInstance, context);
|
|
547
566
|
}
|
|
548
567
|
|