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.
Files changed (636) hide show
  1. package/Libraries/Animated/animations/Animation.js +22 -1
  2. package/Libraries/Animated/animations/DecayAnimation.js +1 -0
  3. package/Libraries/Animated/animations/SpringAnimation.js +1 -0
  4. package/Libraries/Animated/animations/TimingAnimation.js +1 -0
  5. package/Libraries/Animated/nodes/AnimatedAddition.js +9 -2
  6. package/Libraries/Animated/nodes/AnimatedColor.js +4 -1
  7. package/Libraries/Animated/nodes/AnimatedDiffClamp.js +10 -2
  8. package/Libraries/Animated/nodes/AnimatedDivision.js +9 -2
  9. package/Libraries/Animated/nodes/AnimatedInterpolation.js +5 -1
  10. package/Libraries/Animated/nodes/AnimatedModulo.js +5 -2
  11. package/Libraries/Animated/nodes/AnimatedMultiplication.js +9 -2
  12. package/Libraries/Animated/nodes/AnimatedNode.js +25 -46
  13. package/Libraries/Animated/nodes/AnimatedObject.js +9 -2
  14. package/Libraries/Animated/nodes/AnimatedProps.js +5 -1
  15. package/Libraries/Animated/nodes/AnimatedStyle.js +5 -1
  16. package/Libraries/Animated/nodes/AnimatedSubtraction.js +9 -2
  17. package/Libraries/Animated/nodes/AnimatedTracking.js +5 -1
  18. package/Libraries/Animated/nodes/AnimatedTransform.js +5 -1
  19. package/Libraries/Animated/nodes/AnimatedValue.js +63 -4
  20. package/Libraries/Animated/nodes/AnimatedValueXY.js +3 -1
  21. package/Libraries/Animated/useAnimatedProps.js +14 -56
  22. package/Libraries/AppDelegate/RCTAppDelegate.h +6 -48
  23. package/Libraries/AppDelegate/RCTAppDelegate.mm +5 -230
  24. package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.h +21 -0
  25. package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.mm +123 -0
  26. package/Libraries/AppDelegate/RCTReactNativeFactory.h +98 -0
  27. package/Libraries/AppDelegate/RCTReactNativeFactory.mm +266 -0
  28. package/Libraries/AppDelegate/RCTRootViewFactory.mm +1 -1
  29. package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +0 -1
  30. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.d.ts +1 -1
  31. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +3 -1
  32. package/Libraries/Components/LayoutConformance/LayoutConformance.d.ts +21 -0
  33. package/Libraries/Components/LayoutConformance/LayoutConformance.js +59 -0
  34. package/Libraries/Components/LayoutConformance/LayoutConformanceNativeComponent.js +29 -0
  35. package/Libraries/Components/Pressable/Pressable.d.ts +1 -1
  36. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +1 -0
  37. package/Libraries/Components/TextInput/TextInput.d.ts +5 -0
  38. package/Libraries/Components/TextInput/TextInput.flow.js +6 -0
  39. package/Libraries/Components/TextInput/TextInput.js +6 -0
  40. package/Libraries/Components/View/ViewPropTypes.d.ts +4 -5
  41. package/Libraries/Components/View/ViewPropTypes.js +0 -9
  42. package/Libraries/Core/ReactNativeVersion.js +2 -2
  43. package/Libraries/Core/setUpBatchedBridge.js +1 -16
  44. package/Libraries/EventEmitter/RCTEventEmitter.js +2 -6
  45. package/Libraries/Image/AssetSourceResolver.js +11 -0
  46. package/Libraries/Image/RCTImageView.mm +3 -3
  47. package/Libraries/Inspector/BorderBox.js +26 -14
  48. package/Libraries/Inspector/BoxInspector.js +60 -42
  49. package/Libraries/Inspector/ElementBox.js +55 -48
  50. package/Libraries/Inspector/StyleInspector.js +36 -30
  51. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -2
  52. package/Libraries/Lists/FlatList.d.ts +1 -1
  53. package/Libraries/Modal/Modal.js +2 -0
  54. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.mm +1 -1
  55. package/Libraries/NativeComponent/BaseViewConfig.android.js +0 -2
  56. package/Libraries/NativeComponent/BaseViewConfig.ios.js +0 -2
  57. package/Libraries/Network/RCTNetworking.android.js +24 -16
  58. package/Libraries/Network/RCTNetworking.ios.js +1 -46
  59. package/Libraries/Network/RCTNetworking.js.flow +1 -46
  60. package/Libraries/Network/RCTNetworkingEventDefinitions.flow.js +57 -0
  61. package/Libraries/ReactNative/UIManagerProperties.js +3 -1
  62. package/Libraries/Renderer/implementations/ReactFabric-dev.js +15829 -26461
  63. package/Libraries/Renderer/implementations/ReactFabric-prod.js +3907 -2560
  64. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +4399 -2878
  65. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +16103 -26908
  66. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +4034 -2695
  67. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +4535 -3045
  68. package/Libraries/Renderer/shims/ReactNativeTypes.js +5 -6
  69. package/Libraries/StyleSheet/processTransform.js +6 -0
  70. package/Libraries/Text/Text/NSTextStorage+FontScaling.m +9 -0
  71. package/Libraries/Text/Text.d.ts +6 -1
  72. package/Libraries/Text/TextInput/Multiline/RCTUITextView.h +2 -0
  73. package/Libraries/Text/TextInput/Multiline/RCTUITextView.mm +26 -0
  74. package/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h +2 -0
  75. package/Libraries/Text/TextInput/RCTBaseTextInputView.mm +25 -0
  76. package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm +2 -0
  77. package/Libraries/Text/TextInput/Singleline/RCTUITextField.h +1 -0
  78. package/Libraries/Text/TextInput/Singleline/RCTUITextField.mm +26 -0
  79. package/Libraries/Text/TextProps.js +2 -2
  80. package/Libraries/Utilities/BackHandler.android.js +5 -4
  81. package/Libraries/Utilities/BackHandler.ios.js +3 -4
  82. package/README-core.md +2 -2
  83. package/React/Base/RCTVersion.m +2 -2
  84. package/React/CoreModules/RCTDevSettings.h +0 -1
  85. package/React/CoreModules/RCTDeviceInfo.mm +4 -0
  86. package/React/CxxLogUtils/RCTDefaultCxxLogFunction.mm +3 -5
  87. package/React/DevSupport/RCTInspectorDevServerHelper.mm +1 -6
  88. package/React/DevSupport/RCTPausedInDebuggerOverlayController.mm +3 -5
  89. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec-generated.mm +0 -24
  90. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec.h +0 -28
  91. package/React/FBReactNativeSpec/FBReactNativeSpecJSI-generated.cpp +90 -57
  92. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +241 -104
  93. package/React/Fabric/Mounting/ComponentViews/InputAccessory/RCTInputAccessoryContentView.mm +0 -5
  94. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.mm +39 -10
  95. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.mm +3 -3
  96. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +22 -3
  97. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +5 -0
  98. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +1 -0
  99. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +7 -2
  100. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +3 -0
  101. package/React/Fabric/Mounting/RCTMountingManager.mm +6 -9
  102. package/React/Fabric/RCTScheduler.mm +1 -1
  103. package/React/I18n/strings/da.lproj/fbt_language_pack.bin +0 -0
  104. package/React/Modules/RCTUIManager.mm +1 -2
  105. package/React/React-RCTFBReactNativeSpec.podspec +1 -0
  106. package/React/React-RCTFabric.podspec +3 -2
  107. package/React/Tests/Text/RCTParagraphComponentViewTests.mm +12 -12
  108. package/React/Views/RCTComponentData.mm +1 -5
  109. package/React/Views/RCTLayout.m +3 -0
  110. package/React/Views/RCTShadowView.h +3 -3
  111. package/React/Views/RCTShadowView.m +52 -20
  112. package/React/Views/RCTView.m +6 -2
  113. package/React/Views/RCTViewManager.m +0 -7
  114. package/React/Views/ScrollView/RCTScrollView.m +46 -19
  115. package/React-Core.podspec +1 -1
  116. package/ReactAndroid/api/ReactAndroid.api +120 -227
  117. package/ReactAndroid/build.gradle.kts +8 -13
  118. package/ReactAndroid/cmake-utils/default-app-setup/OnLoad.cpp +2 -0
  119. package/ReactAndroid/external-artifacts/build.gradle.kts +5 -5
  120. package/ReactAndroid/gradle.properties +1 -1
  121. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/{HermesMemoryDumper.java → HermesMemoryDumper.kt} +5 -5
  122. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/{HermesSamplingProfiler.java → HermesSamplingProfiler.kt} +8 -10
  123. package/ReactAndroid/src/main/java/com/facebook/react/DebugCorePackage.java +12 -59
  124. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +12 -1
  125. package/ReactAndroid/src/main/java/com/facebook/react/{ReactPackageLogger.java → ReactPackageLogger.kt} +3 -3
  126. package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.kt +8 -8
  127. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +1 -3
  128. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.kt +6 -0
  129. package/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.kt +5 -3
  130. package/ReactAndroid/src/main/java/com/facebook/react/common/network/OkHttpCallUtil.kt +4 -8
  131. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactHost.kt +11 -5
  132. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactHostDelegate.kt +0 -7
  133. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactNativeHost.kt +1 -3
  134. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.kt +6 -1
  135. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +11 -23
  136. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +3 -30
  137. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/HMRClient.java +4 -1
  138. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorFlags.kt +2 -0
  139. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.java +4 -4
  140. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +21 -26
  141. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerBinding.kt +1 -14
  142. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerProviderImpl.java +2 -11
  143. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.kt +88 -0
  144. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.kt +6 -6
  145. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +24 -0
  146. package/ReactAndroid/src/main/java/com/facebook/react/interfaces/exceptionmanager/ReactJsExceptionHandler.kt +7 -7
  147. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +21 -21
  148. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +36 -36
  149. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +8 -8
  150. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +10 -10
  151. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +40 -40
  152. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +8 -8
  153. package/ReactAndroid/src/main/java/com/facebook/react/internal/interop/InteropEventEmitter.kt +3 -3
  154. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskConfig.kt +55 -0
  155. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.kt +185 -0
  156. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/{HeadlessJsTaskEventListener.java → HeadlessJsTaskEventListener.kt} +5 -6
  157. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskRetryPolicy.kt +20 -0
  158. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/LinearCountingRetryPolicy.kt +4 -4
  159. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/NoRetryPolicy.kt +7 -8
  160. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +8 -5
  161. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/FrescoModule.kt +11 -17
  162. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/ReactOkHttpNetworkFetcher.kt +1 -1
  163. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/CookieJarContainer.kt +16 -0
  164. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.kt +107 -0
  165. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java +18 -19
  166. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ReactCookieJarContainer.kt +48 -0
  167. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +2 -2
  168. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.kt +397 -0
  169. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostDelegate.kt +0 -10
  170. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.java +1 -1
  171. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.java +8 -8
  172. package/ReactAndroid/src/main/java/com/facebook/react/runtime/hermes/HermesInstance.kt +4 -10
  173. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +4 -0
  174. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +13 -12
  175. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerDelegate.kt +15 -12
  176. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{ComponentNameResolver.java → ComponentNameResolver.kt} +4 -5
  177. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/GuardedFrameCallback.kt +5 -2
  178. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +0 -5
  179. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.kt +21 -0
  180. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.kt +18 -0
  181. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{RootView.java → RootView.kt} +11 -12
  182. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewManager.kt +1 -1
  183. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{UIBlock.java → UIBlock.kt} +3 -3
  184. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +2 -5
  185. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +25 -0
  186. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerDelegate.kt +1 -1
  187. package/{Libraries/AppDelegate/RCTAppDelegate+Protected.h → ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerWithGeneratedInterface.kt} +3 -8
  188. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.kt +12 -5
  189. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundDrawable.kt +46 -80
  190. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BorderDrawable.kt +5 -5
  191. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/CSSBackgroundDrawable.java +5 -5
  192. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/CompositeBackgroundDrawable.kt +8 -9
  193. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/{BatchEventDispatchedListener.java → BatchEventDispatchedListener.kt} +3 -3
  194. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventCategoryDef.kt +46 -0
  195. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcher.kt +40 -0
  196. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherImpl.java +2 -6
  197. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherListener.kt +19 -0
  198. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherProvider.kt +23 -0
  199. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +241 -0
  200. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.kt +193 -0
  201. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.kt +44 -0
  202. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.kt +37 -0
  203. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.kt +130 -0
  204. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.kt +1 -1
  205. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEventCoalescingKeyHelper.kt +77 -0
  206. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.kt +196 -0
  207. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderRadiusStyle.kt +16 -17
  208. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.kt +5 -0
  209. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +34 -1
  210. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarContainerView.kt +11 -0
  211. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/{FpsListener.java → FpsListener.kt} +4 -4
  212. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +16 -0
  213. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +3 -3
  214. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewAccessibilityDelegate.kt +136 -0
  215. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +2 -2
  216. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.kt +152 -0
  217. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchShadowNode.kt +52 -0
  218. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +1 -7
  219. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +8 -13
  220. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.kt +50 -0
  221. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ShadowStyleSpan.kt +1 -1
  222. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +1 -9
  223. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.kt +111 -0
  224. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +90 -20
  225. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +2 -2
  226. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNative.java +22 -1
  227. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java +43 -1
  228. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +86 -2
  229. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaProps.java +44 -2
  230. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaUnit.java +7 -1
  231. package/ReactAndroid/src/main/jni/CMakeLists.txt +5 -6
  232. package/ReactAndroid/src/main/jni/first-party/yogajni/CMakeLists.txt +6 -1
  233. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +96 -11
  234. package/ReactAndroid/src/main/jni/react/devsupport/JInspectorFlags.cpp +9 -0
  235. package/ReactAndroid/src/main/jni/react/devsupport/JInspectorFlags.h +1 -0
  236. package/ReactAndroid/src/main/jni/react/fabric/CMakeLists.txt +0 -3
  237. package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +3 -0
  238. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +41 -25
  239. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +0 -2
  240. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +63 -91
  241. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +1 -7
  242. package/ReactAndroid/src/main/jni/react/fabric/MountItem.cpp +9 -9
  243. package/ReactAndroid/src/main/jni/react/fabric/MountItem.h +6 -10
  244. package/ReactAndroid/src/main/jni/react/fabric/OnLoad.cpp +0 -2
  245. package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.cpp +4 -0
  246. package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.h +1 -0
  247. package/ReactAndroid/src/main/jni/react/featureflags/CMakeLists.txt +0 -1
  248. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +49 -49
  249. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +11 -11
  250. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/OnLoad.cpp +1 -4
  251. package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +0 -1
  252. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +0 -1
  253. package/ReactAndroid/src/main/jni/react/jni/JSLogging.cpp +4 -9
  254. package/ReactAndroid/src/main/jni/react/jni/JSLogging.h +0 -4
  255. package/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.cpp +3 -4
  256. package/ReactAndroid/src/main/jni/react/jni/ProxyExecutor.cpp +3 -4
  257. package/ReactAndroid/src/main/jni/react/jni/WritableNativeArray.cpp +6 -0
  258. package/ReactAndroid/src/main/jni/react/jni/WritableNativeArray.h +1 -0
  259. package/ReactAndroid/src/main/jni/react/jni/WritableNativeMap.cpp +6 -0
  260. package/ReactAndroid/src/main/jni/react/jni/WritableNativeMap.h +1 -0
  261. package/ReactAndroid/src/main/jni/react/jscexecutor/OnLoad.cpp +3 -7
  262. package/ReactAndroid/src/main/jni/react/mapbuffer/CMakeLists.txt +0 -2
  263. package/ReactAndroid/src/main/jni/react/reactnativeblob/CMakeLists.txt +0 -1
  264. package/ReactAndroid/src/main/jni/react/reactperflogger/CMakeLists.txt +0 -1
  265. package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/JHermesInstance.cpp +2 -8
  266. package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/JHermesInstance.h +2 -8
  267. package/ReactAndroid/src/main/jni/react/runtime/jni/CMakeLists.txt +0 -1
  268. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactExceptionManager.cpp +18 -17
  269. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactExceptionManager.h +1 -1
  270. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +1 -1
  271. package/ReactAndroid/src/main/jni/react/turbomodule/CMakeLists.txt +0 -2
  272. package/ReactAndroid/src/main/jni/react/uimanager/CMakeLists.txt +0 -1
  273. package/ReactAndroid/src/main/res/views/view/values/ids.xml +5 -0
  274. package/ReactCommon/React-Fabric.podspec +8 -0
  275. package/ReactCommon/React-FabricComponents.podspec +2 -2
  276. package/ReactCommon/React-FabricImage.podspec +4 -1
  277. package/ReactCommon/cxxreact/CxxNativeModule.cpp +3 -3
  278. package/ReactCommon/cxxreact/Instance.cpp +6 -6
  279. package/ReactCommon/cxxreact/JSBigString.cpp +1 -1
  280. package/ReactCommon/cxxreact/JSExecutor.cpp +4 -2
  281. package/ReactCommon/cxxreact/ModuleRegistry.cpp +6 -6
  282. package/ReactCommon/cxxreact/NativeToJsBridge.cpp +3 -3
  283. package/ReactCommon/cxxreact/ReactNativeVersion.h +2 -2
  284. package/ReactCommon/cxxreact/SystraceSection.h +8 -141
  285. package/ReactCommon/cxxreact/TraceSection.h +181 -0
  286. package/ReactCommon/cxxreact/tests/jsbigstring.cpp +19 -0
  287. package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +2 -2
  288. package/ReactCommon/jsc/JSCRuntime.cpp +0 -2
  289. package/ReactCommon/jsc/React-jsc.podspec +1 -1
  290. package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +27 -19
  291. package/ReactCommon/jserrorhandler/JsErrorHandler.h +5 -3
  292. package/ReactCommon/jserrorhandler/StackTraceParser.cpp +16 -16
  293. package/ReactCommon/jserrorhandler/StackTraceParser.h +1 -1
  294. package/ReactCommon/jserrorhandler/tests/StackTraceParserTest.cpp +252 -246
  295. package/ReactCommon/jsi/jsi/CMakeLists.txt +0 -3
  296. package/ReactCommon/jsi/jsi/JSIDynamic.cpp +1 -1
  297. package/ReactCommon/jsi/jsi/JSIDynamic.h +1 -1
  298. package/ReactCommon/jsi/jsi/decorator.h +61 -0
  299. package/ReactCommon/jsi/jsi/jsi-inl.h +4 -0
  300. package/ReactCommon/jsi/jsi/jsi.cpp +37 -0
  301. package/ReactCommon/jsi/jsi/jsi.h +81 -0
  302. package/ReactCommon/jsi/jsi/test/testlib.cpp +88 -0
  303. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +9 -9
  304. package/ReactCommon/jsinspector-modern/CMakeLists.txt +1 -1
  305. package/ReactCommon/jsinspector-modern/HostAgent.cpp +3 -7
  306. package/ReactCommon/jsinspector-modern/HostTarget.cpp +22 -1
  307. package/ReactCommon/jsinspector-modern/HostTarget.h +1 -1
  308. package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +19 -4
  309. package/ReactCommon/jsinspector-modern/InspectorFlags.h +14 -0
  310. package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +21 -10
  311. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +12 -11
  312. package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.cpp +2 -16
  313. package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.cpp +14 -14
  314. package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.h +7 -13
  315. package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestGenericEngineAdapter.cpp +1 -1
  316. package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestHermesEngineAdapter.cpp +1 -3
  317. package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.cpp +3 -3
  318. package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.h +1 -1
  319. package/ReactCommon/jsinspector-modern/tracing/CMakeLists.txt +26 -0
  320. package/ReactCommon/jsinspector-modern/tracing/CdpTracing.h +21 -0
  321. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.cpp +187 -0
  322. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.h +126 -0
  323. package/ReactCommon/jsinspector-modern/tracing/React-jsinspectortracing.podspec +56 -0
  324. package/ReactCommon/react/featureflags/CMakeLists.txt +3 -0
  325. package/ReactCommon/react/featureflags/React-featureflags.podspec +7 -0
  326. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +15 -15
  327. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +18 -18
  328. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +88 -88
  329. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +9 -9
  330. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +17 -17
  331. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +454 -0
  332. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +5 -5
  333. package/ReactCommon/react/featureflags/tests/ReactNativeFeatureFlagsDynamicProviderTest.cpp +78 -0
  334. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +2 -3
  335. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +3 -3
  336. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.h +1 -5
  337. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +13 -23
  338. package/ReactCommon/react/nativemodule/cputime/CPUTime.h +55 -0
  339. package/ReactCommon/react/nativemodule/cputime/NativeCPUTime.cpp +35 -0
  340. package/ReactCommon/react/nativemodule/cputime/NativeCPUTime.h +28 -0
  341. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +18 -18
  342. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +8 -8
  343. package/ReactCommon/react/nativemodule/idlecallbacks/React-idlecallbacksnativemodule.podspec +1 -0
  344. package/ReactCommon/react/nativemodule/intersectionobserver/NativeIntersectionObserver.cpp +5 -8
  345. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +3 -3
  346. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +22 -43
  347. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.h +0 -15
  348. package/ReactCommon/react/performance/timeline/CMakeLists.txt +1 -0
  349. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +22 -2
  350. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.h +9 -4
  351. package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +1 -0
  352. package/ReactCommon/react/renderer/animations/CMakeLists.txt +0 -1
  353. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +1 -1
  354. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +25 -19
  355. package/ReactCommon/react/renderer/animations/primitives.h +1 -1
  356. package/ReactCommon/react/renderer/animations/utils.h +3 -4
  357. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +31 -9
  358. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +81 -31
  359. package/ReactCommon/react/renderer/componentregistry/CMakeLists.txt +0 -1
  360. package/ReactCommon/react/renderer/components/image/ImageComponentDescriptor.cpp +4 -1
  361. package/ReactCommon/react/renderer/components/image/ImageComponentDescriptor.h +2 -0
  362. package/ReactCommon/react/renderer/components/image/ImageEventEmitter.cpp +2 -2
  363. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +5 -5
  364. package/ReactCommon/react/renderer/components/image/ImageProps.h +1 -1
  365. package/ReactCommon/react/renderer/components/image/ImageShadowNode.cpp +38 -10
  366. package/ReactCommon/react/renderer/components/image/ImageShadowNode.h +1 -1
  367. package/ReactCommon/react/renderer/components/image/ImageState.cpp +2 -3
  368. package/ReactCommon/react/renderer/components/image/ImageState.h +9 -6
  369. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarComponentDescriptor.h +0 -4
  370. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarShadowNode.h +7 -0
  371. package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +2 -2
  372. package/ReactCommon/react/renderer/components/scrollview/CMakeLists.txt +2 -2
  373. package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.cpp +33 -0
  374. package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.h +17 -0
  375. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.cpp +3 -2
  376. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.h +2 -1
  377. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchComponentDescriptor.h +0 -4
  378. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchShadowNode.h +7 -0
  379. package/ReactCommon/react/renderer/{uimanager/bindingUtils.h → components/text/ParagraphComponentDescriptor.cpp} +2 -8
  380. package/ReactCommon/react/renderer/components/text/ParagraphComponentDescriptor.h +10 -7
  381. package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.cpp +23 -0
  382. package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.h +8 -1
  383. package/ReactCommon/react/renderer/components/textinput/BaseTextInputShadowNode.h +243 -0
  384. package/ReactCommon/react/renderer/components/textinput/TextInputState.cpp +71 -0
  385. package/ReactCommon/react/renderer/components/textinput/{platform/ios/react/renderer/components/iostextinput/TextInputState.h → TextInputState.h} +27 -7
  386. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputComponentDescriptor.h +6 -13
  387. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputProps.h +0 -2
  388. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +145 -144
  389. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h +27 -29
  390. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputComponentDescriptor.h +4 -5
  391. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputProps.cpp +0 -26
  392. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputProps.h +0 -6
  393. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputShadowNode.cpp +0 -147
  394. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputShadowNode.h +5 -57
  395. package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +60 -70
  396. package/ReactCommon/react/renderer/components/view/BaseViewProps.h +3 -3
  397. package/ReactCommon/react/renderer/components/view/LayoutConformanceComponentDescriptor.h +18 -0
  398. package/ReactCommon/react/renderer/components/view/LayoutConformanceProps.h +36 -0
  399. package/ReactCommon/react/renderer/components/view/LayoutConformanceShadowNode.h +28 -0
  400. package/ReactCommon/react/renderer/components/view/ViewPropsInterpolation.h +4 -0
  401. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +0 -1
  402. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +21 -22
  403. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +3 -2
  404. package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +3 -1
  405. package/ReactCommon/react/renderer/components/view/conversions.h +117 -43
  406. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +3 -2
  407. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.h +3 -1
  408. package/ReactCommon/react/renderer/components/view/primitives.h +1 -1
  409. package/ReactCommon/react/renderer/components/view/tests/LayoutTest.cpp +12 -12
  410. package/ReactCommon/react/renderer/core/CMakeLists.txt +0 -1
  411. package/ReactCommon/react/renderer/core/ComponentDescriptor.cpp +4 -2
  412. package/ReactCommon/react/renderer/core/ComponentDescriptor.h +4 -2
  413. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +17 -2
  414. package/ReactCommon/react/renderer/core/DynamicPropsUtilities.cpp +26 -0
  415. package/ReactCommon/react/renderer/core/DynamicPropsUtilities.h +4 -0
  416. package/ReactCommon/react/renderer/core/EventEmitter.cpp +3 -3
  417. package/ReactCommon/react/renderer/core/Props.cpp +16 -5
  418. package/ReactCommon/react/renderer/core/Props.h +11 -4
  419. package/ReactCommon/react/renderer/core/RawProps.cpp +30 -5
  420. package/ReactCommon/react/renderer/core/RawProps.h +10 -1
  421. package/ReactCommon/react/renderer/core/RawPropsParser.cpp +7 -2
  422. package/ReactCommon/react/renderer/core/RawPropsParser.h +7 -1
  423. package/ReactCommon/react/renderer/core/RawPropsPrimitives.h +1 -0
  424. package/ReactCommon/react/renderer/core/RawValue.h +315 -22
  425. package/ReactCommon/react/renderer/core/tests/DynamicPropsUtilitiesTest.cpp +95 -4
  426. package/ReactCommon/react/renderer/debug/debugStringConvertibleUtils.h +19 -4
  427. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +7 -1
  428. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +7 -5
  429. package/ReactCommon/react/renderer/graphics/Transform.cpp +11 -2
  430. package/ReactCommon/react/renderer/graphics/Transform.h +2 -1
  431. package/ReactCommon/react/renderer/imagemanager/CMakeLists.txt +4 -2
  432. package/ReactCommon/react/renderer/imagemanager/ImageManager.h +7 -0
  433. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.cpp +43 -0
  434. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.h +36 -0
  435. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +43 -0
  436. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageRequestParams.h +94 -0
  437. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/conversions.h +101 -0
  438. package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageManager.cpp +9 -1
  439. package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageRequestParams.h +30 -0
  440. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/ImageManager.mm +9 -0
  441. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/ImageRequestParams.h +30 -0
  442. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTImageManager.mm +2 -2
  443. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +187 -152
  444. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +4 -5
  445. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +10 -16
  446. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.cpp +12 -12
  447. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.h +44 -14
  448. package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.cpp +8 -4
  449. package/ReactCommon/react/renderer/mounting/stubs/stubs.cpp +1 -1
  450. package/ReactCommon/react/renderer/mounting/tests/MountingTest.cpp +116 -193
  451. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +0 -3
  452. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserver.cpp +7 -4
  453. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserver.h +2 -1
  454. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverManager.cpp +7 -8
  455. package/ReactCommon/react/renderer/observers/mutation/MutationObserverManager.cpp +6 -6
  456. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +3 -1
  457. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +2 -0
  458. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Legacy.cpp +11 -11
  459. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.cpp +14 -15
  460. package/ReactCommon/react/renderer/runtimescheduler/SchedulerPriorityUtils.h +4 -3
  461. package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +0 -1
  462. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +6 -37
  463. package/ReactCommon/react/renderer/scheduler/Scheduler.h +0 -3
  464. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +15 -11
  465. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +1 -0
  466. package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +56 -2
  467. package/ReactCommon/react/renderer/scheduler/SurfaceManager.h +23 -3
  468. package/ReactCommon/react/renderer/textlayoutmanager/CMakeLists.txt +1 -2
  469. package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutManager.cpp +26 -0
  470. package/ReactCommon/react/renderer/textlayoutmanager/{platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h → TextLayoutManager.h} +18 -17
  471. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +77 -89
  472. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.cpp +6 -10
  473. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.mm +6 -2
  474. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTFontUtils.mm +23 -1
  475. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +11 -32
  476. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.mm +9 -23
  477. package/ReactCommon/react/renderer/uimanager/AppRegistryBinding.cpp +88 -0
  478. package/ReactCommon/react/renderer/uimanager/AppRegistryBinding.h +50 -0
  479. package/ReactCommon/react/renderer/uimanager/CMakeLists.txt +0 -1
  480. package/ReactCommon/react/renderer/uimanager/SurfaceRegistryBinding.h +3 -40
  481. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +23 -18
  482. package/ReactCommon/react/renderer/uimanager/UIManager.h +2 -0
  483. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +2 -31
  484. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +0 -4
  485. package/ReactCommon/react/renderer/uimanager/tests/PointerEventsProcessorTest.cpp +10 -10
  486. package/ReactCommon/react/runtime/CMakeLists.txt +0 -1
  487. package/ReactCommon/react/runtime/React-RuntimeHermes.podspec +1 -2
  488. package/ReactCommon/react/runtime/ReactInstance.cpp +43 -57
  489. package/ReactCommon/react/runtime/TimerManager.cpp +4 -4
  490. package/ReactCommon/react/runtime/hermes/HermesInstance.cpp +5 -1
  491. package/ReactCommon/react/runtime/hermes/HermesInstance.h +0 -2
  492. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHermesInstance.h +2 -6
  493. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHermesInstance.mm +6 -15
  494. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +3 -1
  495. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +15 -15
  496. package/ReactCommon/react/runtime/tests/cxx/ReactInstanceTest.cpp +5 -4
  497. package/ReactCommon/react/test_utils/shadowTreeGeneration.h +0 -3
  498. package/ReactCommon/reactperflogger/fusebox/FuseboxTracer.cpp +33 -17
  499. package/ReactCommon/reactperflogger/fusebox/FuseboxTracer.h +8 -2
  500. package/ReactCommon/reactperflogger/reactperflogger/{ReactPerfLogger.cpp → ReactPerfettoLogger.cpp} +25 -24
  501. package/ReactCommon/reactperflogger/reactperflogger/{ReactPerfLogger.h → ReactPerfettoLogger.h} +9 -9
  502. package/ReactCommon/yoga/yoga/YGEnums.cpp +6 -0
  503. package/ReactCommon/yoga/yoga/YGEnums.h +4 -1
  504. package/ReactCommon/yoga/yoga/YGNodeStyle.cpp +124 -24
  505. package/ReactCommon/yoga/yoga/YGNodeStyle.h +22 -1
  506. package/ReactCommon/yoga/yoga/YGValue.h +3 -0
  507. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +6 -6
  508. package/ReactCommon/yoga/yoga/algorithm/FlexLine.cpp +2 -2
  509. package/ReactCommon/yoga/yoga/algorithm/FlexLine.h +1 -1
  510. package/ReactCommon/yoga/yoga/algorithm/PixelGrid.cpp +9 -6
  511. package/ReactCommon/yoga/yoga/enums/Unit.h +4 -1
  512. package/ReactCommon/yoga/yoga/node/Node.cpp +8 -8
  513. package/ReactCommon/yoga/yoga/node/Node.h +5 -5
  514. package/ReactCommon/yoga/yoga/style/Style.h +14 -12
  515. package/ReactCommon/yoga/yoga/style/StyleLength.h +14 -7
  516. package/ReactCommon/yoga/yoga/style/StyleSizeLength.h +139 -0
  517. package/ReactCommon/yoga/yoga/style/StyleValueHandle.h +8 -0
  518. package/ReactCommon/yoga/yoga/style/StyleValuePool.h +60 -3
  519. package/gradle/libs.versions.toml +6 -2
  520. package/index.js +5 -0
  521. package/package.json +12 -13
  522. package/react-native.config.js +6 -0
  523. package/scripts/cocoapods/codegen_utils.rb +4 -4
  524. package/scripts/cocoapods/new_architecture.rb +3 -3
  525. package/scripts/cocoapods/utils.rb +4 -3
  526. package/scripts/codegen/generate-artifacts-executor.js +8 -4
  527. package/scripts/generate-codegen-artifacts.js +6 -1
  528. package/scripts/react-native-xcode.sh +1 -1
  529. package/scripts/react_native_pods.rb +3 -3
  530. package/scripts/xcode/ccache-clang++.sh +1 -1
  531. package/scripts/xcode/ccache-clang.sh +1 -1
  532. package/sdks/.hermesversion +1 -1
  533. package/sdks/hermes-engine/utils/build-hermes-xcode.sh +1 -1
  534. package/sdks/hermesc/linux64-bin/hermesc +0 -0
  535. package/sdks/hermesc/osx-bin/hermes +0 -0
  536. package/sdks/hermesc/osx-bin/hermesc +0 -0
  537. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  538. package/src/private/animated/NativeAnimatedValidation.js +1 -1
  539. package/src/private/featureflags/README.md +5 -0
  540. package/src/private/featureflags/ReactNativeFeatureFlags.js +33 -27
  541. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +5 -5
  542. package/src/private/renderer/errorhandling/ErrorHandlers.js +12 -55
  543. package/src/private/specs/modules/{NativeJSCSamplingProfiler.js → NativeCPUTime.js} +7 -2
  544. package/src/private/specs/modules/NativeFantom.js +37 -0
  545. package/src/private/utilities/ensureInstance.js +21 -0
  546. package/src/private/webapis/dom/nodes/ReactNativeElement.js +49 -6
  547. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +17 -9
  548. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +11 -11
  549. package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +1 -1
  550. package/src/private/webapis/intersectionobserver/IntersectionObserverManager.js +1 -1
  551. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +1 -0
  552. package/src/private/webapis/performance/Performance.js +0 -12
  553. package/src/private/webapis/performance/specs/NativePerformance.js +0 -11
  554. package/types/index.d.ts +1 -0
  555. package/types/public/ReactNativeTVTypes.d.ts +49 -51
  556. package/Libraries/HeapCapture/HeapCapture.js +0 -29
  557. package/Libraries/HeapCapture/NativeJSCHeapCapture.js +0 -13
  558. package/Libraries/Performance/NativeJSCSamplingProfiler.js +0 -13
  559. package/Libraries/Performance/SamplingProfiler.js +0 -39
  560. package/Libraries/ReactNative/__mocks__/FabricUIManager.js +0 -334
  561. package/React/Inspector/RCTInspectorPackagerConnection.m +0 -325
  562. package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedResultAsyncTask.java +0 -50
  563. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorPackagerConnection.java +0 -314
  564. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSCHeapCapture.java +0 -76
  565. package/ReactAndroid/src/main/java/com/facebook/react/fabric/EmptyReactNativeConfig.kt +0 -36
  566. package/ReactAndroid/src/main/java/com/facebook/react/fabric/GuardedFrameCallback.kt +0 -33
  567. package/ReactAndroid/src/main/java/com/facebook/react/fabric/ReactNativeConfig.kt +0 -54
  568. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java +0 -83
  569. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskConfig.java +0 -121
  570. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.java +0 -214
  571. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskRetryPolicy.java +0 -22
  572. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/XmlFormat.kt +0 -143
  573. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/CookieJarContainer.java +0 -17
  574. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +0 -124
  575. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ReactCookieJarContainer.java +0 -58
  576. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.java +0 -422
  577. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FabricViewStateManager.java +0 -98
  578. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.java +0 -25
  579. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.java +0 -20
  580. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventCategoryDef.java +0 -45
  581. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcher.java +0 -37
  582. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherListener.java +0 -19
  583. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherProvider.java +0 -24
  584. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.java +0 -257
  585. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.java +0 -210
  586. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.java +0 -43
  587. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.java +0 -39
  588. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java +0 -165
  589. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEventCoalescingKeyHelper.java +0 -85
  590. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.java +0 -204
  591. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewAccessibilityDelegate.java +0 -161
  592. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.java +0 -232
  593. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.java +0 -70
  594. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/LegacyLineHeightSpan.kt +0 -69
  595. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.java +0 -114
  596. package/ReactAndroid/src/main/jni/first-party/fb/CMakeLists.txt +0 -31
  597. package/ReactAndroid/src/main/jni/first-party/fb/assert.cpp +0 -39
  598. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/ALog.h +0 -82
  599. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/Build.h +0 -31
  600. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/Countable.h +0 -45
  601. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/Doxyfile +0 -18
  602. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/Environment.h +0 -93
  603. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/ProgramLocation.h +0 -58
  604. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/RefPtr.h +0 -266
  605. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/StaticInitialized.h +0 -37
  606. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/ThreadLocal.h +0 -112
  607. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/assert.h +0 -43
  608. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/log.h +0 -350
  609. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/noncopyable.h +0 -20
  610. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/nonmovable.h +0 -20
  611. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/visibility.h +0 -10
  612. package/ReactAndroid/src/main/jni/first-party/fb/log.cpp +0 -102
  613. package/ReactAndroid/src/main/jni/react/fabric/JEmptyReactNativeConfig.cpp +0 -47
  614. package/ReactAndroid/src/main/jni/react/fabric/JEmptyReactNativeConfig.h +0 -38
  615. package/ReactAndroid/src/main/jni/react/fabric/ReactNativeConfigHolder.cpp +0 -41
  616. package/ReactAndroid/src/main/jni/react/fabric/ReactNativeConfigHolder.h +0 -35
  617. package/ReactAndroid/src/main/jni/react/perftests/OnLoad.cpp +0 -243
  618. package/ReactAndroid/src/main/jni/third-party/jsc/CMakeLists.txt +0 -15
  619. package/ReactCommon/React-nativeconfig.podspec +0 -36
  620. package/ReactCommon/cxxreact/tests/main.cpp +0 -15
  621. package/ReactCommon/react/config/CMakeLists.txt +0 -20
  622. package/ReactCommon/react/config/ReactNativeConfig.cpp +0 -28
  623. package/ReactCommon/react/config/ReactNativeConfig.h +0 -42
  624. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputState.cpp +0 -95
  625. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputState.h +0 -80
  626. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputState.cpp +0 -10
  627. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.h +0 -78
  628. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.h +0 -69
  629. package/ReactCommon/react/renderer/uimanager/SurfaceRegistryBinding.cpp +0 -123
  630. package/ReactCommon/react/renderer/uimanager/bindingUtils.cpp +0 -79
  631. package/src/private/webapis/dom/nodes/specs/__mocks__/NativeDOMMock.js +0 -413
  632. package/src/private/webapis/intersectionobserver/specs/__mocks__/NativeIntersectionObserver.js +0 -181
  633. package/src/private/webapis/mutationobserver/specs/__mocks__/NativeMutationObserver.js +0 -327
  634. /package/ReactCommon/react/renderer/components/scrollview/{AndroidHorizontalScrollContentViewComponentDescriptor.h → platform/android/react/renderer/components/scrollview/AndroidHorizontalScrollContentViewComponentDescriptor.h} +0 -0
  635. /package/ReactCommon/react/renderer/components/scrollview/{AndroidHorizontalScrollContentViewShadowNode.cpp → platform/android/react/renderer/components/scrollview/AndroidHorizontalScrollContentViewShadowNode.cpp} +0 -0
  636. /package/ReactCommon/react/renderer/components/scrollview/{AndroidHorizontalScrollContentViewShadowNode.h → platform/android/react/renderer/components/scrollview/AndroidHorizontalScrollContentViewShadowNode.h} +0 -0
@@ -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
+ }
@@ -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
- void onChildStartedNativeGesture(View childView, MotionEvent ev);
20
+ public fun onChildStartedNativeGesture(childView: View?, ev: MotionEvent)
21
21
 
22
- /**
23
- * @deprecated
24
- */
25
- @Deprecated
26
- default void onChildStartedNativeGesture(MotionEvent ev) {
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
- void onChildEndedNativeGesture(View childView, MotionEvent ev);
33
+ public fun onChildEndedNativeGesture(childView: View, ev: MotionEvent)
35
34
 
36
- void handleException(Throwable t);
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
- public class RootViewManager : ViewGroupManager<ViewGroup>() {
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 void execute(NativeViewHierarchyManager nativeViewHierarchyManager);
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
- if (!ReactNativeFeatureFlags.enableFabricRendererExclusively()) {
962
- ReactChoreographer.getInstance()
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
- #if defined(__cplusplus)
8
+ package com.facebook.react.uimanager
9
9
 
10
- #import <ReactCommon/RCTTurboModuleManager.h>
11
- #import "RCTAppDelegate.h"
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(
@@ -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 gapBetweenPaths = 0.8f
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 paddingBoxRect: RectF = RectF()
60
- private var paddingBoxRenderPath: Path? = null
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
- innerRadiusX =
116
- getInnerBorderRadius(
117
- computedBorderRadius?.topLeft?.horizontal?.dpToPx(), computedBorderInsets?.left)
118
- innerRadiusY =
119
- getInnerBorderRadius(
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(bounds, backgroundPaint)
119
+ canvas.drawRect(backgroundRect, backgroundPaint)
124
120
  } else {
125
- canvas.drawPath(checkNotNull(paddingBoxRenderPath), backgroundPaint)
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(paddingBoxRect, innerRadiusX, innerRadiusY, backgroundPaint)
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(paddingBoxRect, backgroundPaint)
134
+ canvas.drawRect(backgroundRect, backgroundPaint)
135
135
  } else {
136
- canvas.drawPath(checkNotNull(paddingBoxRenderPath), backgroundPaint)
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
- paddingBoxRenderPath = paddingBoxRenderPath ?: Path()
192
- paddingBoxRenderPath?.reset()
190
+ backgroundRenderPath = backgroundRenderPath ?: Path()
191
+ backgroundRenderPath?.reset()
193
192
  }
194
193
 
195
- // only close gap between border and background if we draw the border, otherwise
196
- // we wind up pixelating small pixel-radius curves
197
- var pathAdjustment = 0f
198
- if (computedBorderInsets != null &&
199
- (computedBorderInsets?.left != 0f ||
200
- computedBorderInsets?.top != 0f ||
201
- computedBorderInsets?.right != 0f ||
202
- computedBorderInsets?.bottom != 0f)) {
203
- pathAdjustment = gapBetweenPaths
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
- val innerTopLeftRadiusX =
218
- getInnerBorderRadius(
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
- innerTopLeftRadiusX,
246
- innerTopLeftRadiusY,
247
- innerTopRightRadiusX,
248
- innerTopRightRadiusY,
249
- innerBottomRightRadiusX,
250
- innerBottomRightRadiusY,
251
- innerBottomLeftRadiusX,
252
- innerBottomLeftRadiusY,
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
- minOf(
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 its color is non transparent
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
@@ -646,13 +646,13 @@ public class CSSBackgroundDrawable extends Drawable {
646
646
  colorTop = colorBlockStart;
647
647
  }
648
648
 
649
- // Clip border ONLY if its color is non transparent
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
- && Color.alpha(colorTop) != 0
653
- && Color.alpha(colorRight) != 0
654
- && Color.alpha(colorBottom) != 0
655
- && Color.alpha(borderColor) != 0) {
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;
@@ -16,7 +16,6 @@ import android.graphics.drawable.LayerDrawable
16
16
  import android.os.Build
17
17
  import com.facebook.react.common.annotations.UnstableReactNativeAPI
18
18
  import com.facebook.react.internal.featureflags.ReactNativeFeatureFlags
19
- import com.facebook.react.uimanager.PixelUtil.dpToPx
20
19
  import com.facebook.react.uimanager.style.BorderInsets
21
20
  import com.facebook.react.uimanager.style.BorderRadiusStyle
22
21
 
@@ -201,14 +200,14 @@ internal class CompositeBackgroundDrawable(
201
200
  pathForOutline.addRoundRect(
202
201
  RectF(bounds),
203
202
  floatArrayOf(
204
- (it.topLeft.horizontal + (computedBorderInsets?.left ?: 0f)).dpToPx(),
205
- (it.topLeft.vertical + (computedBorderInsets?.top ?: 0f)).dpToPx(),
206
- (it.topRight.horizontal + (computedBorderInsets?.right ?: 0f)).dpToPx(),
207
- (it.topRight.vertical + (computedBorderInsets?.top ?: 0f)).dpToPx(),
208
- (it.bottomRight.horizontal + (computedBorderInsets?.right ?: 0f)).dpToPx(),
209
- (it.bottomRight.vertical + (computedBorderInsets?.bottom ?: 0f)).dpToPx(),
210
- (it.bottomLeft.horizontal + (computedBorderInsets?.left ?: 0f)).dpToPx(),
211
- (it.bottomLeft.vertical + (computedBorderInsets?.bottom ?: 0f)).dpToPx()),
203
+ it.topLeft.horizontal + (computedBorderInsets?.left ?: 0f),
204
+ it.topLeft.vertical + (computedBorderInsets?.top ?: 0f),
205
+ it.topRight.horizontal + (computedBorderInsets?.right ?: 0f),
206
+ it.topRight.vertical + (computedBorderInsets?.top ?: 0f),
207
+ it.bottomRight.horizontal + (computedBorderInsets?.right ?: 0f),
208
+ it.bottomRight.vertical + (computedBorderInsets?.bottom ?: 0f),
209
+ it.bottomLeft.horizontal + (computedBorderInsets?.left ?: 0f),
210
+ it.bottomLeft.vertical) + (computedBorderInsets?.bottom ?: 0f),
212
211
  Path.Direction.CW)
213
212
  }
214
213
 
@@ -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.events;
8
+ package com.facebook.react.uimanager.events
9
9
 
10
- public interface BatchEventDispatchedListener {
10
+ public fun interface BatchEventDispatchedListener {
11
11
 
12
12
  /** Called after a batch of low priority events has been dispatched. */
13
- void onBatchEventDispatched();
13
+ public fun onBatchEventDispatched()
14
14
  }
@@ -0,0 +1,46 @@
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.events
9
+
10
+ import androidx.annotation.IntDef
11
+
12
+ /**
13
+ * Kotlin/Java specific declaration of the `RawEvent::Category` enum. Keep in sync with
14
+ * `renderer/core/RawEvent.h`.
15
+ */
16
+ @IntDef(
17
+ value =
18
+ [
19
+ EventCategoryDef.CONTINUOUS_START,
20
+ EventCategoryDef.CONTINUOUS_END,
21
+ EventCategoryDef.UNSPECIFIED,
22
+ EventCategoryDef.DISCRETE,
23
+ EventCategoryDef.CONTINUOUS])
24
+ @Retention(AnnotationRetention.SOURCE)
25
+ public annotation class EventCategoryDef {
26
+ public companion object {
27
+ /** Start of a continuous event. To be used with touchStart. */
28
+ public const val CONTINUOUS_START: Int = 0
29
+
30
+ /** End of a continuous event. To be used with touchEnd. */
31
+ public const val CONTINUOUS_END: Int = 1
32
+
33
+ /**
34
+ * Priority for this event will be determined from other events in the queue. If it is triggered
35
+ * by continuous event, its priority will be default. If it is not triggered by continuous
36
+ * event, its priority will be discrete.
37
+ */
38
+ public const val UNSPECIFIED: Int = 2
39
+
40
+ /** Forces discrete type for the event. Regardless if continuous event is ongoing. */
41
+ public const val DISCRETE: Int = 3
42
+
43
+ /** Forces continuous type for the event. Regardless if continuous event isn't ongoing. */
44
+ public const val CONTINUOUS: Int = 4
45
+ }
46
+ }
@@ -0,0 +1,40 @@
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.events
9
+
10
+ import com.facebook.react.uimanager.common.UIManagerType
11
+
12
+ public interface EventDispatcher {
13
+ /** Sends the given Event to JS, coalescing eligible events if JS is backed up. */
14
+ public fun dispatchEvent(event: Event<*>)
15
+
16
+ public fun dispatchAllEvents()
17
+
18
+ /** Add a listener to this EventDispatcher. */
19
+ public fun addListener(listener: EventDispatcherListener)
20
+
21
+ /** Remove a listener from this EventDispatcher. */
22
+ public fun removeListener(listener: EventDispatcherListener)
23
+
24
+ public fun addBatchEventDispatchedListener(listener: BatchEventDispatchedListener)
25
+
26
+ public fun removeBatchEventDispatchedListener(listener: BatchEventDispatchedListener)
27
+
28
+ @Deprecated("Use the modern version with RCTModernEventEmitter")
29
+ @Suppress("DEPRECATION")
30
+ public fun registerEventEmitter(@UIManagerType uiManagerType: Int, eventEmitter: RCTEventEmitter)
31
+
32
+ public fun registerEventEmitter(
33
+ @UIManagerType uiManagerType: Int,
34
+ eventEmitter: RCTModernEventEmitter
35
+ )
36
+
37
+ public fun unregisterEventEmitter(@UIManagerType uiManagerType: Int)
38
+
39
+ public fun onCatalystInstanceDestroyed()
40
+ }
@@ -15,7 +15,6 @@ import com.facebook.react.bridge.LifecycleEventListener;
15
15
  import com.facebook.react.bridge.ReactApplicationContext;
16
16
  import com.facebook.react.bridge.UiThreadUtil;
17
17
  import com.facebook.react.common.MapBuilder;
18
- import com.facebook.react.internal.featureflags.ReactNativeFeatureFlags;
19
18
  import com.facebook.react.modules.core.ReactChoreographer;
20
19
  import com.facebook.react.uimanager.common.UIManagerType;
21
20
  import com.facebook.systrace.Systrace;
@@ -318,11 +317,8 @@ public class EventDispatcherImpl implements EventDispatcher, LifecycleEventListe
318
317
  }
319
318
 
320
319
  private void post() {
321
- if (!ReactNativeFeatureFlags.enableFabricRendererExclusively()) {
322
- ReactChoreographer.getInstance()
323
- .postFrameCallback(
324
- ReactChoreographer.CallbackType.TIMERS_EVENTS, mCurrentFrameCallback);
325
- }
320
+ ReactChoreographer.getInstance()
321
+ .postFrameCallback(ReactChoreographer.CallbackType.TIMERS_EVENTS, mCurrentFrameCallback);
326
322
  }
327
323
 
328
324
  public void maybePostFromNonUI() {