react-native-tvos 0.77.0-0rc5 → 0.78.0-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Libraries/Animated/animations/Animation.js +22 -1
- package/Libraries/Animated/animations/DecayAnimation.js +1 -0
- package/Libraries/Animated/animations/SpringAnimation.js +1 -0
- package/Libraries/Animated/animations/TimingAnimation.js +1 -0
- package/Libraries/Animated/nodes/AnimatedAddition.js +9 -2
- package/Libraries/Animated/nodes/AnimatedColor.js +4 -1
- package/Libraries/Animated/nodes/AnimatedDiffClamp.js +10 -2
- package/Libraries/Animated/nodes/AnimatedDivision.js +9 -2
- package/Libraries/Animated/nodes/AnimatedInterpolation.js +5 -1
- package/Libraries/Animated/nodes/AnimatedModulo.js +5 -2
- package/Libraries/Animated/nodes/AnimatedMultiplication.js +9 -2
- package/Libraries/Animated/nodes/AnimatedNode.js +25 -46
- package/Libraries/Animated/nodes/AnimatedObject.js +9 -2
- package/Libraries/Animated/nodes/AnimatedProps.js +5 -1
- package/Libraries/Animated/nodes/AnimatedStyle.js +5 -1
- package/Libraries/Animated/nodes/AnimatedSubtraction.js +9 -2
- package/Libraries/Animated/nodes/AnimatedTracking.js +5 -1
- package/Libraries/Animated/nodes/AnimatedTransform.js +5 -1
- package/Libraries/Animated/nodes/AnimatedValue.js +63 -4
- package/Libraries/Animated/nodes/AnimatedValueXY.js +3 -1
- package/Libraries/Animated/useAnimatedProps.js +14 -56
- package/Libraries/AppDelegate/RCTAppDelegate.h +6 -48
- package/Libraries/AppDelegate/RCTAppDelegate.mm +5 -230
- package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.h +21 -0
- package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.mm +123 -0
- package/Libraries/AppDelegate/RCTReactNativeFactory.h +98 -0
- package/Libraries/AppDelegate/RCTReactNativeFactory.mm +266 -0
- package/Libraries/AppDelegate/RCTRootViewFactory.mm +1 -1
- package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +0 -1
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.d.ts +1 -1
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +3 -1
- package/Libraries/Components/LayoutConformance/LayoutConformance.d.ts +21 -0
- package/Libraries/Components/LayoutConformance/LayoutConformance.js +59 -0
- package/Libraries/Components/LayoutConformance/LayoutConformanceNativeComponent.js +29 -0
- package/Libraries/Components/Pressable/Pressable.d.ts +1 -1
- package/Libraries/Components/TV/TVFocusGuideView.js +0 -1
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +1 -0
- package/Libraries/Components/TextInput/TextInput.d.ts +5 -0
- package/Libraries/Components/TextInput/TextInput.flow.js +6 -0
- package/Libraries/Components/TextInput/TextInput.js +6 -0
- package/Libraries/Components/View/ViewPropTypes.d.ts +8 -7
- package/Libraries/Components/View/ViewPropTypes.js +0 -9
- package/Libraries/Core/ReactNativeVersion.js +2 -2
- package/Libraries/Core/setUpBatchedBridge.js +1 -16
- package/Libraries/Core/setUpDeveloperTools.js +2 -3
- package/Libraries/EventEmitter/RCTEventEmitter.js +2 -6
- package/Libraries/Image/AssetSourceResolver.js +11 -0
- package/Libraries/Image/RCTImageLoader.mm +9 -1
- package/Libraries/Image/RCTImageView.mm +3 -3
- package/Libraries/Inspector/BorderBox.js +26 -14
- package/Libraries/Inspector/BoxInspector.js +60 -42
- package/Libraries/Inspector/ElementBox.js +55 -48
- package/Libraries/Inspector/StyleInspector.js +36 -30
- package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -2
- package/Libraries/Lists/FlatList.d.ts +1 -1
- package/Libraries/Modal/Modal.js +2 -0
- package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.mm +1 -1
- package/Libraries/NativeComponent/BaseViewConfig.android.js +0 -2
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +0 -2
- package/Libraries/Network/RCTNetworking.android.js +24 -16
- package/Libraries/Network/RCTNetworking.ios.js +1 -46
- package/Libraries/Network/RCTNetworking.js.flow +1 -46
- package/Libraries/Network/RCTNetworkingEventDefinitions.flow.js +57 -0
- package/Libraries/Pressability/Pressability.js +2 -2
- package/Libraries/ReactNative/UIManagerProperties.js +3 -1
- package/Libraries/Renderer/implementations/ReactFabric-dev.js +15829 -26461
- package/Libraries/Renderer/implementations/ReactFabric-prod.js +3907 -2560
- package/Libraries/Renderer/implementations/ReactFabric-profiling.js +4399 -2878
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +16103 -26908
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +4034 -2695
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +4535 -3045
- package/Libraries/Renderer/shims/ReactNativeTypes.js +5 -6
- package/Libraries/StyleSheet/processTransform.js +6 -0
- package/Libraries/Text/Text/NSTextStorage+FontScaling.m +9 -0
- package/Libraries/Text/Text.d.ts +6 -1
- package/Libraries/Text/TextInput/Multiline/RCTUITextView.h +2 -0
- package/Libraries/Text/TextInput/Multiline/RCTUITextView.mm +26 -0
- package/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h +2 -0
- package/Libraries/Text/TextInput/RCTBaseTextInputView.mm +26 -1
- package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm +2 -0
- package/Libraries/Text/TextInput/Singleline/RCTUITextField.h +1 -0
- package/Libraries/Text/TextInput/Singleline/RCTUITextField.mm +26 -0
- package/Libraries/Text/TextProps.js +2 -2
- package/Libraries/Utilities/BackHandler.android.js +5 -4
- package/Libraries/Utilities/BackHandler.ios.js +3 -4
- package/Libraries/Utilities/HMRClient.js +0 -28
- package/Libraries/Utilities/HMRClientProdShim.js +0 -1
- package/README-core.md +2 -2
- package/React/Base/RCTConvert.mm +3 -1
- package/React/Base/RCTVersion.m +2 -2
- package/React/CoreModules/RCTDevSettings.h +0 -1
- package/React/CoreModules/RCTDeviceInfo.mm +4 -0
- package/React/CxxLogUtils/RCTDefaultCxxLogFunction.mm +3 -5
- package/React/DevSupport/RCTInspectorDevServerHelper.mm +1 -6
- package/React/DevSupport/RCTPausedInDebuggerOverlayController.mm +3 -5
- package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec-generated.mm +0 -24
- package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec.h +0 -28
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI-generated.cpp +90 -57
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +241 -104
- package/React/Fabric/Mounting/ComponentViews/InputAccessory/RCTInputAccessoryContentView.mm +0 -5
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.mm +39 -10
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.mm +3 -3
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +107 -34
- package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +5 -0
- package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +1 -0
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +12 -4
- package/React/Fabric/Mounting/RCTComponentViewFactory.mm +3 -0
- package/React/Fabric/Mounting/RCTMountingManager.mm +6 -9
- package/React/Fabric/RCTScheduler.mm +1 -1
- package/React/I18n/strings/da.lproj/fbt_language_pack.bin +0 -0
- package/React/Modules/RCTUIManager.mm +1 -2
- package/React/React-RCTFBReactNativeSpec.podspec +1 -0
- package/React/React-RCTFabric.podspec +3 -2
- package/React/Tests/Text/RCTParagraphComponentViewTests.mm +12 -12
- package/React/Views/RCTComponentData.mm +1 -5
- package/React/Views/RCTLayout.m +3 -0
- package/React/Views/RCTShadowView.h +3 -3
- package/React/Views/RCTShadowView.m +52 -20
- package/React/Views/RCTTVView.m +5 -2
- package/React/Views/RCTView.m +6 -2
- package/React/Views/RCTViewManager.m +0 -7
- package/React/Views/ScrollView/RCTScrollView.m +109 -45
- package/React-Core.podspec +1 -1
- package/ReactAndroid/api/ReactAndroid.api +123 -227
- package/ReactAndroid/build.gradle.kts +8 -13
- package/ReactAndroid/cmake-utils/ReactNative-application.cmake +13 -3
- package/ReactAndroid/cmake-utils/default-app-setup/OnLoad.cpp +2 -0
- package/ReactAndroid/external-artifacts/build.gradle.kts +5 -5
- package/ReactAndroid/gradle.properties +3 -3
- package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/{HermesMemoryDumper.java → HermesMemoryDumper.kt} +5 -5
- package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/{HermesSamplingProfiler.java → HermesSamplingProfiler.kt} +8 -10
- package/ReactAndroid/src/main/java/com/facebook/react/DebugCorePackage.java +12 -59
- package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +8 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +8 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.java +37 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +12 -1
- package/ReactAndroid/src/main/java/com/facebook/react/{ReactPackageLogger.java → ReactPackageLogger.kt} +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.kt +8 -8
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.kt +6 -0
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.kt +5 -3
- package/ReactAndroid/src/main/java/com/facebook/react/common/network/OkHttpCallUtil.kt +4 -8
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactHost.kt +11 -5
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactHostDelegate.kt +0 -7
- package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactNativeHost.kt +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.kt +6 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +11 -23
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +3 -30
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/HMRClient.java +4 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorFlags.kt +2 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.java +4 -4
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +21 -26
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerBinding.kt +1 -14
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerProviderImpl.java +2 -11
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.kt +88 -0
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.kt +6 -6
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +39 -8
- package/ReactAndroid/src/main/java/com/facebook/react/interfaces/exceptionmanager/ReactJsExceptionHandler.kt +7 -7
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +21 -21
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +36 -36
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +8 -8
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +10 -10
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +40 -40
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +8 -8
- package/ReactAndroid/src/main/java/com/facebook/react/internal/interop/InteropEventEmitter.kt +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskConfig.kt +55 -0
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.kt +185 -0
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/{HeadlessJsTaskEventListener.java → HeadlessJsTaskEventListener.kt} +5 -6
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskRetryPolicy.kt +20 -0
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/LinearCountingRetryPolicy.kt +4 -4
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/NoRetryPolicy.kt +7 -8
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +8 -5
- package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/FrescoModule.kt +11 -17
- package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/ReactOkHttpNetworkFetcher.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/CookieJarContainer.kt +16 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.kt +107 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java +18 -19
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ReactCookieJarContainer.kt +48 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.kt +397 -0
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostDelegate.kt +0 -10
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.java +8 -8
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/hermes/HermesInstance.kt +4 -10
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +13 -12
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerDelegate.kt +15 -12
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{ComponentNameResolver.java → ComponentNameResolver.kt} +4 -5
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/GuardedFrameCallback.kt +5 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +0 -5
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.kt +21 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.kt +18 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{RootView.java → RootView.kt} +11 -12
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewManager.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{UIBlock.java → UIBlock.kt} +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +2 -5
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +25 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerDelegate.kt +1 -1
- package/{Libraries/AppDelegate/RCTAppDelegate+Protected.h → ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerWithGeneratedInterface.kt} +3 -8
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.kt +12 -5
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundDrawable.kt +46 -80
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BorderDrawable.kt +5 -5
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/CSSBackgroundDrawable.java +5 -5
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/{BatchEventDispatchedListener.java → BatchEventDispatchedListener.kt} +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventCategoryDef.kt +46 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcher.kt +40 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherImpl.java +2 -6
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherListener.kt +19 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherProvider.kt +23 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +241 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.kt +193 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.kt +44 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.kt +37 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.kt +130 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEventCoalescingKeyHelper.kt +77 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.kt +196 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderRadiusStyle.kt +16 -17
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.kt +5 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +56 -3
- package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarContainerView.kt +11 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/{FpsListener.java → FpsListener.kt} +4 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +16 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewAccessibilityDelegate.kt +136 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.kt +152 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchShadowNode.kt +52 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +1 -7
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +16 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +8 -13
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.kt +50 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ShadowStyleSpan.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +1 -9
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.kt +111 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +91 -20
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +14 -2
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNative.java +22 -1
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java +43 -1
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +86 -2
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaProps.java +44 -2
- package/ReactAndroid/src/main/java/com/facebook/yoga/YogaUnit.java +7 -1
- package/ReactAndroid/src/main/jni/CMakeLists.txt +5 -6
- package/ReactAndroid/src/main/jni/first-party/yogajni/CMakeLists.txt +6 -1
- package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +96 -11
- package/ReactAndroid/src/main/jni/react/devsupport/JInspectorFlags.cpp +9 -0
- package/ReactAndroid/src/main/jni/react/devsupport/JInspectorFlags.h +1 -0
- package/ReactAndroid/src/main/jni/react/fabric/CMakeLists.txt +0 -3
- package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +3 -0
- package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +41 -25
- package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +0 -2
- package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +63 -91
- package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +1 -7
- package/ReactAndroid/src/main/jni/react/fabric/MountItem.cpp +9 -9
- package/ReactAndroid/src/main/jni/react/fabric/MountItem.h +6 -10
- package/ReactAndroid/src/main/jni/react/fabric/OnLoad.cpp +0 -2
- package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.cpp +4 -0
- package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.h +1 -0
- package/ReactAndroid/src/main/jni/react/featureflags/CMakeLists.txt +0 -1
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +49 -49
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +11 -11
- package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/OnLoad.cpp +1 -4
- package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +0 -1
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +0 -1
- package/ReactAndroid/src/main/jni/react/jni/JSLogging.cpp +4 -9
- package/ReactAndroid/src/main/jni/react/jni/JSLogging.h +0 -4
- package/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.cpp +3 -4
- package/ReactAndroid/src/main/jni/react/jni/ProxyExecutor.cpp +3 -4
- package/ReactAndroid/src/main/jni/react/jni/WritableNativeArray.cpp +6 -0
- package/ReactAndroid/src/main/jni/react/jni/WritableNativeArray.h +1 -0
- package/ReactAndroid/src/main/jni/react/jni/WritableNativeMap.cpp +6 -0
- package/ReactAndroid/src/main/jni/react/jni/WritableNativeMap.h +1 -0
- package/ReactAndroid/src/main/jni/react/jscexecutor/OnLoad.cpp +3 -7
- package/ReactAndroid/src/main/jni/react/mapbuffer/CMakeLists.txt +0 -2
- package/ReactAndroid/src/main/jni/react/reactnativeblob/CMakeLists.txt +0 -1
- package/ReactAndroid/src/main/jni/react/reactperflogger/CMakeLists.txt +0 -1
- package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/JHermesInstance.cpp +2 -8
- package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/JHermesInstance.h +2 -8
- package/ReactAndroid/src/main/jni/react/runtime/jni/CMakeLists.txt +0 -1
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactExceptionManager.cpp +18 -17
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactExceptionManager.h +1 -1
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +1 -1
- package/ReactAndroid/src/main/jni/react/turbomodule/CMakeLists.txt +0 -2
- package/ReactAndroid/src/main/jni/react/uimanager/CMakeLists.txt +0 -1
- package/ReactAndroid/src/main/res/views/view/values/ids.xml +5 -0
- package/ReactCommon/React-Fabric.podspec +8 -0
- package/ReactCommon/React-FabricComponents.podspec +2 -2
- package/ReactCommon/React-FabricImage.podspec +4 -1
- package/ReactCommon/cxxreact/CxxNativeModule.cpp +3 -3
- package/ReactCommon/cxxreact/Instance.cpp +6 -6
- package/ReactCommon/cxxreact/JSBigString.cpp +1 -1
- package/ReactCommon/cxxreact/JSExecutor.cpp +4 -2
- package/ReactCommon/cxxreact/ModuleRegistry.cpp +6 -6
- package/ReactCommon/cxxreact/NativeToJsBridge.cpp +3 -3
- package/ReactCommon/cxxreact/ReactNativeVersion.h +2 -2
- package/ReactCommon/cxxreact/SystraceSection.h +8 -141
- package/ReactCommon/cxxreact/TraceSection.h +181 -0
- package/ReactCommon/cxxreact/tests/jsbigstring.cpp +19 -0
- package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +2 -2
- package/ReactCommon/jsc/JSCRuntime.cpp +0 -2
- package/ReactCommon/jsc/React-jsc.podspec +1 -1
- package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +27 -19
- package/ReactCommon/jserrorhandler/JsErrorHandler.h +5 -3
- package/ReactCommon/jserrorhandler/StackTraceParser.cpp +16 -16
- package/ReactCommon/jserrorhandler/StackTraceParser.h +1 -1
- package/ReactCommon/jserrorhandler/tests/StackTraceParserTest.cpp +252 -246
- package/ReactCommon/jsi/jsi/CMakeLists.txt +0 -3
- package/ReactCommon/jsi/jsi/JSIDynamic.cpp +1 -1
- package/ReactCommon/jsi/jsi/JSIDynamic.h +1 -1
- package/ReactCommon/jsi/jsi/decorator.h +61 -0
- package/ReactCommon/jsi/jsi/jsi-inl.h +4 -0
- package/ReactCommon/jsi/jsi/jsi.cpp +37 -0
- package/ReactCommon/jsi/jsi/jsi.h +81 -0
- package/ReactCommon/jsi/jsi/test/testlib.cpp +88 -0
- package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +9 -9
- package/ReactCommon/jsinspector-modern/CMakeLists.txt +1 -1
- package/ReactCommon/jsinspector-modern/HostAgent.cpp +3 -7
- package/ReactCommon/jsinspector-modern/HostTarget.cpp +22 -1
- package/ReactCommon/jsinspector-modern/HostTarget.h +1 -1
- package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +19 -4
- package/ReactCommon/jsinspector-modern/InspectorFlags.h +14 -0
- package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +21 -10
- package/ReactCommon/jsinspector-modern/TracingAgent.cpp +12 -11
- package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.cpp +2 -16
- package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.cpp +14 -14
- package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.h +7 -13
- package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestGenericEngineAdapter.cpp +1 -1
- package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestHermesEngineAdapter.cpp +1 -3
- package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.cpp +3 -3
- package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.h +1 -1
- package/ReactCommon/jsinspector-modern/tracing/CMakeLists.txt +26 -0
- package/ReactCommon/jsinspector-modern/tracing/CdpTracing.h +21 -0
- package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.cpp +187 -0
- package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.h +126 -0
- package/ReactCommon/jsinspector-modern/tracing/React-jsinspectortracing.podspec +56 -0
- package/ReactCommon/react/featureflags/CMakeLists.txt +3 -0
- package/ReactCommon/react/featureflags/React-featureflags.podspec +7 -0
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +15 -15
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +18 -18
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +88 -88
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +9 -9
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +17 -17
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +454 -0
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +5 -5
- package/ReactCommon/react/featureflags/tests/ReactNativeFeatureFlagsDynamicProviderTest.cpp +78 -0
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +2 -3
- package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +3 -3
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +13 -4
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.h +1 -0
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +19 -11
- package/ReactCommon/react/nativemodule/cputime/CPUTime.h +55 -0
- package/ReactCommon/react/nativemodule/cputime/NativeCPUTime.cpp +35 -0
- package/ReactCommon/react/nativemodule/cputime/NativeCPUTime.h +28 -0
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +18 -18
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +8 -8
- package/ReactCommon/react/nativemodule/idlecallbacks/React-idlecallbacksnativemodule.podspec +1 -0
- package/ReactCommon/react/nativemodule/intersectionobserver/NativeIntersectionObserver.cpp +5 -8
- package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +3 -3
- package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +22 -43
- package/ReactCommon/react/nativemodule/webperformance/NativePerformance.h +0 -15
- package/ReactCommon/react/performance/timeline/CMakeLists.txt +1 -0
- package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +22 -2
- package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.h +9 -4
- package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +1 -0
- package/ReactCommon/react/renderer/animations/CMakeLists.txt +0 -1
- package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +1 -1
- package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +25 -19
- package/ReactCommon/react/renderer/animations/primitives.h +1 -1
- package/ReactCommon/react/renderer/animations/utils.h +3 -4
- package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +31 -9
- package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +85 -29
- package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +2 -0
- package/ReactCommon/react/renderer/attributedstring/conversions.h +5 -0
- package/ReactCommon/react/renderer/componentregistry/CMakeLists.txt +0 -1
- package/ReactCommon/react/renderer/components/image/ImageComponentDescriptor.cpp +4 -1
- package/ReactCommon/react/renderer/components/image/ImageComponentDescriptor.h +2 -0
- package/ReactCommon/react/renderer/components/image/ImageEventEmitter.cpp +2 -2
- package/ReactCommon/react/renderer/components/image/ImageProps.cpp +5 -5
- package/ReactCommon/react/renderer/components/image/ImageProps.h +1 -1
- package/ReactCommon/react/renderer/components/image/ImageShadowNode.cpp +38 -10
- package/ReactCommon/react/renderer/components/image/ImageShadowNode.h +1 -1
- package/ReactCommon/react/renderer/components/image/ImageState.cpp +2 -3
- package/ReactCommon/react/renderer/components/image/ImageState.h +9 -6
- package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarComponentDescriptor.h +0 -4
- package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarShadowNode.h +7 -0
- package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +2 -2
- package/ReactCommon/react/renderer/components/scrollview/CMakeLists.txt +2 -2
- package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.cpp +33 -0
- package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.h +17 -0
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.cpp +3 -2
- package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.h +2 -1
- package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchComponentDescriptor.h +0 -4
- package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchShadowNode.h +7 -0
- package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +12 -0
- package/ReactCommon/react/renderer/{uimanager/bindingUtils.h → components/text/ParagraphComponentDescriptor.cpp} +2 -8
- package/ReactCommon/react/renderer/components/text/ParagraphComponentDescriptor.h +10 -7
- package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.cpp +23 -0
- package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.h +8 -1
- package/ReactCommon/react/renderer/components/textinput/BaseTextInputShadowNode.h +243 -0
- package/ReactCommon/react/renderer/components/textinput/TextInputState.cpp +71 -0
- package/ReactCommon/react/renderer/components/textinput/{platform/ios/react/renderer/components/iostextinput/TextInputState.h → TextInputState.h} +27 -7
- package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputComponentDescriptor.h +6 -13
- package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputProps.h +0 -2
- package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +145 -144
- package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h +27 -29
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputComponentDescriptor.h +4 -5
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputProps.cpp +0 -26
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputProps.h +0 -6
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputShadowNode.cpp +0 -147
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputShadowNode.h +5 -57
- package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +60 -70
- package/ReactCommon/react/renderer/components/view/BaseViewProps.h +3 -3
- package/ReactCommon/react/renderer/components/view/LayoutConformanceComponentDescriptor.h +18 -0
- package/ReactCommon/react/renderer/components/view/LayoutConformanceProps.h +36 -0
- package/ReactCommon/react/renderer/components/view/LayoutConformanceShadowNode.h +28 -0
- package/ReactCommon/react/renderer/components/view/ViewPropsInterpolation.h +4 -0
- package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +0 -1
- package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +21 -22
- package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +3 -2
- package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +3 -1
- package/ReactCommon/react/renderer/components/view/conversions.h +117 -43
- package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +3 -2
- package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.h +3 -1
- package/ReactCommon/react/renderer/components/view/primitives.h +1 -1
- package/ReactCommon/react/renderer/components/view/tests/LayoutTest.cpp +12 -12
- package/ReactCommon/react/renderer/core/CMakeLists.txt +0 -1
- package/ReactCommon/react/renderer/core/ComponentDescriptor.cpp +4 -2
- package/ReactCommon/react/renderer/core/ComponentDescriptor.h +4 -2
- package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +17 -2
- package/ReactCommon/react/renderer/core/DynamicPropsUtilities.cpp +26 -0
- package/ReactCommon/react/renderer/core/DynamicPropsUtilities.h +4 -0
- package/ReactCommon/react/renderer/core/EventEmitter.cpp +3 -3
- package/ReactCommon/react/renderer/core/Props.cpp +16 -5
- package/ReactCommon/react/renderer/core/Props.h +11 -4
- package/ReactCommon/react/renderer/core/RawProps.cpp +30 -5
- package/ReactCommon/react/renderer/core/RawProps.h +10 -1
- package/ReactCommon/react/renderer/core/RawPropsParser.cpp +7 -2
- package/ReactCommon/react/renderer/core/RawPropsParser.h +7 -1
- package/ReactCommon/react/renderer/core/RawPropsPrimitives.h +1 -0
- package/ReactCommon/react/renderer/core/RawValue.h +315 -22
- package/ReactCommon/react/renderer/core/tests/DynamicPropsUtilitiesTest.cpp +95 -4
- package/ReactCommon/react/renderer/debug/debugStringConvertibleUtils.h +19 -4
- package/ReactCommon/react/renderer/graphics/CMakeLists.txt +7 -1
- package/ReactCommon/react/renderer/graphics/React-graphics.podspec +7 -5
- package/ReactCommon/react/renderer/graphics/Transform.cpp +11 -2
- package/ReactCommon/react/renderer/graphics/Transform.h +2 -1
- package/ReactCommon/react/renderer/imagemanager/CMakeLists.txt +4 -2
- package/ReactCommon/react/renderer/imagemanager/ImageManager.h +7 -0
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.cpp +43 -0
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.h +36 -0
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +43 -0
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageRequestParams.h +94 -0
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/conversions.h +101 -0
- package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageManager.cpp +9 -1
- package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageRequestParams.h +30 -0
- package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/ImageManager.mm +9 -0
- package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/ImageRequestParams.h +30 -0
- package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTImageManager.mm +2 -2
- package/ReactCommon/react/renderer/mounting/Differentiator.cpp +187 -152
- package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +4 -5
- package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +10 -16
- package/ReactCommon/react/renderer/mounting/ShadowViewMutation.cpp +12 -12
- package/ReactCommon/react/renderer/mounting/ShadowViewMutation.h +44 -14
- package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.cpp +8 -4
- package/ReactCommon/react/renderer/mounting/stubs/stubs.cpp +1 -1
- package/ReactCommon/react/renderer/mounting/tests/MountingTest.cpp +116 -193
- package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +0 -3
- package/ReactCommon/react/renderer/observers/intersection/IntersectionObserver.cpp +7 -4
- package/ReactCommon/react/renderer/observers/intersection/IntersectionObserver.h +2 -1
- package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverManager.cpp +7 -8
- package/ReactCommon/react/renderer/observers/mutation/MutationObserverManager.cpp +6 -6
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +3 -1
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +2 -0
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Legacy.cpp +11 -11
- package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.cpp +14 -15
- package/ReactCommon/react/renderer/runtimescheduler/SchedulerPriorityUtils.h +4 -3
- package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +0 -1
- package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +6 -37
- package/ReactCommon/react/renderer/scheduler/Scheduler.h +0 -3
- package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +15 -11
- package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +1 -0
- package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +56 -2
- package/ReactCommon/react/renderer/scheduler/SurfaceManager.h +23 -3
- package/ReactCommon/react/renderer/textlayoutmanager/CMakeLists.txt +1 -2
- package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutManager.cpp +26 -0
- package/ReactCommon/react/renderer/textlayoutmanager/{platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h → TextLayoutManager.h} +18 -17
- package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.h +2 -3
- package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +77 -89
- package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.cpp +6 -10
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.mm +11 -5
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTFontUtils.mm +23 -1
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +11 -32
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.mm +9 -23
- package/ReactCommon/react/renderer/uimanager/AppRegistryBinding.cpp +88 -0
- package/ReactCommon/react/renderer/uimanager/AppRegistryBinding.h +50 -0
- package/ReactCommon/react/renderer/uimanager/CMakeLists.txt +0 -1
- package/ReactCommon/react/renderer/uimanager/SurfaceRegistryBinding.h +3 -40
- package/ReactCommon/react/renderer/uimanager/UIManager.cpp +23 -18
- package/ReactCommon/react/renderer/uimanager/UIManager.h +2 -0
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +2 -31
- package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +0 -4
- package/ReactCommon/react/renderer/uimanager/tests/PointerEventsProcessorTest.cpp +10 -10
- package/ReactCommon/react/runtime/CMakeLists.txt +0 -1
- package/ReactCommon/react/runtime/React-RuntimeHermes.podspec +1 -2
- package/ReactCommon/react/runtime/ReactInstance.cpp +43 -57
- package/ReactCommon/react/runtime/TimerManager.cpp +4 -4
- package/ReactCommon/react/runtime/hermes/HermesInstance.cpp +5 -1
- package/ReactCommon/react/runtime/hermes/HermesInstance.h +0 -2
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHermesInstance.h +2 -6
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHermesInstance.mm +6 -15
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +3 -1
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +15 -15
- package/ReactCommon/react/runtime/tests/cxx/ReactInstanceTest.cpp +5 -4
- package/ReactCommon/react/test_utils/shadowTreeGeneration.h +0 -3
- package/ReactCommon/reactperflogger/fusebox/FuseboxTracer.cpp +33 -17
- package/ReactCommon/reactperflogger/fusebox/FuseboxTracer.h +8 -2
- package/ReactCommon/reactperflogger/reactperflogger/{ReactPerfLogger.cpp → ReactPerfettoLogger.cpp} +25 -24
- package/ReactCommon/reactperflogger/reactperflogger/{ReactPerfLogger.h → ReactPerfettoLogger.h} +9 -9
- package/ReactCommon/yoga/yoga/YGEnums.cpp +6 -0
- package/ReactCommon/yoga/yoga/YGEnums.h +4 -1
- package/ReactCommon/yoga/yoga/YGNodeStyle.cpp +124 -24
- package/ReactCommon/yoga/yoga/YGNodeStyle.h +22 -1
- package/ReactCommon/yoga/yoga/YGValue.h +3 -0
- package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +6 -6
- package/ReactCommon/yoga/yoga/algorithm/FlexLine.cpp +2 -2
- package/ReactCommon/yoga/yoga/algorithm/FlexLine.h +1 -1
- package/ReactCommon/yoga/yoga/algorithm/PixelGrid.cpp +9 -6
- package/ReactCommon/yoga/yoga/enums/Unit.h +4 -1
- package/ReactCommon/yoga/yoga/node/Node.cpp +8 -8
- package/ReactCommon/yoga/yoga/node/Node.h +5 -5
- package/ReactCommon/yoga/yoga/style/Style.h +14 -12
- package/ReactCommon/yoga/yoga/style/StyleLength.h +14 -7
- package/ReactCommon/yoga/yoga/style/StyleSizeLength.h +139 -0
- package/ReactCommon/yoga/yoga/style/StyleValueHandle.h +8 -0
- package/ReactCommon/yoga/yoga/style/StyleValuePool.h +60 -3
- package/gradle/libs.versions.toml +6 -2
- package/index.js +5 -0
- package/package.json +17 -15
- package/react-native.config.js +6 -0
- package/scripts/cocoapods/codegen_utils.rb +4 -4
- package/scripts/cocoapods/new_architecture.rb +3 -3
- package/scripts/cocoapods/utils.rb +4 -3
- package/scripts/codegen/generate-artifacts-executor.js +8 -4
- package/scripts/generate-codegen-artifacts.js +6 -1
- package/scripts/react-native-xcode.sh +1 -1
- package/scripts/react_native_pods.rb +3 -3
- package/scripts/xcode/ccache-clang++.sh +1 -1
- package/scripts/xcode/ccache-clang.sh +1 -1
- package/sdks/.hermesversion +1 -1
- package/sdks/hermes-engine/hermes-utils.rb +2 -2
- package/sdks/hermes-engine/utils/build-hermes-xcode.sh +1 -1
- package/sdks/hermesc/linux64-bin/hermesc +0 -0
- package/sdks/hermesc/osx-bin/hermes +0 -0
- package/sdks/hermesc/osx-bin/hermesc +0 -0
- package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
- package/src/private/animated/NativeAnimatedValidation.js +1 -1
- package/src/private/featureflags/README.md +5 -0
- package/src/private/featureflags/ReactNativeFeatureFlags.js +32 -26
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +5 -5
- package/src/private/renderer/errorhandling/ErrorHandlers.js +12 -55
- package/src/private/specs/modules/{NativeJSCSamplingProfiler.js → NativeCPUTime.js} +7 -2
- package/src/private/specs/modules/NativeFantom.js +37 -0
- package/src/private/utilities/ensureInstance.js +21 -0
- package/src/private/webapis/dom/nodes/ReactNativeElement.js +49 -6
- package/src/private/webapis/dom/nodes/ReadOnlyNode.js +17 -9
- package/src/private/webapis/intersectionobserver/IntersectionObserver.js +11 -11
- package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +1 -1
- package/src/private/webapis/intersectionobserver/IntersectionObserverManager.js +1 -1
- package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +1 -0
- package/src/private/webapis/performance/Performance.js +0 -12
- package/src/private/webapis/performance/specs/NativePerformance.js +0 -11
- package/types/index.d.ts +1 -0
- package/types/public/ReactNativeTVTypes.d.ts +49 -51
- package/Libraries/HeapCapture/HeapCapture.js +0 -29
- package/Libraries/HeapCapture/NativeJSCHeapCapture.js +0 -13
- package/Libraries/Performance/NativeJSCSamplingProfiler.js +0 -13
- package/Libraries/Performance/SamplingProfiler.js +0 -39
- package/Libraries/ReactNative/__mocks__/FabricUIManager.js +0 -334
- package/React/Inspector/RCTInspectorPackagerConnection.m +0 -325
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedResultAsyncTask.java +0 -50
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorPackagerConnection.java +0 -314
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSCHeapCapture.java +0 -76
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/EmptyReactNativeConfig.kt +0 -36
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/GuardedFrameCallback.kt +0 -33
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/ReactNativeConfig.kt +0 -54
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java +0 -83
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskConfig.java +0 -121
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.java +0 -214
- package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskRetryPolicy.java +0 -22
- package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/XmlFormat.kt +0 -143
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/CookieJarContainer.java +0 -17
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +0 -124
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ReactCookieJarContainer.java +0 -58
- package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.java +0 -422
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FabricViewStateManager.java +0 -98
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.java +0 -25
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.java +0 -20
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventCategoryDef.java +0 -45
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcher.java +0 -37
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherListener.java +0 -19
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherProvider.java +0 -24
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.java +0 -257
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.java +0 -210
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.java +0 -43
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.java +0 -39
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java +0 -165
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEventCoalescingKeyHelper.java +0 -85
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.java +0 -204
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewAccessibilityDelegate.java +0 -161
- package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.java +0 -232
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.java +0 -70
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/LegacyLineHeightSpan.kt +0 -69
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.java +0 -114
- package/ReactAndroid/src/main/jni/first-party/fb/CMakeLists.txt +0 -31
- package/ReactAndroid/src/main/jni/first-party/fb/assert.cpp +0 -39
- package/ReactAndroid/src/main/jni/first-party/fb/include/fb/ALog.h +0 -82
- package/ReactAndroid/src/main/jni/first-party/fb/include/fb/Build.h +0 -31
- package/ReactAndroid/src/main/jni/first-party/fb/include/fb/Countable.h +0 -45
- package/ReactAndroid/src/main/jni/first-party/fb/include/fb/Doxyfile +0 -18
- package/ReactAndroid/src/main/jni/first-party/fb/include/fb/Environment.h +0 -93
- package/ReactAndroid/src/main/jni/first-party/fb/include/fb/ProgramLocation.h +0 -58
- package/ReactAndroid/src/main/jni/first-party/fb/include/fb/RefPtr.h +0 -266
- package/ReactAndroid/src/main/jni/first-party/fb/include/fb/StaticInitialized.h +0 -37
- package/ReactAndroid/src/main/jni/first-party/fb/include/fb/ThreadLocal.h +0 -112
- package/ReactAndroid/src/main/jni/first-party/fb/include/fb/assert.h +0 -43
- package/ReactAndroid/src/main/jni/first-party/fb/include/fb/log.h +0 -350
- package/ReactAndroid/src/main/jni/first-party/fb/include/fb/noncopyable.h +0 -20
- package/ReactAndroid/src/main/jni/first-party/fb/include/fb/nonmovable.h +0 -20
- package/ReactAndroid/src/main/jni/first-party/fb/include/fb/visibility.h +0 -10
- package/ReactAndroid/src/main/jni/first-party/fb/log.cpp +0 -102
- package/ReactAndroid/src/main/jni/react/fabric/JEmptyReactNativeConfig.cpp +0 -47
- package/ReactAndroid/src/main/jni/react/fabric/JEmptyReactNativeConfig.h +0 -38
- package/ReactAndroid/src/main/jni/react/fabric/ReactNativeConfigHolder.cpp +0 -41
- package/ReactAndroid/src/main/jni/react/fabric/ReactNativeConfigHolder.h +0 -35
- package/ReactAndroid/src/main/jni/react/perftests/OnLoad.cpp +0 -243
- package/ReactAndroid/src/main/jni/third-party/jsc/CMakeLists.txt +0 -15
- package/ReactCommon/React-nativeconfig.podspec +0 -36
- package/ReactCommon/cxxreact/tests/main.cpp +0 -15
- package/ReactCommon/react/config/CMakeLists.txt +0 -20
- package/ReactCommon/react/config/ReactNativeConfig.cpp +0 -28
- package/ReactCommon/react/config/ReactNativeConfig.h +0 -42
- package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputState.cpp +0 -95
- package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputState.h +0 -80
- package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputState.cpp +0 -10
- package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.h +0 -78
- package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.h +0 -69
- package/ReactCommon/react/renderer/uimanager/SurfaceRegistryBinding.cpp +0 -123
- package/ReactCommon/react/renderer/uimanager/bindingUtils.cpp +0 -79
- package/src/private/webapis/dom/nodes/specs/__mocks__/NativeDOMMock.js +0 -413
- package/src/private/webapis/intersectionobserver/specs/__mocks__/NativeIntersectionObserver.js +0 -181
- package/src/private/webapis/mutationobserver/specs/__mocks__/NativeMutationObserver.js +0 -327
- /package/ReactCommon/react/renderer/components/scrollview/{AndroidHorizontalScrollContentViewComponentDescriptor.h → platform/android/react/renderer/components/scrollview/AndroidHorizontalScrollContentViewComponentDescriptor.h} +0 -0
- /package/ReactCommon/react/renderer/components/scrollview/{AndroidHorizontalScrollContentViewShadowNode.cpp → platform/android/react/renderer/components/scrollview/AndroidHorizontalScrollContentViewShadowNode.cpp} +0 -0
- /package/ReactCommon/react/renderer/components/scrollview/{AndroidHorizontalScrollContentViewShadowNode.h → platform/android/react/renderer/components/scrollview/AndroidHorizontalScrollContentViewShadowNode.h} +0 -0
|
@@ -84,6 +84,7 @@ public abstract class BaseViewManager<T extends View, C extends LayoutShadowNode
|
|
|
84
84
|
view.setTag(R.id.accessibility_actions, null);
|
|
85
85
|
view.setTag(R.id.accessibility_value, null);
|
|
86
86
|
view.setTag(R.id.accessibility_state_expanded, null);
|
|
87
|
+
view.setTag(R.id.view_clipped, null);
|
|
87
88
|
|
|
88
89
|
// This indirectly calls (and resets):
|
|
89
90
|
// setTranslationX
|
|
@@ -813,62 +814,62 @@ public abstract class BaseViewManager<T extends View, C extends LayoutShadowNode
|
|
|
813
814
|
}
|
|
814
815
|
|
|
815
816
|
/* Experimental W3C Pointer events start */
|
|
816
|
-
@ReactProp(name =
|
|
817
|
+
@ReactProp(name = ViewProps.ON_POINTER_ENTER)
|
|
817
818
|
public void setPointerEnter(@NonNull T view, boolean value) {
|
|
818
819
|
setPointerEventsFlag(view, PointerEventHelper.EVENT.ENTER, value);
|
|
819
820
|
}
|
|
820
821
|
|
|
821
|
-
@ReactProp(name =
|
|
822
|
+
@ReactProp(name = ViewProps.ON_POINTER_ENTER_CAPTURE)
|
|
822
823
|
public void setPointerEnterCapture(@NonNull T view, boolean value) {
|
|
823
824
|
setPointerEventsFlag(view, PointerEventHelper.EVENT.ENTER_CAPTURE, value);
|
|
824
825
|
}
|
|
825
826
|
|
|
826
|
-
@ReactProp(name =
|
|
827
|
+
@ReactProp(name = ViewProps.ON_POINTER_OVER)
|
|
827
828
|
public void setPointerOver(@NonNull T view, boolean value) {
|
|
828
829
|
setPointerEventsFlag(view, PointerEventHelper.EVENT.OVER, value);
|
|
829
830
|
}
|
|
830
831
|
|
|
831
|
-
@ReactProp(name =
|
|
832
|
+
@ReactProp(name = ViewProps.ON_POINTER_OVER_CAPTURE)
|
|
832
833
|
public void setPointerOverCapture(@NonNull T view, boolean value) {
|
|
833
834
|
setPointerEventsFlag(view, PointerEventHelper.EVENT.OVER_CAPTURE, value);
|
|
834
835
|
}
|
|
835
836
|
|
|
836
|
-
@ReactProp(name =
|
|
837
|
+
@ReactProp(name = ViewProps.ON_POINTER_OUT)
|
|
837
838
|
public void setPointerOut(@NonNull T view, boolean value) {
|
|
838
839
|
setPointerEventsFlag(view, PointerEventHelper.EVENT.OUT, value);
|
|
839
840
|
}
|
|
840
841
|
|
|
841
|
-
@ReactProp(name =
|
|
842
|
+
@ReactProp(name = ViewProps.ON_POINTER_OUT_CAPTURE)
|
|
842
843
|
public void setPointerOutCapture(@NonNull T view, boolean value) {
|
|
843
844
|
setPointerEventsFlag(view, PointerEventHelper.EVENT.OUT_CAPTURE, value);
|
|
844
845
|
}
|
|
845
846
|
|
|
846
|
-
@ReactProp(name =
|
|
847
|
+
@ReactProp(name = ViewProps.ON_POINTER_LEAVE)
|
|
847
848
|
public void setPointerLeave(@NonNull T view, boolean value) {
|
|
848
849
|
setPointerEventsFlag(view, PointerEventHelper.EVENT.LEAVE, value);
|
|
849
850
|
}
|
|
850
851
|
|
|
851
|
-
@ReactProp(name =
|
|
852
|
+
@ReactProp(name = ViewProps.ON_POINTER_LEAVE_CAPTURE)
|
|
852
853
|
public void setPointerLeaveCapture(@NonNull T view, boolean value) {
|
|
853
854
|
setPointerEventsFlag(view, PointerEventHelper.EVENT.LEAVE_CAPTURE, value);
|
|
854
855
|
}
|
|
855
856
|
|
|
856
|
-
@ReactProp(name =
|
|
857
|
+
@ReactProp(name = ViewProps.ON_POINTER_MOVE)
|
|
857
858
|
public void setPointerMove(@NonNull T view, boolean value) {
|
|
858
859
|
setPointerEventsFlag(view, PointerEventHelper.EVENT.MOVE, value);
|
|
859
860
|
}
|
|
860
861
|
|
|
861
|
-
@ReactProp(name =
|
|
862
|
+
@ReactProp(name = ViewProps.ON_POINTER_MOVE_CAPTURE)
|
|
862
863
|
public void setPointerMoveCapture(@NonNull T view, boolean value) {
|
|
863
864
|
setPointerEventsFlag(view, PointerEventHelper.EVENT.MOVE_CAPTURE, value);
|
|
864
865
|
}
|
|
865
866
|
|
|
866
|
-
@ReactProp(name =
|
|
867
|
+
@ReactProp(name = ViewProps.ON_CLICK)
|
|
867
868
|
public void setClick(@NonNull T view, boolean value) {
|
|
868
869
|
setPointerEventsFlag(view, PointerEventHelper.EVENT.CLICK, value);
|
|
869
870
|
}
|
|
870
871
|
|
|
871
|
-
@ReactProp(name =
|
|
872
|
+
@ReactProp(name = ViewProps.ON_CLICK_CAPTURE)
|
|
872
873
|
public void setClickCapture(@NonNull T view, boolean value) {
|
|
873
874
|
setPointerEventsFlag(view, PointerEventHelper.EVENT.CLICK_CAPTURE, value);
|
|
874
875
|
}
|
|
@@ -126,20 +126,23 @@ public abstract class BaseViewManagerDelegate<
|
|
|
126
126
|
ViewProps.Z_INDEX -> mViewManager.setZIndex(view, (value as Double?)?.toFloat() ?: 0.0f)
|
|
127
127
|
|
|
128
128
|
// Experimental pointer events
|
|
129
|
-
|
|
130
|
-
|
|
129
|
+
ViewProps.ON_POINTER_ENTER -> mViewManager.setPointerEnter(view, value as Boolean? ?: false)
|
|
130
|
+
ViewProps.ON_POINTER_ENTER_CAPTURE ->
|
|
131
131
|
mViewManager.setPointerEnterCapture(view, value as Boolean? ?: false)
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
132
|
+
ViewProps.ON_POINTER_OVER -> mViewManager.setPointerOver(view, value as Boolean? ?: false)
|
|
133
|
+
ViewProps.ON_POINTER_OVER_CAPTURE ->
|
|
134
|
+
mViewManager.setPointerOverCapture(view, value as Boolean? ?: false)
|
|
135
|
+
ViewProps.ON_POINTER_OUT -> mViewManager.setPointerOut(view, value as Boolean? ?: false)
|
|
136
|
+
ViewProps.ON_POINTER_OUT_CAPTURE ->
|
|
137
|
+
mViewManager.setPointerOutCapture(view, value as Boolean? ?: false)
|
|
138
|
+
ViewProps.ON_POINTER_LEAVE -> mViewManager.setPointerLeave(view, value as Boolean? ?: false)
|
|
139
|
+
ViewProps.ON_POINTER_LEAVE_CAPTURE ->
|
|
138
140
|
mViewManager.setPointerLeaveCapture(view, value as Boolean? ?: false)
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
141
|
+
ViewProps.ON_POINTER_MOVE -> mViewManager.setPointerMove(view, value as Boolean? ?: false)
|
|
142
|
+
ViewProps.ON_POINTER_MOVE_CAPTURE ->
|
|
143
|
+
mViewManager.setPointerMoveCapture(view, value as Boolean? ?: false)
|
|
144
|
+
ViewProps.ON_CLICK -> mViewManager.setClick(view, value as Boolean? ?: false)
|
|
145
|
+
ViewProps.ON_CLICK_CAPTURE -> mViewManager.setClickCapture(view, value as Boolean? ?: false)
|
|
143
146
|
}
|
|
144
147
|
}
|
|
145
148
|
|
|
@@ -5,13 +5,12 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
package com.facebook.react.uimanager
|
|
8
|
+
package com.facebook.react.uimanager
|
|
9
9
|
|
|
10
|
-
import com.facebook.proguard.annotations.DoNotStripAny
|
|
10
|
+
import com.facebook.proguard.annotations.DoNotStripAny
|
|
11
11
|
|
|
12
12
|
@DoNotStripAny
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
internal interface ComponentNameResolver {
|
|
15
14
|
/* returns a list of all the component names that are registered in React Native. */
|
|
16
|
-
String
|
|
15
|
+
public val componentNames: Array<String>?
|
|
17
16
|
}
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
package com.facebook.react.uimanager
|
|
9
9
|
|
|
10
10
|
import android.view.Choreographer
|
|
11
|
+
import com.facebook.react.bridge.JSExceptionHandler
|
|
11
12
|
import com.facebook.react.bridge.ReactContext
|
|
12
13
|
|
|
13
14
|
/**
|
|
@@ -15,13 +16,15 @@ import com.facebook.react.bridge.ReactContext
|
|
|
15
16
|
* handled by the [JSExceptionHandler] registered if the app is in dev mode.
|
|
16
17
|
*/
|
|
17
18
|
public abstract class GuardedFrameCallback
|
|
18
|
-
protected constructor(private val
|
|
19
|
+
protected constructor(private val exceptionHandler: JSExceptionHandler) :
|
|
20
|
+
Choreographer.FrameCallback {
|
|
21
|
+
protected constructor(reactContext: ReactContext) : this(reactContext.exceptionHandler)
|
|
19
22
|
|
|
20
23
|
override public fun doFrame(frameTimeNanos: Long) {
|
|
21
24
|
try {
|
|
22
25
|
doFrameGuarded(frameTimeNanos)
|
|
23
26
|
} catch (e: RuntimeException) {
|
|
24
|
-
|
|
27
|
+
exceptionHandler.handleException(e)
|
|
25
28
|
}
|
|
26
29
|
}
|
|
27
30
|
|
|
@@ -972,9 +972,4 @@ public class LayoutShadowNode extends ReactShadowNodeImpl {
|
|
|
972
972
|
public void setShouldNotifyPointerMove(boolean value) {
|
|
973
973
|
// Do Nothing: Align with static ViewConfigs
|
|
974
974
|
}
|
|
975
|
-
|
|
976
|
-
@ReactProp(name = "experimental_layoutConformance")
|
|
977
|
-
public void setLayoutConformance(String value) {
|
|
978
|
-
// Do Nothing: Align with static ViewConfigs
|
|
979
|
-
}
|
|
980
975
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
package com.facebook.react.uimanager
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Interface that should be implemented by [View] subclasses that support [overflow] style. This
|
|
12
|
+
* allows the overflow information to be used by [TouchTargetHelper] to determine if a View is
|
|
13
|
+
* touchable.
|
|
14
|
+
*/
|
|
15
|
+
public interface ReactOverflowView {
|
|
16
|
+
/**
|
|
17
|
+
* Gets the overflow state of a view. If set, this should be one of [ViewProps#HIDDEN],
|
|
18
|
+
* [ViewProps#VISIBLE] or [ViewProps#SCROLL].
|
|
19
|
+
*/
|
|
20
|
+
public val overflow: String?
|
|
21
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
package com.facebook.react.uimanager
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* This interface should be implemented be native [View] subclasses that support pointer events
|
|
12
|
+
* handling. It is used to find the target View of a touch event.
|
|
13
|
+
*/
|
|
14
|
+
public interface ReactPointerEventsView {
|
|
15
|
+
|
|
16
|
+
/** The PointerEvents of the View. */
|
|
17
|
+
public val pointerEvents: PointerEvents
|
|
18
|
+
}
|
package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{RootView.java → RootView.kt}
RENAMED
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
package com.facebook.react.uimanager
|
|
8
|
+
package com.facebook.react.uimanager
|
|
9
9
|
|
|
10
|
-
import android.view.MotionEvent
|
|
11
|
-
import android.view.View
|
|
10
|
+
import android.view.MotionEvent
|
|
11
|
+
import android.view.View
|
|
12
12
|
|
|
13
13
|
/** Interface for the root native view of a React native application. */
|
|
14
14
|
public interface RootView {
|
|
@@ -17,21 +17,20 @@ public interface RootView {
|
|
|
17
17
|
* Called when a child starts a native gesture (e.g. a scroll in a ScrollView). Should be called
|
|
18
18
|
* from the child's onTouchIntercepted implementation.
|
|
19
19
|
*/
|
|
20
|
-
|
|
20
|
+
public fun onChildStartedNativeGesture(childView: View?, ev: MotionEvent)
|
|
21
21
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
onChildStartedNativeGesture(null, ev);
|
|
22
|
+
@Deprecated(
|
|
23
|
+
message = "Use onChildStartedNativeGesture with a childView parameter.",
|
|
24
|
+
replaceWith = ReplaceWith("onChildStartedNativeGesture"))
|
|
25
|
+
public fun onChildStartedNativeGesture(ev: MotionEvent) {
|
|
26
|
+
onChildStartedNativeGesture(null, ev)
|
|
28
27
|
}
|
|
29
28
|
|
|
30
29
|
/**
|
|
31
30
|
* Called when a child ends a native gesture. Should be called from the child's onTouchIntercepted
|
|
32
31
|
* implementation.
|
|
33
32
|
*/
|
|
34
|
-
|
|
33
|
+
public fun onChildEndedNativeGesture(childView: View, ev: MotionEvent)
|
|
35
34
|
|
|
36
|
-
|
|
35
|
+
public fun handleException(t: Throwable)
|
|
37
36
|
}
|
|
@@ -11,7 +11,7 @@ import android.view.ViewGroup
|
|
|
11
11
|
import android.widget.FrameLayout
|
|
12
12
|
|
|
13
13
|
/** View manager for ReactRootView components. */
|
|
14
|
-
|
|
14
|
+
internal class RootViewManager : ViewGroupManager<ViewGroup>() {
|
|
15
15
|
|
|
16
16
|
override public fun getName(): String = REACT_CLASS
|
|
17
17
|
|
|
@@ -5,9 +5,9 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
package com.facebook.react.uimanager
|
|
8
|
+
package com.facebook.react.uimanager
|
|
9
9
|
|
|
10
10
|
/** A task to execute on the UI View for third party libraries. */
|
|
11
|
-
public interface UIBlock {
|
|
12
|
-
public
|
|
11
|
+
public fun interface UIBlock {
|
|
12
|
+
public fun execute(nativeViewHierarchyManager: NativeViewHierarchyManager): Unit
|
|
13
13
|
}
|
|
@@ -25,7 +25,6 @@ import com.facebook.react.bridge.RetryableMountingLayerException;
|
|
|
25
25
|
import com.facebook.react.bridge.SoftAssertions;
|
|
26
26
|
import com.facebook.react.bridge.UiThreadUtil;
|
|
27
27
|
import com.facebook.react.common.ReactConstants;
|
|
28
|
-
import com.facebook.react.internal.featureflags.ReactNativeFeatureFlags;
|
|
29
28
|
import com.facebook.react.modules.core.ReactChoreographer;
|
|
30
29
|
import com.facebook.react.uimanager.debug.NotThreadSafeViewHierarchyUpdateDebugListener;
|
|
31
30
|
import com.facebook.systrace.Systrace;
|
|
@@ -958,10 +957,8 @@ public class UIViewOperationQueue {
|
|
|
958
957
|
|
|
959
958
|
/* package */ void resumeFrameCallback() {
|
|
960
959
|
mIsDispatchUIFrameCallbackEnqueued = true;
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
.postFrameCallback(ReactChoreographer.CallbackType.DISPATCH_UI, mDispatchUIFrameCallback);
|
|
964
|
-
}
|
|
960
|
+
ReactChoreographer.getInstance()
|
|
961
|
+
.postFrameCallback(ReactChoreographer.CallbackType.DISPATCH_UI, mDispatchUIFrameCallback);
|
|
965
962
|
}
|
|
966
963
|
|
|
967
964
|
/* package */ void pauseFrameCallback() {
|
|
@@ -14,8 +14,10 @@ import androidx.annotation.Nullable;
|
|
|
14
14
|
import com.facebook.common.logging.FLog;
|
|
15
15
|
import com.facebook.react.bridge.BaseJavaModule;
|
|
16
16
|
import com.facebook.react.bridge.ReactApplicationContext;
|
|
17
|
+
import com.facebook.react.bridge.ReactContext;
|
|
17
18
|
import com.facebook.react.bridge.ReadableArray;
|
|
18
19
|
import com.facebook.react.bridge.ReadableMap;
|
|
20
|
+
import com.facebook.react.common.annotations.UnstableReactNativeAPI;
|
|
19
21
|
import com.facebook.react.common.mapbuffer.MapBuffer;
|
|
20
22
|
import com.facebook.react.internal.featureflags.ReactNativeFeatureFlags;
|
|
21
23
|
import com.facebook.react.touch.JSResponderHandler;
|
|
@@ -488,4 +490,27 @@ public abstract class ViewManager<T extends View, C extends ReactShadowNode>
|
|
|
488
490
|
mRecyclableViews = new HashMap<>();
|
|
489
491
|
}
|
|
490
492
|
}
|
|
493
|
+
|
|
494
|
+
/**
|
|
495
|
+
* THIS PREFETCH METHOD IS EXPERIMENTAL, DO NOT USE IT FOR PRODUCTION CODE, MOST LIKELY IT WILL
|
|
496
|
+
* CHANGE OR BE REMOVED IN THE FUTURE.
|
|
497
|
+
*
|
|
498
|
+
* <p>Subclasses can override this method to implement custom resource prefetching for the
|
|
499
|
+
* ViewManager.
|
|
500
|
+
*
|
|
501
|
+
* @param reactContext {@link com.facebook.react.bridge.ReactContext} used for the view.
|
|
502
|
+
* @param surfaceId {@link int} surface ID
|
|
503
|
+
* @param reactTag reactTag that should be set as ID of the view instance
|
|
504
|
+
* @param params {@link MapBuffer} prefetch request params defined in C++
|
|
505
|
+
*/
|
|
506
|
+
@UnstableReactNativeAPI
|
|
507
|
+
public void experimental_prefetchResource(
|
|
508
|
+
ReactContext reactContext, int surfaceId, int reactTag, MapBuffer params) {
|
|
509
|
+
return;
|
|
510
|
+
}
|
|
511
|
+
|
|
512
|
+
@UnstableReactNativeAPI
|
|
513
|
+
protected boolean experimental_isPrefetchingEnabled() {
|
|
514
|
+
return ReactNativeFeatureFlags.enableImagePrefetchingAndroid();
|
|
515
|
+
}
|
|
491
516
|
}
|
|
@@ -17,7 +17,7 @@ import com.facebook.react.bridge.ReadableArray
|
|
|
17
17
|
*
|
|
18
18
|
* @param <T> the type of the view supported by this delegate </T>
|
|
19
19
|
*/
|
|
20
|
-
public interface ViewManagerDelegate<T : View
|
|
20
|
+
public interface ViewManagerDelegate<T : View> {
|
|
21
21
|
|
|
22
22
|
/**
|
|
23
23
|
* Sets a property on a view managed by this view manager.
|
|
@@ -5,12 +5,7 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
package com.facebook.react.uimanager
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
@interface RCTAppDelegate () <RCTTurboModuleManagerDelegate>
|
|
14
|
-
@end
|
|
15
|
-
|
|
16
|
-
#endif
|
|
10
|
+
/** Marker interface to be extended by all code-generated ViewManagerInterface. */
|
|
11
|
+
public interface ViewManagerWithGeneratedInterface {}
|
|
@@ -60,7 +60,6 @@ public object ViewProps {
|
|
|
60
60
|
public const val WIDTH: String = "width"
|
|
61
61
|
public const val START: String = "start"
|
|
62
62
|
public const val END: String = "end"
|
|
63
|
-
public const val IS_ATTACHMENT: String = "isAttachment"
|
|
64
63
|
public const val AUTO: String = "auto"
|
|
65
64
|
public const val NONE: String = "none"
|
|
66
65
|
public const val BOX_NONE: String = "box-none"
|
|
@@ -135,7 +134,6 @@ public object ViewProps {
|
|
|
135
134
|
public const val BORDER_START_START_RADIUS: String = "borderStartStartRadius"
|
|
136
135
|
public const val BORDER_START_COLOR: String = "borderStartColor"
|
|
137
136
|
public const val BORDER_END_COLOR: String = "borderEndColor"
|
|
138
|
-
public const val ON_LAYOUT: String = "onLayout"
|
|
139
137
|
public const val BOX_SHADOW: String = "boxShadow"
|
|
140
138
|
public const val FILTER: String = "filter"
|
|
141
139
|
public const val MIX_BLEND_MODE: String = "mixBlendMode"
|
|
@@ -170,6 +168,18 @@ public object ViewProps {
|
|
|
170
168
|
/** Used to locate views in end-to-end (UI) tests. */
|
|
171
169
|
public const val TEST_ID: String = "testID"
|
|
172
170
|
public const val NATIVE_ID: String = "nativeID"
|
|
171
|
+
internal const val ON_POINTER_ENTER: String = "onPointerEnter"
|
|
172
|
+
internal const val ON_POINTER_ENTER_CAPTURE: String = "onPointerEnterCapture"
|
|
173
|
+
internal const val ON_POINTER_OVER: String = "onPointerOver"
|
|
174
|
+
internal const val ON_POINTER_OVER_CAPTURE: String = "onPointerOverCapture"
|
|
175
|
+
internal const val ON_POINTER_OUT: String = "onPointerOut"
|
|
176
|
+
internal const val ON_POINTER_OUT_CAPTURE: String = "onPointerOutCapture"
|
|
177
|
+
internal const val ON_POINTER_LEAVE: String = "onPointerLeave"
|
|
178
|
+
internal const val ON_POINTER_LEAVE_CAPTURE: String = "onPointerLeaveCapture"
|
|
179
|
+
internal const val ON_POINTER_MOVE: String = "onPointerMove"
|
|
180
|
+
internal const val ON_POINTER_MOVE_CAPTURE: String = "onPointerMoveCapture"
|
|
181
|
+
internal const val ON_CLICK: String = "onClick"
|
|
182
|
+
internal const val ON_CLICK_CAPTURE: String = "onClickCapture"
|
|
173
183
|
@JvmField
|
|
174
184
|
public val BORDER_SPACING_TYPES: IntArray =
|
|
175
185
|
intArrayOf(
|
|
@@ -192,9 +202,6 @@ public object ViewProps {
|
|
|
192
202
|
Spacing.BOTTOM,
|
|
193
203
|
Spacing.LEFT,
|
|
194
204
|
Spacing.RIGHT)
|
|
195
|
-
@JvmField
|
|
196
|
-
public val POSITION_SPACING_TYPES: IntArray =
|
|
197
|
-
intArrayOf(Spacing.START, Spacing.END, Spacing.TOP, Spacing.BOTTOM)
|
|
198
205
|
private val LAYOUT_ONLY_PROPS: HashSet<String> =
|
|
199
206
|
HashSet(
|
|
200
207
|
Arrays.asList(
|
package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundDrawable.kt
CHANGED
|
@@ -42,7 +42,7 @@ internal class BackgroundDrawable(
|
|
|
42
42
|
* Outline. The smallest amount (found to be 0.8f) is used to shrink outline's path, overlapping
|
|
43
43
|
* them and closing the visible gap.
|
|
44
44
|
*/
|
|
45
|
-
private val
|
|
45
|
+
private val pathAdjustment = 0.8f
|
|
46
46
|
private var computedBorderInsets: RectF? = null
|
|
47
47
|
private var computedBorderRadius: ComputedBorderRadius? = null
|
|
48
48
|
private var needUpdatePath = true
|
|
@@ -56,8 +56,8 @@ internal class BackgroundDrawable(
|
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
58
|
|
|
59
|
-
private var
|
|
60
|
-
private var
|
|
59
|
+
private var backgroundRect: RectF = RectF()
|
|
60
|
+
private var backgroundRenderPath: Path? = null
|
|
61
61
|
|
|
62
62
|
var backgroundImageLayers: List<BackgroundImageLayer>? = null
|
|
63
63
|
set(value) {
|
|
@@ -107,33 +107,33 @@ internal class BackgroundDrawable(
|
|
|
107
107
|
updatePath()
|
|
108
108
|
canvas.save()
|
|
109
109
|
|
|
110
|
-
var innerRadiusX = 0f
|
|
111
|
-
var innerRadiusY = 0f
|
|
112
110
|
// Draws the View without its border first (with background color fill)
|
|
113
111
|
if (backgroundPaint.alpha != 0) {
|
|
114
112
|
if (computedBorderRadius?.isUniform() == true && borderRadius?.hasRoundedBorders() == true) {
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
computedBorderRadius?.topLeft?.vertical?.dpToPx(), computedBorderInsets?.top)
|
|
121
|
-
canvas.drawRoundRect(paddingBoxRect, innerRadiusX, innerRadiusY, backgroundPaint)
|
|
113
|
+
canvas.drawRoundRect(
|
|
114
|
+
backgroundRect,
|
|
115
|
+
computedBorderRadius?.topLeft?.horizontal?.dpToPx() ?: 0f,
|
|
116
|
+
computedBorderRadius?.topLeft?.vertical?.dpToPx() ?: 0f,
|
|
117
|
+
backgroundPaint)
|
|
122
118
|
} else if (borderRadius?.hasRoundedBorders() != true) {
|
|
123
|
-
canvas.drawRect(
|
|
119
|
+
canvas.drawRect(backgroundRect, backgroundPaint)
|
|
124
120
|
} else {
|
|
125
|
-
canvas.drawPath(checkNotNull(
|
|
121
|
+
canvas.drawPath(checkNotNull(backgroundRenderPath), backgroundPaint)
|
|
126
122
|
}
|
|
127
123
|
}
|
|
128
124
|
|
|
129
125
|
if (backgroundImageLayers != null && backgroundImageLayers?.isNotEmpty() == true) {
|
|
130
126
|
backgroundPaint.setShader(getBackgroundImageShader())
|
|
131
127
|
if (computedBorderRadius?.isUniform() == true && borderRadius?.hasRoundedBorders() == true) {
|
|
132
|
-
canvas.drawRoundRect(
|
|
128
|
+
canvas.drawRoundRect(
|
|
129
|
+
backgroundRect,
|
|
130
|
+
computedBorderRadius?.topLeft?.horizontal?.dpToPx() ?: 0f,
|
|
131
|
+
computedBorderRadius?.topLeft?.vertical?.dpToPx() ?: 0f,
|
|
132
|
+
backgroundPaint)
|
|
133
133
|
} else if (borderRadius?.hasRoundedBorders() != true) {
|
|
134
|
-
canvas.drawRect(
|
|
134
|
+
canvas.drawRect(backgroundRect, backgroundPaint)
|
|
135
135
|
} else {
|
|
136
|
-
canvas.drawPath(checkNotNull(
|
|
136
|
+
canvas.drawPath(checkNotNull(backgroundRenderPath), backgroundPaint)
|
|
137
137
|
}
|
|
138
138
|
backgroundPaint.setShader(null)
|
|
139
139
|
}
|
|
@@ -167,89 +167,55 @@ internal class BackgroundDrawable(
|
|
|
167
167
|
return null
|
|
168
168
|
}
|
|
169
169
|
|
|
170
|
-
/**
|
|
171
|
-
* Here, "inner" refers to the border radius on the inside of the border. So it ends up being the
|
|
172
|
-
* "outer" border radius inset by the respective width.
|
|
173
|
-
*/
|
|
174
|
-
private fun getInnerBorderRadius(computedRadius: Float?, borderWidth: Float?): Float {
|
|
175
|
-
return ((computedRadius ?: 0f) - (borderWidth ?: 0f)).coerceAtLeast(0f)
|
|
176
|
-
}
|
|
177
|
-
|
|
178
170
|
private fun updatePath() {
|
|
179
171
|
if (!needUpdatePath) {
|
|
180
172
|
return
|
|
181
173
|
}
|
|
182
174
|
needUpdatePath = false
|
|
183
175
|
|
|
176
|
+
backgroundRect.set(bounds)
|
|
177
|
+
|
|
184
178
|
computedBorderInsets = computeBorderInsets()
|
|
185
179
|
computedBorderRadius =
|
|
186
180
|
borderRadius?.resolve(
|
|
187
181
|
layoutDirection, context, bounds.width().pxToDp(), bounds.height().pxToDp())
|
|
182
|
+
val hasBorder =
|
|
183
|
+
(computedBorderInsets?.left != 0f ||
|
|
184
|
+
computedBorderInsets?.top != 0f ||
|
|
185
|
+
computedBorderInsets?.right != 0f ||
|
|
186
|
+
computedBorderInsets?.bottom != 0f)
|
|
188
187
|
|
|
189
188
|
if (computedBorderRadius?.hasRoundedBorders() == true &&
|
|
190
189
|
computedBorderRadius?.isUniform() == false) {
|
|
191
|
-
|
|
192
|
-
|
|
190
|
+
backgroundRenderPath = backgroundRenderPath ?: Path()
|
|
191
|
+
backgroundRenderPath?.reset()
|
|
193
192
|
}
|
|
194
193
|
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
194
|
+
/**
|
|
195
|
+
* The background bleeds a bit outside of the borderDrawable. pathAdjustment is used to slightly
|
|
196
|
+
* shrink the rectangle (backgroundRect), ensuring the border can be drawn on top without the
|
|
197
|
+
* gap.
|
|
198
|
+
*/
|
|
199
|
+
if (hasBorder && borderRadius?.hasRoundedBorders() == true) {
|
|
200
|
+
backgroundRect.left += pathAdjustment
|
|
201
|
+
backgroundRect.top += pathAdjustment
|
|
202
|
+
backgroundRect.right -= pathAdjustment
|
|
203
|
+
backgroundRect.bottom -= pathAdjustment
|
|
204
204
|
}
|
|
205
205
|
|
|
206
|
-
// There is a small gap between backgroundDrawable and
|
|
207
|
-
// borderDrawable. pathAdjustment is used to slightly enlarge the rectangle
|
|
208
|
-
// (paddingBoxRect), ensuring the border can be
|
|
209
|
-
// drawn on top without the gap.
|
|
210
|
-
paddingBoxRect.left = bounds.left + (computedBorderInsets?.left ?: 0f) - pathAdjustment
|
|
211
|
-
paddingBoxRect.top = bounds.top + (computedBorderInsets?.top ?: 0f) - pathAdjustment
|
|
212
|
-
paddingBoxRect.right = bounds.right - (computedBorderInsets?.right ?: 0f) + pathAdjustment
|
|
213
|
-
paddingBoxRect.bottom = bounds.bottom - (computedBorderInsets?.bottom ?: 0f) + pathAdjustment
|
|
214
|
-
|
|
215
206
|
if (borderRadius?.hasRoundedBorders() == true && computedBorderRadius?.isUniform() != true) {
|
|
216
207
|
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
computedBorderRadius?.topLeft?.horizontal?.dpToPx(), computedBorderInsets?.left)
|
|
220
|
-
val innerTopLeftRadiusY =
|
|
221
|
-
getInnerBorderRadius(
|
|
222
|
-
computedBorderRadius?.topLeft?.vertical?.dpToPx(), computedBorderInsets?.top)
|
|
223
|
-
val innerTopRightRadiusX =
|
|
224
|
-
getInnerBorderRadius(
|
|
225
|
-
computedBorderRadius?.topRight?.horizontal?.dpToPx(), computedBorderInsets?.right)
|
|
226
|
-
val innerTopRightRadiusY =
|
|
227
|
-
getInnerBorderRadius(
|
|
228
|
-
computedBorderRadius?.topRight?.vertical?.dpToPx(), computedBorderInsets?.top)
|
|
229
|
-
val innerBottomRightRadiusX =
|
|
230
|
-
getInnerBorderRadius(
|
|
231
|
-
computedBorderRadius?.bottomRight?.horizontal?.dpToPx(), computedBorderInsets?.right)
|
|
232
|
-
val innerBottomRightRadiusY =
|
|
233
|
-
getInnerBorderRadius(
|
|
234
|
-
computedBorderRadius?.bottomRight?.vertical?.dpToPx(), computedBorderInsets?.bottom)
|
|
235
|
-
val innerBottomLeftRadiusX =
|
|
236
|
-
getInnerBorderRadius(
|
|
237
|
-
computedBorderRadius?.bottomLeft?.horizontal?.dpToPx(), computedBorderInsets?.left)
|
|
238
|
-
val innerBottomLeftRadiusY =
|
|
239
|
-
getInnerBorderRadius(
|
|
240
|
-
computedBorderRadius?.bottomLeft?.vertical?.dpToPx(), computedBorderInsets?.bottom)
|
|
241
|
-
|
|
242
|
-
paddingBoxRenderPath?.addRoundRect(
|
|
243
|
-
paddingBoxRect,
|
|
208
|
+
backgroundRenderPath?.addRoundRect(
|
|
209
|
+
backgroundRect,
|
|
244
210
|
floatArrayOf(
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
211
|
+
computedBorderRadius?.topLeft?.horizontal?.dpToPx() ?: 0f,
|
|
212
|
+
computedBorderRadius?.topLeft?.vertical?.dpToPx() ?: 0f,
|
|
213
|
+
computedBorderRadius?.topRight?.horizontal?.dpToPx() ?: 0f,
|
|
214
|
+
computedBorderRadius?.topRight?.vertical?.dpToPx() ?: 0f,
|
|
215
|
+
computedBorderRadius?.bottomRight?.horizontal?.dpToPx() ?: 0f,
|
|
216
|
+
computedBorderRadius?.bottomRight?.vertical?.dpToPx() ?: 0f,
|
|
217
|
+
computedBorderRadius?.bottomLeft?.horizontal?.dpToPx() ?: 0f,
|
|
218
|
+
computedBorderRadius?.bottomLeft?.vertical?.dpToPx() ?: 0f,
|
|
253
219
|
),
|
|
254
220
|
Path.Direction.CW)
|
|
255
221
|
}
|
|
@@ -138,7 +138,7 @@ internal class BorderDrawable(
|
|
|
138
138
|
@Deprecated("Deprecated in Java")
|
|
139
139
|
override fun getOpacity(): Int {
|
|
140
140
|
val maxBorderAlpha =
|
|
141
|
-
|
|
141
|
+
maxOf(
|
|
142
142
|
(Color.alpha(multiplyColorAlpha(computedBorderColors.left, borderAlpha))),
|
|
143
143
|
(Color.alpha(multiplyColorAlpha(computedBorderColors.top, borderAlpha))),
|
|
144
144
|
(Color.alpha(multiplyColorAlpha(computedBorderColors.right, borderAlpha))),
|
|
@@ -675,10 +675,10 @@ internal class BorderDrawable(
|
|
|
675
675
|
|
|
676
676
|
val borderWidth = computeBorderInsets()
|
|
677
677
|
|
|
678
|
-
// Clip border ONLY if
|
|
679
|
-
if (Color.alpha(computedBorderColors.left) != 0
|
|
680
|
-
Color.alpha(computedBorderColors.top) != 0
|
|
681
|
-
Color.alpha(computedBorderColors.right) != 0
|
|
678
|
+
// Clip border ONLY if at least one edge is non-transparent
|
|
679
|
+
if (Color.alpha(computedBorderColors.left) != 0 ||
|
|
680
|
+
Color.alpha(computedBorderColors.top) != 0 ||
|
|
681
|
+
Color.alpha(computedBorderColors.right) != 0 ||
|
|
682
682
|
Color.alpha(computedBorderColors.bottom) != 0) {
|
|
683
683
|
innerClipTempRectForBorderRadius?.top =
|
|
684
684
|
innerClipTempRectForBorderRadius?.top?.plus(borderWidth.top) ?: 0f
|
package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/CSSBackgroundDrawable.java
CHANGED
|
@@ -646,13 +646,13 @@ public class CSSBackgroundDrawable extends Drawable {
|
|
|
646
646
|
colorTop = colorBlockStart;
|
|
647
647
|
}
|
|
648
648
|
|
|
649
|
-
// Clip border ONLY if
|
|
649
|
+
// Clip border ONLY if at least one edge is non-transparent
|
|
650
650
|
float pathAdjustment = 0f;
|
|
651
651
|
if (Color.alpha(colorLeft) != 0
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
652
|
+
|| Color.alpha(colorTop) != 0
|
|
653
|
+
|| Color.alpha(colorRight) != 0
|
|
654
|
+
|| Color.alpha(colorBottom) != 0
|
|
655
|
+
|| Color.alpha(borderColor) != 0) {
|
|
656
656
|
|
|
657
657
|
mInnerClipTempRectForBorderRadius.top += borderWidth.top;
|
|
658
658
|
mInnerClipTempRectForBorderRadius.bottom -= borderWidth.bottom;
|