react-native-tvos 0.77.1-0 → 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/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 +4 -5
- package/Libraries/Components/View/ViewPropTypes.js +0 -9
- package/Libraries/Core/ReactNativeVersion.js +2 -2
- package/Libraries/Core/setUpBatchedBridge.js +1 -16
- package/Libraries/EventEmitter/RCTEventEmitter.js +2 -6
- package/Libraries/Image/AssetSourceResolver.js +11 -0
- 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/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 +25 -0
- 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/README-core.md +2 -2
- 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 +22 -3
- 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 +7 -2
- 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/RCTView.m +6 -2
- package/React/Views/RCTViewManager.m +0 -7
- package/React/Views/ScrollView/RCTScrollView.m +46 -19
- package/React-Core.podspec +1 -1
- package/ReactAndroid/api/ReactAndroid.api +120 -227
- package/ReactAndroid/build.gradle.kts +8 -13
- package/ReactAndroid/cmake-utils/default-app-setup/OnLoad.cpp +2 -0
- package/ReactAndroid/external-artifacts/build.gradle.kts +5 -5
- package/ReactAndroid/gradle.properties +1 -1
- 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/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/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 +24 -0
- 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/drawable/CompositeBackgroundDrawable.kt +8 -9
- 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 +34 -1
- 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/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 +90 -20
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +2 -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/RCTTurboModule.h +1 -5
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +13 -23
- 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 +81 -31
- 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/{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/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 +6 -2
- 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 +12 -13
- 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/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 +33 -27
- 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
|
@@ -177,19 +177,34 @@ float YGNodeStyleGetFlexShrink(const YGNodeConstRef nodeRef) {
|
|
|
177
177
|
|
|
178
178
|
void YGNodeStyleSetFlexBasis(const YGNodeRef node, const float flexBasis) {
|
|
179
179
|
updateStyle<&Style::flexBasis, &Style::setFlexBasis>(
|
|
180
|
-
node,
|
|
180
|
+
node, StyleSizeLength::points(flexBasis));
|
|
181
181
|
}
|
|
182
182
|
|
|
183
183
|
void YGNodeStyleSetFlexBasisPercent(
|
|
184
184
|
const YGNodeRef node,
|
|
185
185
|
const float flexBasisPercent) {
|
|
186
186
|
updateStyle<&Style::flexBasis, &Style::setFlexBasis>(
|
|
187
|
-
node,
|
|
187
|
+
node, StyleSizeLength::percent(flexBasisPercent));
|
|
188
188
|
}
|
|
189
189
|
|
|
190
190
|
void YGNodeStyleSetFlexBasisAuto(const YGNodeRef node) {
|
|
191
191
|
updateStyle<&Style::flexBasis, &Style::setFlexBasis>(
|
|
192
|
-
node,
|
|
192
|
+
node, StyleSizeLength::ofAuto());
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
void YGNodeStyleSetFlexBasisMaxContent(const YGNodeRef node) {
|
|
196
|
+
updateStyle<&Style::flexBasis, &Style::setFlexBasis>(
|
|
197
|
+
node, StyleSizeLength::ofMaxContent());
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
void YGNodeStyleSetFlexBasisFitContent(const YGNodeRef node) {
|
|
201
|
+
updateStyle<&Style::flexBasis, &Style::setFlexBasis>(
|
|
202
|
+
node, StyleSizeLength::ofFitContent());
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
void YGNodeStyleSetFlexBasisStretch(const YGNodeRef node) {
|
|
206
|
+
updateStyle<&Style::flexBasis, &Style::setFlexBasis>(
|
|
207
|
+
node, StyleSizeLength::ofStretch());
|
|
193
208
|
}
|
|
194
209
|
|
|
195
210
|
YGValue YGNodeStyleGetFlexBasis(const YGNodeConstRef node) {
|
|
@@ -278,13 +293,8 @@ void YGNodeStyleSetGapPercent(YGNodeRef node, YGGutter gutter, float percent) {
|
|
|
278
293
|
node, scopedEnum(gutter), StyleLength::percent(percent));
|
|
279
294
|
}
|
|
280
295
|
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
if (gapLength.isUndefined() || gapLength.isAuto()) {
|
|
284
|
-
return YGUndefined;
|
|
285
|
-
}
|
|
286
|
-
|
|
287
|
-
return static_cast<YGValue>(gapLength).value;
|
|
296
|
+
YGValue YGNodeStyleGetGap(const YGNodeConstRef node, const YGGutter gutter) {
|
|
297
|
+
return (YGValue)resolveRef(node)->style().gap(scopedEnum(gutter));
|
|
288
298
|
}
|
|
289
299
|
|
|
290
300
|
void YGNodeStyleSetAspectRatio(const YGNodeRef node, const float aspectRatio) {
|
|
@@ -308,17 +318,32 @@ YGBoxSizing YGNodeStyleGetBoxSizing(const YGNodeConstRef node) {
|
|
|
308
318
|
|
|
309
319
|
void YGNodeStyleSetWidth(YGNodeRef node, float points) {
|
|
310
320
|
updateStyle<&Style::dimension, &Style::setDimension>(
|
|
311
|
-
node, Dimension::Width,
|
|
321
|
+
node, Dimension::Width, StyleSizeLength::points(points));
|
|
312
322
|
}
|
|
313
323
|
|
|
314
324
|
void YGNodeStyleSetWidthPercent(YGNodeRef node, float percent) {
|
|
315
325
|
updateStyle<&Style::dimension, &Style::setDimension>(
|
|
316
|
-
node, Dimension::Width,
|
|
326
|
+
node, Dimension::Width, StyleSizeLength::percent(percent));
|
|
317
327
|
}
|
|
318
328
|
|
|
319
329
|
void YGNodeStyleSetWidthAuto(YGNodeRef node) {
|
|
320
330
|
updateStyle<&Style::dimension, &Style::setDimension>(
|
|
321
|
-
node, Dimension::Width,
|
|
331
|
+
node, Dimension::Width, StyleSizeLength::ofAuto());
|
|
332
|
+
}
|
|
333
|
+
|
|
334
|
+
void YGNodeStyleSetWidthMaxContent(YGNodeRef node) {
|
|
335
|
+
updateStyle<&Style::dimension, &Style::setDimension>(
|
|
336
|
+
node, Dimension::Width, StyleSizeLength::ofMaxContent());
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
void YGNodeStyleSetWidthFitContent(YGNodeRef node) {
|
|
340
|
+
updateStyle<&Style::dimension, &Style::setDimension>(
|
|
341
|
+
node, Dimension::Width, StyleSizeLength::ofFitContent());
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
void YGNodeStyleSetWidthStretch(YGNodeRef node) {
|
|
345
|
+
updateStyle<&Style::dimension, &Style::setDimension>(
|
|
346
|
+
node, Dimension::Width, StyleSizeLength::ofStretch());
|
|
322
347
|
}
|
|
323
348
|
|
|
324
349
|
YGValue YGNodeStyleGetWidth(YGNodeConstRef node) {
|
|
@@ -327,17 +352,32 @@ YGValue YGNodeStyleGetWidth(YGNodeConstRef node) {
|
|
|
327
352
|
|
|
328
353
|
void YGNodeStyleSetHeight(YGNodeRef node, float points) {
|
|
329
354
|
updateStyle<&Style::dimension, &Style::setDimension>(
|
|
330
|
-
node, Dimension::Height,
|
|
355
|
+
node, Dimension::Height, StyleSizeLength::points(points));
|
|
331
356
|
}
|
|
332
357
|
|
|
333
358
|
void YGNodeStyleSetHeightPercent(YGNodeRef node, float percent) {
|
|
334
359
|
updateStyle<&Style::dimension, &Style::setDimension>(
|
|
335
|
-
node, Dimension::Height,
|
|
360
|
+
node, Dimension::Height, StyleSizeLength::percent(percent));
|
|
336
361
|
}
|
|
337
362
|
|
|
338
363
|
void YGNodeStyleSetHeightAuto(YGNodeRef node) {
|
|
339
364
|
updateStyle<&Style::dimension, &Style::setDimension>(
|
|
340
|
-
node, Dimension::Height,
|
|
365
|
+
node, Dimension::Height, StyleSizeLength::ofAuto());
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
void YGNodeStyleSetHeightMaxContent(YGNodeRef node) {
|
|
369
|
+
updateStyle<&Style::dimension, &Style::setDimension>(
|
|
370
|
+
node, Dimension::Height, StyleSizeLength::ofMaxContent());
|
|
371
|
+
}
|
|
372
|
+
|
|
373
|
+
void YGNodeStyleSetHeightFitContent(YGNodeRef node) {
|
|
374
|
+
updateStyle<&Style::dimension, &Style::setDimension>(
|
|
375
|
+
node, Dimension::Height, StyleSizeLength::ofFitContent());
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
void YGNodeStyleSetHeightStretch(YGNodeRef node) {
|
|
379
|
+
updateStyle<&Style::dimension, &Style::setDimension>(
|
|
380
|
+
node, Dimension::Height, StyleSizeLength::ofStretch());
|
|
341
381
|
}
|
|
342
382
|
|
|
343
383
|
YGValue YGNodeStyleGetHeight(YGNodeConstRef node) {
|
|
@@ -346,12 +386,27 @@ YGValue YGNodeStyleGetHeight(YGNodeConstRef node) {
|
|
|
346
386
|
|
|
347
387
|
void YGNodeStyleSetMinWidth(const YGNodeRef node, const float minWidth) {
|
|
348
388
|
updateStyle<&Style::minDimension, &Style::setMinDimension>(
|
|
349
|
-
node, Dimension::Width,
|
|
389
|
+
node, Dimension::Width, StyleSizeLength::points(minWidth));
|
|
350
390
|
}
|
|
351
391
|
|
|
352
392
|
void YGNodeStyleSetMinWidthPercent(const YGNodeRef node, const float minWidth) {
|
|
353
393
|
updateStyle<&Style::minDimension, &Style::setMinDimension>(
|
|
354
|
-
node, Dimension::Width,
|
|
394
|
+
node, Dimension::Width, StyleSizeLength::percent(minWidth));
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
void YGNodeStyleSetMinWidthMaxContent(const YGNodeRef node) {
|
|
398
|
+
updateStyle<&Style::minDimension, &Style::setMinDimension>(
|
|
399
|
+
node, Dimension::Width, StyleSizeLength::ofMaxContent());
|
|
400
|
+
}
|
|
401
|
+
|
|
402
|
+
void YGNodeStyleSetMinWidthFitContent(const YGNodeRef node) {
|
|
403
|
+
updateStyle<&Style::minDimension, &Style::setMinDimension>(
|
|
404
|
+
node, Dimension::Width, StyleSizeLength::ofFitContent());
|
|
405
|
+
}
|
|
406
|
+
|
|
407
|
+
void YGNodeStyleSetMinWidthStretch(const YGNodeRef node) {
|
|
408
|
+
updateStyle<&Style::minDimension, &Style::setMinDimension>(
|
|
409
|
+
node, Dimension::Width, StyleSizeLength::ofStretch());
|
|
355
410
|
}
|
|
356
411
|
|
|
357
412
|
YGValue YGNodeStyleGetMinWidth(const YGNodeConstRef node) {
|
|
@@ -360,14 +415,29 @@ YGValue YGNodeStyleGetMinWidth(const YGNodeConstRef node) {
|
|
|
360
415
|
|
|
361
416
|
void YGNodeStyleSetMinHeight(const YGNodeRef node, const float minHeight) {
|
|
362
417
|
updateStyle<&Style::minDimension, &Style::setMinDimension>(
|
|
363
|
-
node, Dimension::Height,
|
|
418
|
+
node, Dimension::Height, StyleSizeLength::points(minHeight));
|
|
364
419
|
}
|
|
365
420
|
|
|
366
421
|
void YGNodeStyleSetMinHeightPercent(
|
|
367
422
|
const YGNodeRef node,
|
|
368
423
|
const float minHeight) {
|
|
369
424
|
updateStyle<&Style::minDimension, &Style::setMinDimension>(
|
|
370
|
-
node, Dimension::Height,
|
|
425
|
+
node, Dimension::Height, StyleSizeLength::percent(minHeight));
|
|
426
|
+
}
|
|
427
|
+
|
|
428
|
+
void YGNodeStyleSetMinHeightMaxContent(const YGNodeRef node) {
|
|
429
|
+
updateStyle<&Style::minDimension, &Style::setMinDimension>(
|
|
430
|
+
node, Dimension::Height, StyleSizeLength::ofMaxContent());
|
|
431
|
+
}
|
|
432
|
+
|
|
433
|
+
void YGNodeStyleSetMinHeightFitContent(const YGNodeRef node) {
|
|
434
|
+
updateStyle<&Style::minDimension, &Style::setMinDimension>(
|
|
435
|
+
node, Dimension::Height, StyleSizeLength::ofFitContent());
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
void YGNodeStyleSetMinHeightStretch(const YGNodeRef node) {
|
|
439
|
+
updateStyle<&Style::minDimension, &Style::setMinDimension>(
|
|
440
|
+
node, Dimension::Height, StyleSizeLength::ofStretch());
|
|
371
441
|
}
|
|
372
442
|
|
|
373
443
|
YGValue YGNodeStyleGetMinHeight(const YGNodeConstRef node) {
|
|
@@ -376,12 +446,27 @@ YGValue YGNodeStyleGetMinHeight(const YGNodeConstRef node) {
|
|
|
376
446
|
|
|
377
447
|
void YGNodeStyleSetMaxWidth(const YGNodeRef node, const float maxWidth) {
|
|
378
448
|
updateStyle<&Style::maxDimension, &Style::setMaxDimension>(
|
|
379
|
-
node, Dimension::Width,
|
|
449
|
+
node, Dimension::Width, StyleSizeLength::points(maxWidth));
|
|
380
450
|
}
|
|
381
451
|
|
|
382
452
|
void YGNodeStyleSetMaxWidthPercent(const YGNodeRef node, const float maxWidth) {
|
|
383
453
|
updateStyle<&Style::maxDimension, &Style::setMaxDimension>(
|
|
384
|
-
node, Dimension::Width,
|
|
454
|
+
node, Dimension::Width, StyleSizeLength::percent(maxWidth));
|
|
455
|
+
}
|
|
456
|
+
|
|
457
|
+
void YGNodeStyleSetMaxWidthMaxContent(const YGNodeRef node) {
|
|
458
|
+
updateStyle<&Style::maxDimension, &Style::setMaxDimension>(
|
|
459
|
+
node, Dimension::Width, StyleSizeLength::ofMaxContent());
|
|
460
|
+
}
|
|
461
|
+
|
|
462
|
+
void YGNodeStyleSetMaxWidthFitContent(const YGNodeRef node) {
|
|
463
|
+
updateStyle<&Style::maxDimension, &Style::setMaxDimension>(
|
|
464
|
+
node, Dimension::Width, StyleSizeLength::ofFitContent());
|
|
465
|
+
}
|
|
466
|
+
|
|
467
|
+
void YGNodeStyleSetMaxWidthStretch(const YGNodeRef node) {
|
|
468
|
+
updateStyle<&Style::maxDimension, &Style::setMaxDimension>(
|
|
469
|
+
node, Dimension::Width, StyleSizeLength::ofStretch());
|
|
385
470
|
}
|
|
386
471
|
|
|
387
472
|
YGValue YGNodeStyleGetMaxWidth(const YGNodeConstRef node) {
|
|
@@ -390,14 +475,29 @@ YGValue YGNodeStyleGetMaxWidth(const YGNodeConstRef node) {
|
|
|
390
475
|
|
|
391
476
|
void YGNodeStyleSetMaxHeight(const YGNodeRef node, const float maxHeight) {
|
|
392
477
|
updateStyle<&Style::maxDimension, &Style::setMaxDimension>(
|
|
393
|
-
node, Dimension::Height,
|
|
478
|
+
node, Dimension::Height, StyleSizeLength::points(maxHeight));
|
|
394
479
|
}
|
|
395
480
|
|
|
396
481
|
void YGNodeStyleSetMaxHeightPercent(
|
|
397
482
|
const YGNodeRef node,
|
|
398
483
|
const float maxHeight) {
|
|
399
484
|
updateStyle<&Style::maxDimension, &Style::setMaxDimension>(
|
|
400
|
-
node, Dimension::Height,
|
|
485
|
+
node, Dimension::Height, StyleSizeLength::percent(maxHeight));
|
|
486
|
+
}
|
|
487
|
+
|
|
488
|
+
void YGNodeStyleSetMaxHeightMaxContent(const YGNodeRef node) {
|
|
489
|
+
updateStyle<&Style::maxDimension, &Style::setMaxDimension>(
|
|
490
|
+
node, Dimension::Height, StyleSizeLength::ofMaxContent());
|
|
491
|
+
}
|
|
492
|
+
|
|
493
|
+
void YGNodeStyleSetMaxHeightFitContent(const YGNodeRef node) {
|
|
494
|
+
updateStyle<&Style::maxDimension, &Style::setMaxDimension>(
|
|
495
|
+
node, Dimension::Height, StyleSizeLength::ofFitContent());
|
|
496
|
+
}
|
|
497
|
+
|
|
498
|
+
void YGNodeStyleSetMaxHeightStretch(const YGNodeRef node) {
|
|
499
|
+
updateStyle<&Style::maxDimension, &Style::setMaxDimension>(
|
|
500
|
+
node, Dimension::Height, StyleSizeLength::ofStretch());
|
|
401
501
|
}
|
|
402
502
|
|
|
403
503
|
YGValue YGNodeStyleGetMaxHeight(const YGNodeConstRef node) {
|
|
@@ -64,6 +64,9 @@ YG_EXPORT float YGNodeStyleGetFlexShrink(YGNodeConstRef node);
|
|
|
64
64
|
YG_EXPORT void YGNodeStyleSetFlexBasis(YGNodeRef node, float flexBasis);
|
|
65
65
|
YG_EXPORT void YGNodeStyleSetFlexBasisPercent(YGNodeRef node, float flexBasis);
|
|
66
66
|
YG_EXPORT void YGNodeStyleSetFlexBasisAuto(YGNodeRef node);
|
|
67
|
+
YG_EXPORT void YGNodeStyleSetFlexBasisMaxContent(YGNodeRef node);
|
|
68
|
+
YG_EXPORT void YGNodeStyleSetFlexBasisFitContent(YGNodeRef node);
|
|
69
|
+
YG_EXPORT void YGNodeStyleSetFlexBasisStretch(YGNodeRef node);
|
|
67
70
|
YG_EXPORT YGValue YGNodeStyleGetFlexBasis(YGNodeConstRef node);
|
|
68
71
|
|
|
69
72
|
YG_EXPORT void
|
|
@@ -93,7 +96,7 @@ YG_EXPORT void
|
|
|
93
96
|
YGNodeStyleSetGap(YGNodeRef node, YGGutter gutter, float gapLength);
|
|
94
97
|
YG_EXPORT void
|
|
95
98
|
YGNodeStyleSetGapPercent(YGNodeRef node, YGGutter gutter, float gapLength);
|
|
96
|
-
YG_EXPORT
|
|
99
|
+
YG_EXPORT YGValue YGNodeStyleGetGap(YGNodeConstRef node, YGGutter gutter);
|
|
97
100
|
|
|
98
101
|
YG_EXPORT void YGNodeStyleSetBoxSizing(YGNodeRef node, YGBoxSizing boxSizing);
|
|
99
102
|
YG_EXPORT YGBoxSizing YGNodeStyleGetBoxSizing(YGNodeConstRef node);
|
|
@@ -101,27 +104,45 @@ YG_EXPORT YGBoxSizing YGNodeStyleGetBoxSizing(YGNodeConstRef node);
|
|
|
101
104
|
YG_EXPORT void YGNodeStyleSetWidth(YGNodeRef node, float width);
|
|
102
105
|
YG_EXPORT void YGNodeStyleSetWidthPercent(YGNodeRef node, float width);
|
|
103
106
|
YG_EXPORT void YGNodeStyleSetWidthAuto(YGNodeRef node);
|
|
107
|
+
YG_EXPORT void YGNodeStyleSetWidthMaxContent(YGNodeRef node);
|
|
108
|
+
YG_EXPORT void YGNodeStyleSetWidthFitContent(YGNodeRef node);
|
|
109
|
+
YG_EXPORT void YGNodeStyleSetWidthStretch(YGNodeRef node);
|
|
104
110
|
YG_EXPORT YGValue YGNodeStyleGetWidth(YGNodeConstRef node);
|
|
105
111
|
|
|
106
112
|
YG_EXPORT void YGNodeStyleSetHeight(YGNodeRef node, float height);
|
|
107
113
|
YG_EXPORT void YGNodeStyleSetHeightPercent(YGNodeRef node, float height);
|
|
108
114
|
YG_EXPORT void YGNodeStyleSetHeightAuto(YGNodeRef node);
|
|
115
|
+
YG_EXPORT void YGNodeStyleSetHeightMaxContent(YGNodeRef node);
|
|
116
|
+
YG_EXPORT void YGNodeStyleSetHeightFitContent(YGNodeRef node);
|
|
117
|
+
YG_EXPORT void YGNodeStyleSetHeightStretch(YGNodeRef node);
|
|
109
118
|
YG_EXPORT YGValue YGNodeStyleGetHeight(YGNodeConstRef node);
|
|
110
119
|
|
|
111
120
|
YG_EXPORT void YGNodeStyleSetMinWidth(YGNodeRef node, float minWidth);
|
|
112
121
|
YG_EXPORT void YGNodeStyleSetMinWidthPercent(YGNodeRef node, float minWidth);
|
|
122
|
+
YG_EXPORT void YGNodeStyleSetMinWidthMaxContent(YGNodeRef node);
|
|
123
|
+
YG_EXPORT void YGNodeStyleSetMinWidthFitContent(YGNodeRef node);
|
|
124
|
+
YG_EXPORT void YGNodeStyleSetMinWidthStretch(YGNodeRef node);
|
|
113
125
|
YG_EXPORT YGValue YGNodeStyleGetMinWidth(YGNodeConstRef node);
|
|
114
126
|
|
|
115
127
|
YG_EXPORT void YGNodeStyleSetMinHeight(YGNodeRef node, float minHeight);
|
|
116
128
|
YG_EXPORT void YGNodeStyleSetMinHeightPercent(YGNodeRef node, float minHeight);
|
|
129
|
+
YG_EXPORT void YGNodeStyleSetMinHeightMaxContent(YGNodeRef node);
|
|
130
|
+
YG_EXPORT void YGNodeStyleSetMinHeightFitContent(YGNodeRef node);
|
|
131
|
+
YG_EXPORT void YGNodeStyleSetMinHeightStretch(YGNodeRef node);
|
|
117
132
|
YG_EXPORT YGValue YGNodeStyleGetMinHeight(YGNodeConstRef node);
|
|
118
133
|
|
|
119
134
|
YG_EXPORT void YGNodeStyleSetMaxWidth(YGNodeRef node, float maxWidth);
|
|
120
135
|
YG_EXPORT void YGNodeStyleSetMaxWidthPercent(YGNodeRef node, float maxWidth);
|
|
136
|
+
YG_EXPORT void YGNodeStyleSetMaxWidthMaxContent(YGNodeRef node);
|
|
137
|
+
YG_EXPORT void YGNodeStyleSetMaxWidthFitContent(YGNodeRef node);
|
|
138
|
+
YG_EXPORT void YGNodeStyleSetMaxWidthStretch(YGNodeRef node);
|
|
121
139
|
YG_EXPORT YGValue YGNodeStyleGetMaxWidth(YGNodeConstRef node);
|
|
122
140
|
|
|
123
141
|
YG_EXPORT void YGNodeStyleSetMaxHeight(YGNodeRef node, float maxHeight);
|
|
124
142
|
YG_EXPORT void YGNodeStyleSetMaxHeightPercent(YGNodeRef node, float maxHeight);
|
|
143
|
+
YG_EXPORT void YGNodeStyleSetMaxHeightMaxContent(YGNodeRef node);
|
|
144
|
+
YG_EXPORT void YGNodeStyleSetMaxHeightFitContent(YGNodeRef node);
|
|
145
|
+
YG_EXPORT void YGNodeStyleSetMaxHeightStretch(YGNodeRef node);
|
|
125
146
|
YG_EXPORT YGValue YGNodeStyleGetMaxHeight(YGNodeConstRef node);
|
|
126
147
|
|
|
127
148
|
YG_EXPORT void YGNodeStyleSetAspectRatio(YGNodeRef node, float aspectRatio);
|
|
@@ -65,6 +65,9 @@ inline bool operator==(const YGValue& lhs, const YGValue& rhs) {
|
|
|
65
65
|
switch (lhs.unit) {
|
|
66
66
|
case YGUnitUndefined:
|
|
67
67
|
case YGUnitAuto:
|
|
68
|
+
case YGUnitFitContent:
|
|
69
|
+
case YGUnitMaxContent:
|
|
70
|
+
case YGUnitStretch:
|
|
68
71
|
return true;
|
|
69
72
|
case YGUnitPoint:
|
|
70
73
|
case YGUnitPercent:
|
|
@@ -741,7 +741,7 @@ static float distributeFreeSpaceSecondPass(
|
|
|
741
741
|
marginCross;
|
|
742
742
|
const bool isLoosePercentageMeasurement =
|
|
743
743
|
currentLineChild->getProcessedDimension(dimension(crossAxis))
|
|
744
|
-
|
|
744
|
+
.isPercent() &&
|
|
745
745
|
sizingModeCrossDim != SizingMode::StretchFit;
|
|
746
746
|
childCrossSizingMode =
|
|
747
747
|
yoga::isUndefined(childCrossSize) || isLoosePercentageMeasurement
|
|
@@ -1213,10 +1213,10 @@ static void calculateLayoutImpl(
|
|
|
1213
1213
|
const float ownerWidth,
|
|
1214
1214
|
const float ownerHeight,
|
|
1215
1215
|
const bool performLayout,
|
|
1216
|
+
const LayoutPassReason reason,
|
|
1216
1217
|
LayoutData& layoutMarkerData,
|
|
1217
1218
|
const uint32_t depth,
|
|
1218
|
-
const uint32_t generationCount
|
|
1219
|
-
const LayoutPassReason reason) {
|
|
1219
|
+
const uint32_t generationCount) {
|
|
1220
1220
|
yoga::assertFatalWithNode(
|
|
1221
1221
|
node,
|
|
1222
1222
|
yoga::isUndefined(availableWidth)
|
|
@@ -1780,7 +1780,7 @@ static void calculateLayoutImpl(
|
|
|
1780
1780
|
crossAxis,
|
|
1781
1781
|
direction,
|
|
1782
1782
|
unclampedCrossDim,
|
|
1783
|
-
|
|
1783
|
+
crossAxisOwnerSize,
|
|
1784
1784
|
ownerWidth) -
|
|
1785
1785
|
paddingAndBorderAxisCross;
|
|
1786
1786
|
|
|
@@ -2268,10 +2268,10 @@ bool calculateLayoutInternal(
|
|
|
2268
2268
|
ownerWidth,
|
|
2269
2269
|
ownerHeight,
|
|
2270
2270
|
performLayout,
|
|
2271
|
+
reason,
|
|
2271
2272
|
layoutMarkerData,
|
|
2272
2273
|
depth,
|
|
2273
|
-
generationCount
|
|
2274
|
-
reason);
|
|
2274
|
+
generationCount);
|
|
2275
2275
|
|
|
2276
2276
|
layout->lastOwnerDirection = ownerDirection;
|
|
2277
2277
|
layout->configVersion = node->getConfig()->getVersion();
|
|
@@ -17,7 +17,7 @@ FlexLine calculateFlexLine(
|
|
|
17
17
|
yoga::Node* const node,
|
|
18
18
|
const Direction ownerDirection,
|
|
19
19
|
const float ownerWidth,
|
|
20
|
-
const float
|
|
20
|
+
const float mainAxisOwnerSize,
|
|
21
21
|
const float availableInnerWidth,
|
|
22
22
|
const float availableInnerMainDim,
|
|
23
23
|
Node::LayoutableChildren::Iterator& iterator,
|
|
@@ -70,7 +70,7 @@ FlexLine calculateFlexLine(
|
|
|
70
70
|
direction,
|
|
71
71
|
mainAxis,
|
|
72
72
|
child->getLayout().computedFlexBasis,
|
|
73
|
-
|
|
73
|
+
mainAxisOwnerSize,
|
|
74
74
|
ownerWidth)
|
|
75
75
|
.unwrap();
|
|
76
76
|
|
|
@@ -66,7 +66,7 @@ FlexLine calculateFlexLine(
|
|
|
66
66
|
yoga::Node* node,
|
|
67
67
|
Direction ownerDirection,
|
|
68
68
|
float ownerWidth,
|
|
69
|
-
float
|
|
69
|
+
float mainAxisOwnerSize,
|
|
70
70
|
float availableInnerWidth,
|
|
71
71
|
float availableInnerMainDim,
|
|
72
72
|
Node::LayoutableChildren::Iterator& iterator,
|
|
@@ -66,7 +66,8 @@ void roundLayoutResultsToPixelGrid(
|
|
|
66
66
|
yoga::Node* const node,
|
|
67
67
|
const double absoluteLeft,
|
|
68
68
|
const double absoluteTop) {
|
|
69
|
-
const auto pointScaleFactor =
|
|
69
|
+
const auto pointScaleFactor =
|
|
70
|
+
static_cast<double>(node->getConfig()->getPointScaleFactor());
|
|
70
71
|
|
|
71
72
|
const double nodeLeft = node->getLayout().position(PhysicalEdge::Left);
|
|
72
73
|
const double nodeTop = node->getLayout().position(PhysicalEdge::Top);
|
|
@@ -80,7 +81,7 @@ void roundLayoutResultsToPixelGrid(
|
|
|
80
81
|
const double absoluteNodeRight = absoluteNodeLeft + nodeWidth;
|
|
81
82
|
const double absoluteNodeBottom = absoluteNodeTop + nodeHeight;
|
|
82
83
|
|
|
83
|
-
if (pointScaleFactor != 0.
|
|
84
|
+
if (pointScaleFactor != 0.0) {
|
|
84
85
|
// If a node has a custom measure function we never want to round down its
|
|
85
86
|
// size as this could lead to unwanted text truncation.
|
|
86
87
|
const bool textRounding = node->getNodeType() == NodeType::Text;
|
|
@@ -96,12 +97,14 @@ void roundLayoutResultsToPixelGrid(
|
|
|
96
97
|
// We multiply dimension by scale factor and if the result is close to the
|
|
97
98
|
// whole number, we don't have any fraction To verify if the result is close
|
|
98
99
|
// to whole number we want to check both floor and ceil numbers
|
|
100
|
+
|
|
101
|
+
const double scaledNodeWith = nodeWidth * pointScaleFactor;
|
|
99
102
|
const bool hasFractionalWidth =
|
|
100
|
-
!yoga::inexactEquals(
|
|
101
|
-
|
|
103
|
+
!yoga::inexactEquals(round(scaledNodeWith), scaledNodeWith);
|
|
104
|
+
|
|
105
|
+
const double scaledNodeHeight = nodeHeight * pointScaleFactor;
|
|
102
106
|
const bool hasFractionalHeight =
|
|
103
|
-
!yoga::inexactEquals(
|
|
104
|
-
!yoga::inexactEquals(fmod(nodeHeight * pointScaleFactor, 1.0), 1.0);
|
|
107
|
+
!yoga::inexactEquals(round(scaledNodeHeight), scaledNodeHeight);
|
|
105
108
|
|
|
106
109
|
node->setLayoutDimension(
|
|
107
110
|
roundValueToPixelGrid(
|
|
@@ -20,11 +20,14 @@ enum class Unit : uint8_t {
|
|
|
20
20
|
Point = YGUnitPoint,
|
|
21
21
|
Percent = YGUnitPercent,
|
|
22
22
|
Auto = YGUnitAuto,
|
|
23
|
+
MaxContent = YGUnitMaxContent,
|
|
24
|
+
FitContent = YGUnitFitContent,
|
|
25
|
+
Stretch = YGUnitStretch,
|
|
23
26
|
};
|
|
24
27
|
|
|
25
28
|
template <>
|
|
26
29
|
constexpr int32_t ordinalCount<Unit>() {
|
|
27
|
-
return
|
|
30
|
+
return 7;
|
|
28
31
|
}
|
|
29
32
|
|
|
30
33
|
constexpr Unit scopedEnum(YGUnit unscoped) {
|
|
@@ -245,8 +245,8 @@ void Node::setLayoutHadOverflow(bool hadOverflow) {
|
|
|
245
245
|
layout_.setHadOverflow(hadOverflow);
|
|
246
246
|
}
|
|
247
247
|
|
|
248
|
-
void Node::setLayoutDimension(float
|
|
249
|
-
layout_.setDimension(dimension,
|
|
248
|
+
void Node::setLayoutDimension(float lengthValue, Dimension dimension) {
|
|
249
|
+
layout_.setDimension(dimension, lengthValue);
|
|
250
250
|
}
|
|
251
251
|
|
|
252
252
|
// If both left and right are defined, then use left. Otherwise return +left or
|
|
@@ -314,16 +314,16 @@ void Node::setPosition(
|
|
|
314
314
|
crossAxisTrailingEdge);
|
|
315
315
|
}
|
|
316
316
|
|
|
317
|
-
Style::
|
|
318
|
-
Style::
|
|
319
|
-
if (flexBasis.
|
|
317
|
+
Style::SizeLength Node::processFlexBasis() const {
|
|
318
|
+
Style::SizeLength flexBasis = style_.flexBasis();
|
|
319
|
+
if (!flexBasis.isAuto() && !flexBasis.isUndefined()) {
|
|
320
320
|
return flexBasis;
|
|
321
321
|
}
|
|
322
322
|
if (style_.flex().isDefined() && style_.flex().unwrap() > 0.0f) {
|
|
323
|
-
return config_->useWebDefaults() ?
|
|
324
|
-
:
|
|
323
|
+
return config_->useWebDefaults() ? StyleSizeLength::ofAuto()
|
|
324
|
+
: StyleSizeLength::points(0);
|
|
325
325
|
}
|
|
326
|
-
return
|
|
326
|
+
return StyleSizeLength::ofAuto();
|
|
327
327
|
}
|
|
328
328
|
|
|
329
329
|
FloatOptional Node::resolveFlexBasis(
|
|
@@ -172,7 +172,7 @@ class YG_EXPORT Node : public ::YGNode {
|
|
|
172
172
|
return isDirty_;
|
|
173
173
|
}
|
|
174
174
|
|
|
175
|
-
Style::
|
|
175
|
+
Style::SizeLength getProcessedDimension(Dimension dimension) const {
|
|
176
176
|
return processedDimensions_[static_cast<size_t>(dimension)];
|
|
177
177
|
}
|
|
178
178
|
|
|
@@ -259,7 +259,7 @@ class YG_EXPORT Node : public ::YGNode {
|
|
|
259
259
|
uint32_t computedFlexBasisGeneration);
|
|
260
260
|
void setLayoutMeasuredDimension(float measuredDimension, Dimension dimension);
|
|
261
261
|
void setLayoutHadOverflow(bool hadOverflow);
|
|
262
|
-
void setLayoutDimension(float
|
|
262
|
+
void setLayoutDimension(float lengthValue, Dimension dimension);
|
|
263
263
|
void setLayoutDirection(Direction direction);
|
|
264
264
|
void setLayoutMargin(float margin, PhysicalEdge edge);
|
|
265
265
|
void setLayoutBorder(float border, PhysicalEdge edge);
|
|
@@ -268,7 +268,7 @@ class YG_EXPORT Node : public ::YGNode {
|
|
|
268
268
|
void setPosition(Direction direction, float ownerWidth, float ownerHeight);
|
|
269
269
|
|
|
270
270
|
// Other methods
|
|
271
|
-
Style::
|
|
271
|
+
Style::SizeLength processFlexBasis() const;
|
|
272
272
|
FloatOptional resolveFlexBasis(
|
|
273
273
|
Direction direction,
|
|
274
274
|
FlexDirection flexDirection,
|
|
@@ -322,8 +322,8 @@ class YG_EXPORT Node : public ::YGNode {
|
|
|
322
322
|
Node* owner_ = nullptr;
|
|
323
323
|
std::vector<Node*> children_;
|
|
324
324
|
const Config* config_;
|
|
325
|
-
std::array<Style::
|
|
326
|
-
{
|
|
325
|
+
std::array<Style::SizeLength, 2> processedDimensions_{
|
|
326
|
+
{StyleSizeLength::undefined(), StyleSizeLength::undefined()}};
|
|
327
327
|
};
|
|
328
328
|
|
|
329
329
|
inline Node* resolveRef(const YGNodeRef ref) {
|
|
@@ -30,6 +30,7 @@
|
|
|
30
30
|
#include <yoga/enums/Wrap.h>
|
|
31
31
|
#include <yoga/numeric/FloatOptional.h>
|
|
32
32
|
#include <yoga/style/StyleLength.h>
|
|
33
|
+
#include <yoga/style/StyleSizeLength.h>
|
|
33
34
|
#include <yoga/style/StyleValuePool.h>
|
|
34
35
|
|
|
35
36
|
namespace facebook::yoga {
|
|
@@ -37,6 +38,7 @@ namespace facebook::yoga {
|
|
|
37
38
|
class YG_EXPORT Style {
|
|
38
39
|
public:
|
|
39
40
|
using Length = StyleLength;
|
|
41
|
+
using SizeLength = StyleSizeLength;
|
|
40
42
|
|
|
41
43
|
static constexpr float DefaultFlexGrow = 0.0f;
|
|
42
44
|
static constexpr float DefaultFlexShrink = 0.0f;
|
|
@@ -133,10 +135,10 @@ class YG_EXPORT Style {
|
|
|
133
135
|
pool_.store(flexShrink_, value);
|
|
134
136
|
}
|
|
135
137
|
|
|
136
|
-
Style::
|
|
137
|
-
return pool_.
|
|
138
|
+
Style::SizeLength flexBasis() const {
|
|
139
|
+
return pool_.getSize(flexBasis_);
|
|
138
140
|
}
|
|
139
|
-
void setFlexBasis(Style::
|
|
141
|
+
void setFlexBasis(Style::SizeLength value) {
|
|
140
142
|
pool_.store(flexBasis_, value);
|
|
141
143
|
}
|
|
142
144
|
|
|
@@ -175,17 +177,17 @@ class YG_EXPORT Style {
|
|
|
175
177
|
pool_.store(gap_[yoga::to_underlying(gutter)], value);
|
|
176
178
|
}
|
|
177
179
|
|
|
178
|
-
Style::
|
|
179
|
-
return pool_.
|
|
180
|
+
Style::SizeLength dimension(Dimension axis) const {
|
|
181
|
+
return pool_.getSize(dimensions_[yoga::to_underlying(axis)]);
|
|
180
182
|
}
|
|
181
|
-
void setDimension(Dimension axis, Style::
|
|
183
|
+
void setDimension(Dimension axis, Style::SizeLength value) {
|
|
182
184
|
pool_.store(dimensions_[yoga::to_underlying(axis)], value);
|
|
183
185
|
}
|
|
184
186
|
|
|
185
|
-
Style::
|
|
186
|
-
return pool_.
|
|
187
|
+
Style::SizeLength minDimension(Dimension axis) const {
|
|
188
|
+
return pool_.getSize(minDimensions_[yoga::to_underlying(axis)]);
|
|
187
189
|
}
|
|
188
|
-
void setMinDimension(Dimension axis, Style::
|
|
190
|
+
void setMinDimension(Dimension axis, Style::SizeLength value) {
|
|
189
191
|
pool_.store(minDimensions_[yoga::to_underlying(axis)], value);
|
|
190
192
|
}
|
|
191
193
|
|
|
@@ -207,10 +209,10 @@ class YG_EXPORT Style {
|
|
|
207
209
|
: FloatOptional{0.0});
|
|
208
210
|
}
|
|
209
211
|
|
|
210
|
-
Style::
|
|
211
|
-
return pool_.
|
|
212
|
+
Style::SizeLength maxDimension(Dimension axis) const {
|
|
213
|
+
return pool_.getSize(maxDimensions_[yoga::to_underlying(axis)]);
|
|
212
214
|
}
|
|
213
|
-
void setMaxDimension(Dimension axis, Style::
|
|
215
|
+
void setMaxDimension(Dimension axis, Style::SizeLength value) {
|
|
214
216
|
pool_.store(maxDimensions_[yoga::to_underlying(axis)], value);
|
|
215
217
|
}
|
|
216
218
|
|
|
@@ -19,13 +19,11 @@ namespace facebook::yoga {
|
|
|
19
19
|
* 3. A CSS <length-percentage> value:
|
|
20
20
|
* a. <length> value (e.g. 10px)
|
|
21
21
|
* b. <percentage> value of a reference <length>
|
|
22
|
-
* 4. (soon) A math function which returns a <length-percentage> value
|
|
23
22
|
*
|
|
24
23
|
* References:
|
|
25
24
|
* 1. https://www.w3.org/TR/css-values-4/#lengths
|
|
26
25
|
* 2. https://www.w3.org/TR/css-values-4/#percentage-value
|
|
27
26
|
* 3. https://www.w3.org/TR/css-values-4/#mixed-percentages
|
|
28
|
-
* 4. https://www.w3.org/TR/css-values-4/#math
|
|
29
27
|
*/
|
|
30
28
|
class StyleLength {
|
|
31
29
|
public:
|
|
@@ -59,6 +57,14 @@ class StyleLength {
|
|
|
59
57
|
return unit_ == Unit::Undefined;
|
|
60
58
|
}
|
|
61
59
|
|
|
60
|
+
constexpr bool isPoints() const {
|
|
61
|
+
return unit_ == Unit::Point;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
constexpr bool isPercent() const {
|
|
65
|
+
return unit_ == Unit::Percent;
|
|
66
|
+
}
|
|
67
|
+
|
|
62
68
|
constexpr bool isDefined() const {
|
|
63
69
|
return !isUndefined();
|
|
64
70
|
}
|
|
@@ -67,10 +73,6 @@ class StyleLength {
|
|
|
67
73
|
return value_;
|
|
68
74
|
}
|
|
69
75
|
|
|
70
|
-
constexpr Unit unit() const {
|
|
71
|
-
return unit_;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
76
|
constexpr FloatOptional resolve(float referenceLength) {
|
|
75
77
|
switch (unit_) {
|
|
76
78
|
case Unit::Point:
|
|
@@ -90,6 +92,11 @@ class StyleLength {
|
|
|
90
92
|
return value_ == rhs.value_ && unit_ == rhs.unit_;
|
|
91
93
|
}
|
|
92
94
|
|
|
95
|
+
constexpr bool inexactEquals(const StyleLength& other) const {
|
|
96
|
+
return unit_ == other.unit_ &&
|
|
97
|
+
facebook::yoga::inexactEquals(value_, other.value_);
|
|
98
|
+
}
|
|
99
|
+
|
|
93
100
|
private:
|
|
94
101
|
// We intentionally do not allow direct construction using value and unit, to
|
|
95
102
|
// avoid invalid, or redundant combinations.
|
|
@@ -101,7 +108,7 @@ class StyleLength {
|
|
|
101
108
|
};
|
|
102
109
|
|
|
103
110
|
inline bool inexactEquals(const StyleLength& a, const StyleLength& b) {
|
|
104
|
-
return a.
|
|
111
|
+
return a.inexactEquals(b);
|
|
105
112
|
}
|
|
106
113
|
|
|
107
114
|
} // namespace facebook::yoga
|