react-native-windows 0.81.3 → 0.82.0-preview.10

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 (704) hide show
  1. package/.flowconfig +11 -10
  2. package/Directory.Build.props +3 -3
  3. package/Folly/Folly.vcxproj +1 -3
  4. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +7 -3
  5. package/Libraries/Alert/RCTAlertManager.android.js +4 -2
  6. package/Libraries/Animated/Animated.d.ts +2 -0
  7. package/Libraries/Animated/AnimatedEvent.js +1 -1
  8. package/Libraries/Animated/AnimatedExports.js.flow +1 -0
  9. package/Libraries/Animated/AnimatedImplementation.js +4 -2
  10. package/Libraries/Animated/AnimatedMock.js +1 -1
  11. package/Libraries/Animated/Easing.js +2 -0
  12. package/Libraries/Animated/NativeAnimatedAllowlist.js +1 -0
  13. package/Libraries/Animated/animations/Animation.js +19 -20
  14. package/Libraries/Animated/animations/TimingAnimation.js +2 -0
  15. package/Libraries/Animated/components/AnimatedScrollView.js +3 -2
  16. package/Libraries/Animated/components/AnimatedSectionList.js +1 -1
  17. package/Libraries/Animated/nodes/AnimatedColor.js +9 -9
  18. package/Libraries/Animated/nodes/AnimatedInterpolation.js +4 -4
  19. package/Libraries/Animated/nodes/AnimatedNode.js +14 -7
  20. package/Libraries/Animated/nodes/AnimatedObject.js +7 -7
  21. package/Libraries/Animated/nodes/AnimatedProps.js +32 -32
  22. package/Libraries/Animated/nodes/AnimatedStyle.js +23 -21
  23. package/Libraries/Animated/nodes/AnimatedTransform.js +6 -6
  24. package/Libraries/Animated/nodes/AnimatedValue.js +18 -26
  25. package/Libraries/AppState/AppState.js +8 -4
  26. package/Libraries/BatchedBridge/BatchedBridge.js +1 -0
  27. package/Libraries/BatchedBridge/MessageQueue.js +5 -0
  28. package/Libraries/BatchedBridge/NativeModules.js +1 -1
  29. package/Libraries/Blob/BlobManager.js +1 -1
  30. package/Libraries/Blob/URLSearchParams.js +2 -0
  31. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +2 -2
  32. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.windows.js +2 -2
  33. package/Libraries/Components/Button.js +1 -1
  34. package/Libraries/Components/Button.windows.js +1 -1
  35. package/Libraries/Components/Flyout/FlyoutNativeComponent.js +2 -2
  36. package/Libraries/Components/Glyph/GlyphNativeComponent.js +1 -1
  37. package/Libraries/Components/Popup/PopupNativeComponent.js +1 -0
  38. package/Libraries/Components/Pressable/Pressable.js +10 -1
  39. package/Libraries/Components/Pressable/Pressable.windows.js +9 -0
  40. package/Libraries/Components/Pressable/useAndroidRippleForView.js +2 -2
  41. package/Libraries/Components/ScrollView/ScrollView.js +13 -4
  42. package/Libraries/Components/ScrollView/ScrollView.windows.js +14 -5
  43. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -1
  44. package/Libraries/Components/StatusBar/StatusBar.js +2 -2
  45. package/Libraries/Components/Switch/Switch.js +1 -1
  46. package/Libraries/Components/Switch/Switch.windows.js +1 -1
  47. package/Libraries/Components/TextInput/TextInput.flow.js +12 -5
  48. package/Libraries/Components/TextInput/TextInput.flow.windows.js +12 -5
  49. package/Libraries/Components/TextInput/TextInput.js +14 -5
  50. package/Libraries/Components/TextInput/TextInput.windows.js +23 -11
  51. package/Libraries/Components/TextInput/TextInputState.js +1 -1
  52. package/Libraries/Components/TextInput/TextInputState.windows.js +1 -1
  53. package/Libraries/Components/Touchable/TouchableBounce.js +1 -1
  54. package/Libraries/Components/Touchable/TouchableHighlight.js +1 -1
  55. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -1
  56. package/Libraries/Components/Touchable/TouchableOpacity.js +1 -1
  57. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +3 -3
  58. package/Libraries/Components/Touchable/TouchableWithoutFeedback.windows.js +1 -1
  59. package/Libraries/Components/View/View.js +81 -167
  60. package/Libraries/Components/View/View.windows.js +202 -302
  61. package/Libraries/Core/Devtools/loadBundleFromServer.js +1 -1
  62. package/Libraries/Core/Devtools/loadBundleFromServer.windows.js +1 -1
  63. package/Libraries/Core/ExceptionsManager.js +4 -2
  64. package/Libraries/Core/ReactFiberErrorDialog.js +3 -3
  65. package/Libraries/Core/ReactNativeVersion.js +37 -10
  66. package/Libraries/Core/Timers/JSTimers.js +4 -1
  67. package/Libraries/Core/Timers/NativeTiming.js +1 -0
  68. package/Libraries/Core/Timers/immediateShim.js +2 -1
  69. package/Libraries/Core/Timers/queueMicrotask.js +1 -0
  70. package/Libraries/Core/setUpPerformance.js +3 -4
  71. package/Libraries/Debugging/DebuggingOverlayRegistry.js +5 -3
  72. package/Libraries/Image/AssetSourceResolver.windows.js +2 -2
  73. package/Libraries/Image/Image.android.js +327 -111
  74. package/Libraries/Image/Image.ios.js +6 -1
  75. package/Libraries/Image/Image.windows.js +28 -61
  76. package/Libraries/Image/ImageSourceUtils.js +8 -2
  77. package/Libraries/Image/resolveAssetSource.js +1 -1
  78. package/Libraries/Image/resolveAssetSource.windows.js +1 -1
  79. package/Libraries/Interaction/InteractionManager.js +118 -167
  80. package/Libraries/Interaction/PanResponder.js +7 -52
  81. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -0
  82. package/Libraries/Lists/FlatList.js +5 -6
  83. package/Libraries/LogBox/Data/LogBoxData.js +5 -2
  84. package/Libraries/LogBox/Data/parseLogBoxLog.js +1 -1
  85. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +1 -1
  86. package/Libraries/Modal/Modal.js +3 -3
  87. package/Libraries/Modal/Modal.windows.js +2 -2
  88. package/Libraries/NativeComponent/NativeComponentRegistry.js +1 -1
  89. package/Libraries/NativeComponent/ViewConfig.js +2 -2
  90. package/Libraries/Network/RCTNetworking.android.js +1 -1
  91. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  92. package/Libraries/Network/RCTNetworking.windows.js +1 -1
  93. package/Libraries/Network/XMLHttpRequest.js +20 -5
  94. package/Libraries/Network/convertRequestBody.js +1 -1
  95. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +10 -9
  96. package/Libraries/Pressability/HoverState.js +2 -0
  97. package/Libraries/Pressability/Pressability.js +1 -1
  98. package/Libraries/Pressability/Pressability.windows.js +5 -5
  99. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +2 -2
  100. package/Libraries/ReactNative/AppRegistryImpl.js +4 -2
  101. package/Libraries/ReactNative/PaperUIManager.windows.js +4 -4
  102. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +2 -0
  103. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +3 -3
  104. package/Libraries/ReactNative/RendererImplementation.js +116 -116
  105. package/Libraries/ReactNative/UIManager.js +3 -3
  106. package/Libraries/ReactNative/renderApplication.js +1 -0
  107. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +1 -1
  108. package/Libraries/Renderer/implementations/ReactFabric-dev.js +38 -35
  109. package/Libraries/Renderer/implementations/ReactFabric-prod.js +51 -22
  110. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +54 -24
  111. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +36 -33
  112. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +5 -5
  113. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +5 -5
  114. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +3 -1
  115. package/Libraries/Share/Share.js +4 -0
  116. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +2 -2
  117. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +2 -2
  118. package/Libraries/StyleSheet/PlatformColorValueTypes.windows.js +2 -0
  119. package/Libraries/StyleSheet/StyleSheet.d.ts +7 -22
  120. package/Libraries/StyleSheet/StyleSheetExports.js +2 -8
  121. package/Libraries/StyleSheet/StyleSheetExports.js.flow +11 -18
  122. package/Libraries/StyleSheet/flattenStyle.js +2 -2
  123. package/Libraries/StyleSheet/processAspectRatio.js +2 -0
  124. package/Libraries/StyleSheet/processFilter.js +5 -5
  125. package/Libraries/StyleSheet/splitLayoutProps.js +2 -2
  126. package/Libraries/Text/Text.js +534 -234
  127. package/Libraries/Text/Text.windows.js +622 -265
  128. package/Libraries/Text/TextNativeComponent.js +2 -2
  129. package/Libraries/Utilities/Appearance.d.ts +3 -5
  130. package/Libraries/Utilities/Appearance.js +5 -17
  131. package/Libraries/Utilities/HMRClient.js +2 -1
  132. package/Libraries/Utilities/Platform.android.js +3 -3
  133. package/Libraries/Utilities/Platform.d.ts +1 -0
  134. package/Libraries/Utilities/Platform.ios.js +1 -1
  135. package/Libraries/Utilities/Platform.windows.js +3 -3
  136. package/Libraries/Utilities/PlatformTypes.js +1 -1
  137. package/Libraries/Utilities/ReactNativeTestTools.js +12 -0
  138. package/Libraries/Utilities/SceneTracker.js +1 -1
  139. package/Libraries/Utilities/codegenNativeCommands.js +1 -1
  140. package/Libraries/Utilities/codegenNativeComponent.js +1 -1
  141. package/Libraries/Utilities/createPerformanceLogger.js +32 -0
  142. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +2 -0
  143. package/Libraries/Utilities/differ/pointsDiffer.js +1 -1
  144. package/Libraries/Utilities/useMergeRefs.js +1 -1
  145. package/Libraries/WebSocket/WebSocketInterceptor.js +2 -0
  146. package/Libraries/promiseRejectionTrackingOptions.js +17 -31
  147. package/Libraries/vendor/emitter/EventEmitter.js +1 -1
  148. package/Microsoft.ReactNative/App.xaml +5 -0
  149. package/Microsoft.ReactNative/Base/CxxReactIncludes.h +0 -3
  150. package/Microsoft.ReactNative/ComponentView.idl +2 -0
  151. package/Microsoft.ReactNative/Composition.Input.idl +7 -0
  152. package/Microsoft.ReactNative/CompositionContext.idl +0 -2
  153. package/Microsoft.ReactNative/Fabric/AbiViewProps.cpp +2 -2
  154. package/Microsoft.ReactNative/Fabric/AbiViewProps.h +0 -2
  155. package/Microsoft.ReactNative/Fabric/ComponentView.cpp +18 -0
  156. package/Microsoft.ReactNative/Fabric/ComponentView.h +9 -0
  157. package/Microsoft.ReactNative/Fabric/Composition/Composition.Input.cpp +12 -69
  158. package/Microsoft.ReactNative/Fabric/Composition/Composition.Input.h +16 -15
  159. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.cpp +0 -31
  160. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper.h +0 -10
  161. package/Microsoft.ReactNative/Fabric/Composition/CompositionContextHelper_emptyimpl.cpp +0 -4
  162. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +75 -6
  163. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.h +1 -2
  164. package/Microsoft.ReactNative/Fabric/Composition/CompositionHelpers.h +0 -2
  165. package/Microsoft.ReactNative/Fabric/Composition/CompositionHwndHost.cpp +0 -9
  166. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.cpp +0 -10
  167. package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.h +0 -4
  168. package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +2 -4
  169. package/Microsoft.ReactNative/Fabric/Composition/ContentIslandComponentView.cpp +6 -68
  170. package/Microsoft.ReactNative/Fabric/Composition/ContentIslandComponentView.h +0 -4
  171. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.cpp +0 -1
  172. package/Microsoft.ReactNative/Fabric/Composition/ImageComponentView.h +0 -1
  173. package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.cpp +82 -14
  174. package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.h +11 -4
  175. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.cpp +8 -0
  176. package/Microsoft.ReactNative/Fabric/Composition/ReactCompositionViewComponentBuilder.h +3 -0
  177. package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.cpp +0 -6
  178. package/Microsoft.ReactNative/Fabric/Composition/ReactNativeIsland.h +0 -2
  179. package/Microsoft.ReactNative/Fabric/Composition/ScrollViewComponentView.cpp +0 -1
  180. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +61 -32
  181. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.h +3 -0
  182. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputShadowNode.cpp +4 -1
  183. package/Microsoft.ReactNative/Fabric/Composition/Theme.cpp +0 -30
  184. package/Microsoft.ReactNative/Fabric/Composition/Theme.h +1 -3
  185. package/Microsoft.ReactNative/Fabric/Composition/UiaHelpers.cpp +8 -4
  186. package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +0 -1
  187. package/Microsoft.ReactNative/Fabric/ImageManager.cpp +0 -4
  188. package/Microsoft.ReactNative/Fabric/WindowsComponentDescriptorRegistry.cpp +8 -0
  189. package/Microsoft.ReactNative/Fabric/WindowsComponentDescriptorRegistry.h +3 -0
  190. package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/PlatformColorUtils.cpp +0 -11
  191. package/Microsoft.ReactNative/IReactContext.cpp +2 -25
  192. package/Microsoft.ReactNative/IReactContext.h +0 -7
  193. package/Microsoft.ReactNative/IReactContext.idl +4 -29
  194. package/Microsoft.ReactNative/IReactModuleBuilder.cpp +24 -140
  195. package/Microsoft.ReactNative/IReactModuleBuilder.h +0 -11
  196. package/Microsoft.ReactNative/IReactPackageBuilder.idl +1 -16
  197. package/Microsoft.ReactNative/IReactPackageProvider.idl +0 -1
  198. package/Microsoft.ReactNative/IReactViewComponentBuilder.idl +2 -0
  199. package/Microsoft.ReactNative/JsiApi.cpp +4 -3
  200. package/Microsoft.ReactNative/JsiApi.h +2 -3
  201. package/Microsoft.ReactNative/JsiApi.idl +3 -2
  202. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +5 -214
  203. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj.filters +0 -252
  204. package/Microsoft.ReactNative/Modules/AccessibilityInfoModule.cpp +0 -37
  205. package/Microsoft.ReactNative/Modules/AlertModule.cpp +2 -140
  206. package/Microsoft.ReactNative/Modules/AlertModule.h +0 -2
  207. package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedNodeManager.cpp +5 -10
  208. package/Microsoft.ReactNative/Modules/Animated/NativeAnimatedNodeManager.h +0 -1
  209. package/Microsoft.ReactNative/Modules/Animated/PropsAnimatedNode.cpp +1 -96
  210. package/Microsoft.ReactNative/Modules/Animated/PropsAnimatedNode.h +0 -14
  211. package/Microsoft.ReactNative/Modules/AppStateModule.cpp +0 -53
  212. package/Microsoft.ReactNative/Modules/AppStateModule.h +0 -5
  213. package/Microsoft.ReactNative/Modules/AppThemeModuleUwp.cpp +5 -14
  214. package/Microsoft.ReactNative/Modules/AppThemeModuleUwp.h +0 -2
  215. package/Microsoft.ReactNative/Modules/AppearanceModule.cpp +1 -9
  216. package/Microsoft.ReactNative/Modules/DevSettingsModule.cpp +0 -4
  217. package/Microsoft.ReactNative/Modules/DevSettingsModule.h +0 -2
  218. package/Microsoft.ReactNative/Modules/DeviceInfoModule.cpp +16 -90
  219. package/Microsoft.ReactNative/Modules/I18nManagerModule.cpp +3 -8
  220. package/Microsoft.ReactNative/Modules/ImageViewManagerModule.cpp +33 -43
  221. package/Microsoft.ReactNative/Modules/LinkingManagerModule.cpp +0 -3
  222. package/Microsoft.ReactNative/Modules/LogBoxModule.cpp +30 -102
  223. package/Microsoft.ReactNative/Modules/LogBoxModule.h +0 -7
  224. package/Microsoft.ReactNative/Modules/Timing.cpp +7 -9
  225. package/Microsoft.ReactNative/Pch/pch.h +0 -28
  226. package/Microsoft.ReactNative/ReactCoreInjection.h +0 -1
  227. package/Microsoft.ReactNative/ReactHost/IReactInstance.h +0 -8
  228. package/Microsoft.ReactNative/ReactHost/MsoReactContext.cpp +0 -15
  229. package/Microsoft.ReactNative/ReactHost/MsoReactContext.h +0 -2
  230. package/Microsoft.ReactNative/ReactHost/React.h +0 -44
  231. package/Microsoft.ReactNative/ReactHost/ReactHost.cpp +10 -47
  232. package/Microsoft.ReactNative/ReactHost/ReactHost.h +1 -1
  233. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.cpp +30 -586
  234. package/Microsoft.ReactNative/ReactHost/ReactInstanceWin.h +2 -37
  235. package/Microsoft.ReactNative/ReactHost/ReactNativeHeaders.h +0 -13
  236. package/Microsoft.ReactNative/ReactHost/React_Win.h +0 -1
  237. package/Microsoft.ReactNative/ReactInstanceSettings.cpp +0 -8
  238. package/Microsoft.ReactNative/ReactInstanceSettings.h +0 -13
  239. package/Microsoft.ReactNative/ReactInstanceSettings.idl +7 -23
  240. package/Microsoft.ReactNative/ReactNativeHost.cpp +10 -35
  241. package/Microsoft.ReactNative/ReactNativeHost.h +0 -1
  242. package/Microsoft.ReactNative/ReactNativeIsland.idl +0 -4
  243. package/Microsoft.ReactNative/ReactPackageBuilder.cpp +9 -36
  244. package/Microsoft.ReactNative/ReactPackageBuilder.h +4 -38
  245. package/Microsoft.ReactNative/RedBox.cpp +9 -362
  246. package/Microsoft.ReactNative/Theme.idl +0 -2
  247. package/Microsoft.ReactNative/Timer.cpp +3 -2
  248. package/Microsoft.ReactNative/Utils/Helpers.cpp +0 -47
  249. package/Microsoft.ReactNative/Utils/Helpers.h +0 -5
  250. package/Microsoft.ReactNative/Utils/KeyboardUtils.cpp +0 -11
  251. package/Microsoft.ReactNative/Utils/ThemeUtils.cpp +0 -4
  252. package/Microsoft.ReactNative/Utils/ThemeUtils.h +1 -5
  253. package/Microsoft.ReactNative/Utils/UwpPreparedScriptStore.h +0 -2
  254. package/Microsoft.ReactNative/Utils/ValueUtils.cpp +0 -245
  255. package/Microsoft.ReactNative/Utils/ValueUtils.h +0 -23
  256. package/Microsoft.ReactNative/ViewProps.idl +0 -2
  257. package/Microsoft.ReactNative/Views/DevMenu.cpp +2 -278
  258. package/Microsoft.ReactNative/Views/DevMenu.h +0 -5
  259. package/Microsoft.ReactNative/XamlApplication.cpp +71 -0
  260. package/Microsoft.ReactNative/XamlApplication.h +47 -0
  261. package/Microsoft.ReactNative/XamlApplication.idl +19 -0
  262. package/Microsoft.ReactNative/XamlUIService.cpp +0 -54
  263. package/Microsoft.ReactNative/XamlUIService.h +0 -12
  264. package/Microsoft.ReactNative/XamlUIService.idl +0 -12
  265. package/Microsoft.ReactNative.Cxx/CppWinRTIncludes.h +0 -19
  266. package/Microsoft.ReactNative.Cxx/DesktopWindowBridge.h +1 -1
  267. package/Microsoft.ReactNative.Cxx/JSI/decorator.h +191 -114
  268. package/Microsoft.ReactNative.Cxx/JSI/instrumentation.h +5 -0
  269. package/Microsoft.ReactNative.Cxx/JSI/jsi-inl.h +37 -0
  270. package/Microsoft.ReactNative.Cxx/JSI/jsi.cpp +68 -0
  271. package/Microsoft.ReactNative.Cxx/JSI/jsi.h +77 -11
  272. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems +2 -2
  273. package/Microsoft.ReactNative.Cxx/NamespaceRedirect.h +0 -5
  274. package/Microsoft.ReactNative.Cxx/NodeApiJsiRuntime.cpp +93 -1
  275. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModule.cpp +4 -3
  276. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModule.h +2 -2
  277. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModuleUtils.cpp +2 -55
  278. package/Microsoft.ReactNative.Cxx/ReactCommon/TurboModuleUtils.h +4 -8
  279. package/Microsoft.ReactNative.Cxx/ReactCommon/react/bridging/Class.h +5 -0
  280. package/Microsoft.ReactNative.Cxx/ReactCommon/react/timing/primitives.h +44 -4
  281. package/Microsoft.ReactNative.Cxx/ReactContext.h +0 -13
  282. package/Microsoft.ReactNative.Cxx/UI.Composition.Effects.h +0 -4
  283. package/Microsoft.ReactNative.Cxx/UI.Composition.h +0 -4
  284. package/Microsoft.ReactNative.Cxx/UI.Input.h +0 -4
  285. package/Microsoft.ReactNative.Cxx/UI.Popups.h +0 -4
  286. package/Microsoft.ReactNative.Cxx/UI.Text.h +0 -4
  287. package/Microsoft.ReactNative.Cxx/XamlUtils.h +0 -33
  288. package/Microsoft.ReactNative.Managed/JSValueReader.cs +0 -4
  289. package/Microsoft.ReactNative.Managed/Microsoft.ReactNative.Managed.csproj +0 -3
  290. package/Microsoft.ReactNative.Managed/ReactContext.cs +0 -5
  291. package/Microsoft.ReactNative.Managed/ReactContextGenerator.cs +0 -4
  292. package/Microsoft.ReactNative.Managed/ReactPackageBuilderExtensions.cs +0 -25
  293. package/Microsoft.ReactNative.Managed/ReactSettingsSnapshot.cs +0 -4
  294. package/Microsoft.ReactNative.Managed/ReflectionReactPackageProvider.cs +1 -2
  295. package/Microsoft.ReactNative.Managed.CodeGen/CodeAnalyzer.cs +0 -10
  296. package/Microsoft.ReactNative.Managed.CodeGen/CodeGenerator.ViewManager.cs +0 -36
  297. package/Microsoft.ReactNative.Managed.CodeGen/CodeGenerator.cs +0 -6
  298. package/Microsoft.ReactNative.Managed.CodeGen/Model/ReactAssembly.cs +0 -2
  299. package/Microsoft.ReactNative.Managed.CodeGen/Model/ReactTypes.cs +0 -2
  300. package/Microsoft.ReactNative.Managed.CodeGen/ReactNativeNames.cs +0 -2
  301. package/Mso/src/dispatchQueue/queueService.cpp +3 -1
  302. package/Mso/src/dispatchQueue/uiScheduler_winrt.cpp +2 -10
  303. package/PropertySheets/Bundle.Common.targets +1 -1
  304. package/PropertySheets/Bundle.props +3 -4
  305. package/PropertySheets/External/Microsoft.ReactNative.Common.props +0 -1
  306. package/PropertySheets/External/Microsoft.ReactNative.Uwp.CSharpApp.targets +1 -1
  307. package/PropertySheets/External/Microsoft.ReactNative.Uwp.CppApp.targets +1 -1
  308. package/PropertySheets/Generated/PackageVersion.g.props +4 -4
  309. package/PropertySheets/JSEngine.props +1 -1
  310. package/PropertySheets/NuGet.LockFile.props +0 -8
  311. package/PropertySheets/OutputMSBuildProperties.targets +0 -1
  312. package/PropertySheets/React.Cpp.props +3 -5
  313. package/PropertySheets/Warnings.props +1 -2
  314. package/PropertySheets/WinUI.props +3 -3
  315. package/README.md +1 -5
  316. package/ReactCommon/ReactCommon.vcxproj +12 -31
  317. package/ReactCommon/ReactCommon.vcxproj.filters +0 -3
  318. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/CxxNativeModule.cpp +3 -2
  319. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/NativeToJsBridge.cpp +5 -2
  320. package/ReactCommon/TEMP_UntilReactCommonUpdate/cxxreact/TraceSection.h +20 -4
  321. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsi/jsi/test/testlib.cpp +113 -1
  322. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/NetworkIOAgent.cpp +14 -6
  323. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/Utf8.h +1 -0
  324. package/ReactCommon/TEMP_UntilReactCommonUpdate/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.cpp +351 -0
  325. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/core/ReactCommon/TurboModule.h +2 -2
  326. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/dom/NativeDOM.cpp +42 -36
  327. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/nativemodule/dom/NativeDOM.h +15 -3
  328. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +1 -1
  329. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/image/conversions.h +174 -0
  330. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/BaseParagraphProps.cpp +174 -0
  331. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/BaseParagraphProps.h +69 -0
  332. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/text/ParagraphShadowNode.cpp +1 -0
  333. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityPrimitives.h +26 -3
  334. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/conversions.h +1 -1
  335. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/ShadowNode.cpp +1 -1
  336. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/imagemanager/primitives.h +189 -0
  337. package/ReactCommon/TEMP_UntilReactCommonUpdate/reactperflogger/reactperflogger/ReactPerfettoLogger.cpp +27 -8
  338. package/ReactCommon/cgmanifest.json +1 -1
  339. package/Scripts/Microsoft.ReactNative.nuspec +15 -33
  340. package/Scripts/NuGetRestoreForceEvaluateAllSolutions.ps1 +23 -23
  341. package/Scripts/OfficeReact.Win32.nuspec +0 -3
  342. package/Scripts/creaternwapp.cmd +1 -1
  343. package/Scripts/rnw-dependencies.ps1 +15 -1
  344. package/Shared/DevServerHelper.h +17 -21
  345. package/Shared/DevSettings.h +1 -25
  346. package/Shared/DevSupportManager.cpp +0 -50
  347. package/Shared/DevSupportManager.h +0 -4
  348. package/Shared/Hermes/HermesRuntimeTargetDelegate.cpp +5 -1
  349. package/Shared/HermesRuntimeHolder.cpp +0 -31
  350. package/Shared/HermesRuntimeHolder.h +0 -14
  351. package/Shared/IDevSupportManager.h +0 -6
  352. package/Shared/InstanceManager.cpp +0 -97
  353. package/Shared/InstanceManager.h +0 -53
  354. package/Shared/JSI/ScriptStore.h +1 -1
  355. package/Shared/Logging.cpp +1 -12
  356. package/Shared/Modules/CxxModuleUtilities.cpp +0 -9
  357. package/Shared/Modules/CxxModuleUtilities.h +0 -8
  358. package/Shared/Networking/OriginPolicyHttpFilter.cpp +9 -1
  359. package/Shared/OInstance.cpp +144 -424
  360. package/Shared/OInstance.h +0 -81
  361. package/Shared/Shared.vcxitems +83 -203
  362. package/Shared/Shared.vcxitems.filters +7 -69
  363. package/Shared/Threading/MessageQueueThreadFactory.cpp +0 -6
  364. package/Shared/Threading/MessageQueueThreadFactory.h +0 -4
  365. package/Shared/TurboModuleManager.cpp +0 -4
  366. package/Shared/Utils.cpp +26 -0
  367. package/Shared/Utils.h +3 -0
  368. package/codegen/NativeDOMSpec.g.h +41 -35
  369. package/codegen/NativeIntersectionObserverSpec.g.h +9 -21
  370. package/codegen/NativePerformanceSpec.g.h +53 -35
  371. package/codegen/NativeReactNativeFeatureFlagsSpec.g.h +183 -129
  372. package/codegen/react/components/rnwcore/EventEmitters.cpp +25 -0
  373. package/codegen/react/components/rnwcore/EventEmitters.h +25 -0
  374. package/codegen/react/components/rnwcore/Props.cpp +41 -2
  375. package/codegen/react/components/rnwcore/Props.h +51 -2
  376. package/codegen/react/components/rnwcore/VirtualView.g.h +4 -0
  377. package/codegen/react/components/rnwcore/VirtualViewExperimental.g.h +240 -0
  378. package/codegen/rnwcoreJSI-generated.cpp +534 -467
  379. package/codegen/rnwcoreJSI.h +165 -66
  380. package/fmt/cgmanifest.json +1 -1
  381. package/fmt/fmt.vcxproj +0 -8
  382. package/index.js +14 -2
  383. package/index.windows.js +14 -2
  384. package/jest/local-setup.js +2 -2
  385. package/jest/mock.js +1 -1
  386. package/jest/mockComponent.js +9 -9
  387. package/jest/mockNativeComponent.js +3 -2
  388. package/jest/mocks/Modal.js +1 -1
  389. package/jest/mocks/ScrollView.js +1 -1
  390. package/jest/mocks/ViewNativeComponent.js +1 -1
  391. package/jest/setup.js +23 -12
  392. package/just-task.js +14 -0
  393. package/package.json +31 -31
  394. package/src/private/animated/NativeAnimatedHelper.js +16 -5
  395. package/src/private/animated/createAnimatedPropsHook.js +11 -60
  396. package/src/private/animated/createAnimatedPropsMemoHook.js +8 -54
  397. package/src/private/components/virtualview/VirtualView.js +43 -12
  398. package/src/private/components/virtualview/VirtualViewExperimentalNativeComponent.js +93 -0
  399. package/src/private/components/virtualview/VirtualViewNativeComponent.js +6 -0
  400. package/src/private/devsupport/devmenu/elementinspector/Inspector.js +2 -2
  401. package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +2 -2
  402. package/src/private/featureflags/ReactNativeFeatureFlags.js +85 -52
  403. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +23 -4
  404. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +15 -6
  405. package/src/private/renderer/errorhandling/ErrorHandlers.js +3 -3
  406. package/src/private/setup/{setUpPerformanceObserver.js → setUpPerformanceModern.js} +43 -18
  407. package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +1 -1
  408. package/src/private/specs_DEPRECATED/modules/NativeTiming.js +1 -0
  409. package/src/private/types/HostInstance.js +4 -1
  410. package/src/private/webapis/dom/nodes/ReactNativeDocument.js +22 -2
  411. package/src/private/webapis/dom/nodes/ReactNativeElement.js +1 -1
  412. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +5 -3
  413. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +16 -13
  414. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +45 -22
  415. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +1 -1
  416. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +26 -192
  417. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +15 -12
  418. package/src/private/webapis/dom/oldstylecollections/NodeList.js +14 -11
  419. package/src/private/webapis/geometry/DOMRectList.js +2 -2
  420. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +19 -74
  421. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +0 -4
  422. package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +1 -1
  423. package/src/private/webapis/performance/EventTiming.js +40 -25
  424. package/src/private/webapis/performance/LongTasks.js +35 -2
  425. package/src/private/webapis/performance/Performance.js +347 -166
  426. package/src/private/webapis/performance/PerformanceEntry.js +40 -23
  427. package/src/private/webapis/performance/PerformanceObserver.js +37 -29
  428. package/src/private/webapis/performance/ReactNativeStartupTiming.js +3 -24
  429. package/src/private/webapis/performance/ResourceTiming.js +29 -18
  430. package/src/private/webapis/performance/UserTiming.js +92 -34
  431. package/src/private/webapis/performance/UserTimingExtensibility.js.flow +38 -0
  432. package/src/private/webapis/performance/internals/RawPerformanceEntry.js +3 -4
  433. package/src/private/webapis/performance/internals/Utilities.js +9 -0
  434. package/src/private/webapis/performance/specs/NativePerformance.js +23 -23
  435. package/src/private/webapis/structuredClone/structuredClone.js +10 -10
  436. package/stubs/double-conversion/README.md +1 -1
  437. package/template/cpp-lib/proj/MyLib.sln +0 -5
  438. package/template/cpp-lib/src/pch.h +0 -5
  439. package/template/cs-lib/proj/MyLib.sln +0 -5
  440. package/template/metro.config.js +1 -0
  441. package/templates/cpp-app/metro.config.js +2 -1
  442. package/templates/cpp-app/windows/MyApp.sln +0 -5
  443. package/templates/cpp-lib/example/metro.config.js +3 -4
  444. package/templates/cpp-lib/windows/MyLib.sln +0 -5
  445. package/Chakra/Chakra.vcxitems +0 -32
  446. package/Chakra/Chakra.vcxitems.filters +0 -54
  447. package/Chakra/ChakraHelpers.cpp +0 -468
  448. package/Chakra/ChakraHelpers.h +0 -146
  449. package/Chakra/ChakraInstanceArgs.h +0 -52
  450. package/Chakra/ChakraPlatform.cpp +0 -42
  451. package/Chakra/ChakraPlatform.h +0 -51
  452. package/Chakra/ChakraTracing.cpp +0 -275
  453. package/Chakra/ChakraTracing.h +0 -11
  454. package/Chakra/ChakraUtils.cpp +0 -190
  455. package/Chakra/ChakraUtils.h +0 -72
  456. package/Chakra/ChakraValue.cpp +0 -257
  457. package/Chakra/ChakraValue.h +0 -308
  458. package/Chakra/Utf8DebugExtensions.cpp +0 -62
  459. package/Chakra/Utf8DebugExtensions.h +0 -29
  460. package/Libraries/Interaction/InteractionManagerStub.js +0 -184
  461. package/Libraries/Interaction/TaskQueue.js +0 -183
  462. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +0 -31
  463. package/Microsoft.ReactNative/ABICxxModule.cpp +0 -51
  464. package/Microsoft.ReactNative/ABICxxModule.h +0 -38
  465. package/Microsoft.ReactNative/ABIViewManager.cpp +0 -263
  466. package/Microsoft.ReactNative/ABIViewManager.h +0 -100
  467. package/Microsoft.ReactNative/Base/CoreUIManagers.cpp +0 -55
  468. package/Microsoft.ReactNative/DevMenuControl.cpp +0 -14
  469. package/Microsoft.ReactNative/DevMenuControl.h +0 -20
  470. package/Microsoft.ReactNative/DevMenuControl.idl +0 -28
  471. package/Microsoft.ReactNative/DevMenuControl.xaml +0 -139
  472. package/Microsoft.ReactNative/GlyphViewManager.cpp +0 -167
  473. package/Microsoft.ReactNative/GlyphViewManager.h +0 -24
  474. package/Microsoft.ReactNative/INativeUIManager.h +0 -75
  475. package/Microsoft.ReactNative/IViewManager.idl +0 -120
  476. package/Microsoft.ReactNative/IViewManagerCore.idl +0 -45
  477. package/Microsoft.ReactNative/LayoutService.cpp +0 -51
  478. package/Microsoft.ReactNative/LayoutService.h +0 -32
  479. package/Microsoft.ReactNative/LayoutService.idl +0 -41
  480. package/Microsoft.ReactNative/Modules/NativeUIManager.cpp +0 -1187
  481. package/Microsoft.ReactNative/Modules/NativeUIManager.h +0 -128
  482. package/Microsoft.ReactNative/Modules/PaperUIManagerModule.cpp +0 -891
  483. package/Microsoft.ReactNative/Modules/PaperUIManagerModule.h +0 -185
  484. package/Microsoft.ReactNative/NativeModulesProvider.cpp +0 -49
  485. package/Microsoft.ReactNative/NativeModulesProvider.h +0 -25
  486. package/Microsoft.ReactNative/ReactApplication.cpp +0 -276
  487. package/Microsoft.ReactNative/ReactApplication.h +0 -156
  488. package/Microsoft.ReactNative/ReactApplication.idl +0 -48
  489. package/Microsoft.ReactNative/ReactHost/ViewManagerProvider.h +0 -19
  490. package/Microsoft.ReactNative/ReactPointerEventArgs.cpp +0 -55
  491. package/Microsoft.ReactNative/ReactPointerEventArgs.h +0 -32
  492. package/Microsoft.ReactNative/ReactPointerEventArgs.idl +0 -79
  493. package/Microsoft.ReactNative/ReactRootView.cpp +0 -592
  494. package/Microsoft.ReactNative/ReactRootView.h +0 -127
  495. package/Microsoft.ReactNative/ReactRootView.idl +0 -40
  496. package/Microsoft.ReactNative/TestHook.cpp +0 -99
  497. package/Microsoft.ReactNative/TestHook.h +0 -15
  498. package/Microsoft.ReactNative/Utils/AccessibilityUtils.cpp +0 -36
  499. package/Microsoft.ReactNative/Utils/AccessibilityUtils.h +0 -15
  500. package/Microsoft.ReactNative/Utils/BatchingEventEmitter.cpp +0 -171
  501. package/Microsoft.ReactNative/Utils/BatchingEventEmitter.h +0 -72
  502. package/Microsoft.ReactNative/Utils/PropertyHandlerUtils.h +0 -87
  503. package/Microsoft.ReactNative/Utils/PropertyUtils.h +0 -568
  504. package/Microsoft.ReactNative/Utils/ResourceBrushUtils.cpp +0 -182
  505. package/Microsoft.ReactNative/Utils/ResourceBrushUtils.h +0 -58
  506. package/Microsoft.ReactNative/Utils/ShadowNodeTypeUtils.h +0 -26
  507. package/Microsoft.ReactNative/Utils/XamlIslandUtils.cpp +0 -93
  508. package/Microsoft.ReactNative/Utils/XamlIslandUtils.h +0 -48
  509. package/Microsoft.ReactNative/ViewManagersProvider.cpp +0 -39
  510. package/Microsoft.ReactNative/ViewManagersProvider.h +0 -27
  511. package/Microsoft.ReactNative/Views/ActivityIndicatorViewManager.cpp +0 -62
  512. package/Microsoft.ReactNative/Views/ActivityIndicatorViewManager.h +0 -29
  513. package/Microsoft.ReactNative/Views/ConfigureBundlerDlg.cpp +0 -186
  514. package/Microsoft.ReactNative/Views/ConfigureBundlerDlg.h +0 -11
  515. package/Microsoft.ReactNative/Views/ControlViewManager.cpp +0 -143
  516. package/Microsoft.ReactNative/Views/ControlViewManager.h +0 -38
  517. package/Microsoft.ReactNative/Views/DebuggingOverlayViewManager.cpp +0 -53
  518. package/Microsoft.ReactNative/Views/DebuggingOverlayViewManager.h +0 -30
  519. package/Microsoft.ReactNative/Views/DynamicAutomationPeer.cpp +0 -586
  520. package/Microsoft.ReactNative/Views/DynamicAutomationPeer.h +0 -104
  521. package/Microsoft.ReactNative/Views/DynamicAutomationProperties.cpp +0 -330
  522. package/Microsoft.ReactNative/Views/DynamicAutomationProperties.h +0 -111
  523. package/Microsoft.ReactNative/Views/DynamicValueProvider.cpp +0 -59
  524. package/Microsoft.ReactNative/Views/DynamicValueProvider.h +0 -32
  525. package/Microsoft.ReactNative/Views/ExpressionAnimationStore.cpp +0 -61
  526. package/Microsoft.ReactNative/Views/ExpressionAnimationStore.h +0 -26
  527. package/Microsoft.ReactNative/Views/FlyoutViewManager.cpp +0 -559
  528. package/Microsoft.ReactNative/Views/FlyoutViewManager.h +0 -34
  529. package/Microsoft.ReactNative/Views/FrameworkElementTransferProperties.cpp +0 -126
  530. package/Microsoft.ReactNative/Views/FrameworkElementTransferProperties.h +0 -23
  531. package/Microsoft.ReactNative/Views/FrameworkElementViewManager.cpp +0 -957
  532. package/Microsoft.ReactNative/Views/FrameworkElementViewManager.h +0 -41
  533. package/Microsoft.ReactNative/Views/IXamlRootView.h +0 -17
  534. package/Microsoft.ReactNative/Views/Image/ImageViewManager.cpp +0 -245
  535. package/Microsoft.ReactNative/Views/Image/ImageViewManager.h +0 -45
  536. package/Microsoft.ReactNative/Views/Image/ReactImage.cpp +0 -469
  537. package/Microsoft.ReactNative/Views/Image/ReactImage.h +0 -80
  538. package/Microsoft.ReactNative/Views/Image/ReactImageBrush.cpp +0 -247
  539. package/Microsoft.ReactNative/Views/Image/ReactImageBrush.h +0 -67
  540. package/Microsoft.ReactNative/Views/KeyboardEventHandler.cpp +0 -261
  541. package/Microsoft.ReactNative/Views/KeyboardEventHandler.h +0 -132
  542. package/Microsoft.ReactNative/Views/PaperShadowNode.cpp +0 -18
  543. package/Microsoft.ReactNative/Views/PaperShadowNode.h +0 -38
  544. package/Microsoft.ReactNative/Views/PopupViewManager.cpp +0 -349
  545. package/Microsoft.ReactNative/Views/PopupViewManager.h +0 -36
  546. package/Microsoft.ReactNative/Views/RawTextViewManager.cpp +0 -69
  547. package/Microsoft.ReactNative/Views/RawTextViewManager.h +0 -46
  548. package/Microsoft.ReactNative/Views/ReactViewInstance.cpp +0 -43
  549. package/Microsoft.ReactNative/Views/ReactViewInstance.h +0 -53
  550. package/Microsoft.ReactNative/Views/RefreshControlManager.cpp +0 -116
  551. package/Microsoft.ReactNative/Views/RefreshControlManager.h +0 -28
  552. package/Microsoft.ReactNative/Views/RootViewManager.cpp +0 -65
  553. package/Microsoft.ReactNative/Views/RootViewManager.h +0 -36
  554. package/Microsoft.ReactNative/Views/SIPEventHandler.cpp +0 -117
  555. package/Microsoft.ReactNative/Views/SIPEventHandler.h +0 -45
  556. package/Microsoft.ReactNative/Views/ScrollContentViewManager.cpp +0 -16
  557. package/Microsoft.ReactNative/Views/ScrollContentViewManager.h +0 -19
  558. package/Microsoft.ReactNative/Views/ScrollViewManager.cpp +0 -540
  559. package/Microsoft.ReactNative/Views/ScrollViewManager.h +0 -42
  560. package/Microsoft.ReactNative/Views/ShadowNodeBase.cpp +0 -228
  561. package/Microsoft.ReactNative/Views/ShadowNodeBase.h +0 -169
  562. package/Microsoft.ReactNative/Views/ShadowNodeRegistry.cpp +0 -68
  563. package/Microsoft.ReactNative/Views/ShadowNodeRegistry.h +0 -40
  564. package/Microsoft.ReactNative/Views/SliderViewManager.cpp +0 -97
  565. package/Microsoft.ReactNative/Views/SliderViewManager.h +0 -32
  566. package/Microsoft.ReactNative/Views/SwitchViewManager.cpp +0 -227
  567. package/Microsoft.ReactNative/Views/SwitchViewManager.h +0 -31
  568. package/Microsoft.ReactNative/Views/Text/TextHighlighterVisitor.cpp +0 -52
  569. package/Microsoft.ReactNative/Views/Text/TextHighlighterVisitor.h +0 -37
  570. package/Microsoft.ReactNative/Views/Text/TextHitTestUtils.cpp +0 -348
  571. package/Microsoft.ReactNative/Views/Text/TextHitTestUtils.h +0 -13
  572. package/Microsoft.ReactNative/Views/Text/TextHitTestVisitor.cpp +0 -76
  573. package/Microsoft.ReactNative/Views/Text/TextHitTestVisitor.h +0 -32
  574. package/Microsoft.ReactNative/Views/Text/TextParentVisitor.cpp +0 -12
  575. package/Microsoft.ReactNative/Views/Text/TextParentVisitor.h +0 -19
  576. package/Microsoft.ReactNative/Views/Text/TextPropertyChangedParentVisitor.cpp +0 -75
  577. package/Microsoft.ReactNative/Views/Text/TextPropertyChangedParentVisitor.h +0 -43
  578. package/Microsoft.ReactNative/Views/Text/TextTransformParentVisitor.cpp +0 -21
  579. package/Microsoft.ReactNative/Views/Text/TextTransformParentVisitor.h +0 -23
  580. package/Microsoft.ReactNative/Views/Text/TextTransformVisitor.cpp +0 -70
  581. package/Microsoft.ReactNative/Views/Text/TextTransformVisitor.h +0 -34
  582. package/Microsoft.ReactNative/Views/Text/TextVisitor.cpp +0 -56
  583. package/Microsoft.ReactNative/Views/Text/TextVisitor.h +0 -34
  584. package/Microsoft.ReactNative/Views/Text/TextVisitorScope.h +0 -35
  585. package/Microsoft.ReactNative/Views/Text/TextVisitors.h +0 -47
  586. package/Microsoft.ReactNative/Views/TextInputViewManager.cpp +0 -1003
  587. package/Microsoft.ReactNative/Views/TextInputViewManager.h +0 -33
  588. package/Microsoft.ReactNative/Views/TextViewManager.cpp +0 -414
  589. package/Microsoft.ReactNative/Views/TextViewManager.h +0 -47
  590. package/Microsoft.ReactNative/Views/TouchEventHandler.cpp +0 -608
  591. package/Microsoft.ReactNative/Views/TouchEventHandler.h +0 -116
  592. package/Microsoft.ReactNative/Views/UnimplementedViewManager.cpp +0 -79
  593. package/Microsoft.ReactNative/Views/UnimplementedViewManager.h +0 -27
  594. package/Microsoft.ReactNative/Views/ViewControl.cpp +0 -43
  595. package/Microsoft.ReactNative/Views/ViewControl.h +0 -32
  596. package/Microsoft.ReactNative/Views/ViewManager.h +0 -33
  597. package/Microsoft.ReactNative/Views/ViewManagerBase.cpp +0 -487
  598. package/Microsoft.ReactNative/Views/ViewManagerBase.h +0 -121
  599. package/Microsoft.ReactNative/Views/ViewPanel.cpp +0 -164
  600. package/Microsoft.ReactNative/Views/ViewPanel.h +0 -82
  601. package/Microsoft.ReactNative/Views/ViewViewManager.cpp +0 -507
  602. package/Microsoft.ReactNative/Views/ViewViewManager.h +0 -52
  603. package/Microsoft.ReactNative/Views/VirtualTextViewManager.cpp +0 -143
  604. package/Microsoft.ReactNative/Views/VirtualTextViewManager.h +0 -57
  605. package/Microsoft.ReactNative/Views/XamlFeatures.cpp +0 -11
  606. package/Microsoft.ReactNative/Views/XamlFeatures.h +0 -11
  607. package/Microsoft.ReactNative/Views/cppwinrt/AccessibilityAction.idl +0 -12
  608. package/Microsoft.ReactNative/Views/cppwinrt/DynamicAutomationPeer.idl +0 -231
  609. package/Microsoft.ReactNative/Views/cppwinrt/ViewPanel.idl +0 -48
  610. package/Microsoft.ReactNative/XamlHelper.cpp +0 -78
  611. package/Microsoft.ReactNative/XamlHelper.h +0 -54
  612. package/Microsoft.ReactNative/XamlHelper.idl +0 -30
  613. package/Microsoft.ReactNative/XamlLoadState.cpp +0 -217
  614. package/Microsoft.ReactNative/XamlLoadState.h +0 -44
  615. package/Microsoft.ReactNative/XamlView.cpp +0 -59
  616. package/Microsoft.ReactNative/XamlView.h +0 -58
  617. package/Microsoft.ReactNative/getLayoutProps.ps1 +0 -5
  618. package/Microsoft.ReactNative.Cxx/UI.Xaml.Automation.Peers.h +0 -10
  619. package/Microsoft.ReactNative.Cxx/UI.Xaml.Automation.h +0 -10
  620. package/Microsoft.ReactNative.Cxx/UI.Xaml.Controls.Primitives.h +0 -10
  621. package/Microsoft.ReactNative.Cxx/UI.Xaml.Controls.h +0 -13
  622. package/Microsoft.ReactNative.Cxx/UI.Xaml.Documents.h +0 -10
  623. package/Microsoft.ReactNative.Cxx/UI.Xaml.Hosting.DesktopWindowXamlSource.h +0 -11
  624. package/Microsoft.ReactNative.Cxx/UI.Xaml.Hosting.h +0 -10
  625. package/Microsoft.ReactNative.Cxx/UI.Xaml.Input.h +0 -10
  626. package/Microsoft.ReactNative.Cxx/UI.Xaml.Markup.h +0 -10
  627. package/Microsoft.ReactNative.Cxx/UI.Xaml.Media.Imaging.h +0 -10
  628. package/Microsoft.ReactNative.Cxx/UI.Xaml.Media.Media3D.h +0 -10
  629. package/Microsoft.ReactNative.Cxx/UI.Xaml.Media.h +0 -10
  630. package/Microsoft.ReactNative.Cxx/UI.Xaml.Navigation.h +0 -10
  631. package/Microsoft.ReactNative.Cxx/UI.Xaml.Shapes.h +0 -10
  632. package/Microsoft.ReactNative.Managed/AttributedViewManager.cs +0 -527
  633. package/Microsoft.ReactNative.Managed/ViewManagerAttributes.cs +0 -91
  634. package/Microsoft.ReactNative.Managed/ViewManagerEvent.cs +0 -13
  635. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/components/view/AccessibilityProps.cpp +0 -344
  636. package/ReactCommon/TEMP_UntilReactCommonUpdate/react/renderer/core/DynamicEventPayload.cpp +0 -42
  637. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/YGEnums.h +0 -146
  638. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/algorithm/CalculateLayout.cpp +0 -2435
  639. package/ReactCommon/TEMP_UntilReactCommonUpdate/yoga/yoga/enums/ExperimentalFeature.h +0 -40
  640. package/Shared/BatchingMessageQueueThread.h +0 -20
  641. package/Shared/ChakraRuntimeHolder.cpp +0 -62
  642. package/Shared/ChakraRuntimeHolder.h +0 -46
  643. package/Shared/CreateInstance.h +0 -25
  644. package/Shared/Executors/WebSocketJSExecutor.cpp +0 -294
  645. package/Shared/Executors/WebSocketJSExecutor.h +0 -123
  646. package/Shared/Executors/WebSocketJSExecutorFactory.cpp +0 -25
  647. package/Shared/Hermes/HermesSamplingProfiler.cpp +0 -114
  648. package/Shared/Hermes/HermesSamplingProfiler.h +0 -26
  649. package/Shared/JSI/ChakraApi.cpp +0 -436
  650. package/Shared/JSI/ChakraApi.h +0 -474
  651. package/Shared/JSI/ChakraJsiRuntime_edgemode.cpp +0 -100
  652. package/Shared/JSI/ChakraRuntime.cpp +0 -1132
  653. package/Shared/JSI/ChakraRuntime.h +0 -512
  654. package/Shared/JSI/ChakraRuntimeArgs.h +0 -45
  655. package/Shared/JSI/ChakraRuntimeFactory.h +0 -15
  656. package/Shared/JSI/JSExecutorFactoryDelegate.h +0 -12
  657. package/Shared/JSI/JSExecutorFactorySettings.cpp +0 -30
  658. package/Shared/JSI/JSExecutorFactorySettings.h +0 -21
  659. package/Shared/NativeModuleProvider.h +0 -40
  660. package/Shared/SystemChakraRuntime.h +0 -38
  661. package/Shared/Threading/BatchingQueueThread.cpp +0 -128
  662. package/Shared/Threading/BatchingQueueThread.h +0 -59
  663. package/Shared/WebSocketJSExecutorFactory.h +0 -27
  664. package/fmt/TEMP_UntilFmtUpdate/core.h +0 -2925
  665. package/template/cpp-app/proj/MyApp.sln +0 -166
  666. package/template/cpp-app/proj/MyApp.vcxproj +0 -176
  667. package/template/cpp-app/proj/MyApp.vcxproj.filters +0 -62
  668. package/template/cpp-app/src/App.cpp +0 -93
  669. package/template/cpp-app/src/App.h +0 -21
  670. package/template/cpp-app/src/App.idl +0 -3
  671. package/template/cpp-app/src/AutolinkedNativeModules.g.cpp +0 -13
  672. package/template/cpp-app/src/AutolinkedNativeModules.g.h +0 -10
  673. package/template/cpp-app/src/MainPage.cpp +0 -20
  674. package/template/cpp-app/src/MainPage.h +0 -19
  675. package/template/cpp-app/src/MainPage.idl +0 -10
  676. package/template/cpp-app/src/PropertySheet.props +0 -16
  677. package/template/cpp-app/src/ReactPackageProvider.cpp +0 -15
  678. package/template/cpp-app/src/ReactPackageProvider.h +0 -13
  679. package/template/cpp-app/src/pch.cpp +0 -1
  680. package/template/cpp-app/src/pch.h +0 -24
  681. package/template/cs-app/proj/MyApp.csproj +0 -162
  682. package/template/cs-app/proj/MyApp.sln +0 -191
  683. package/template/cs-app/src/App.xaml.cs +0 -62
  684. package/template/cs-app/src/AutolinkedNativeModules.g.cs +0 -13
  685. package/template/cs-app/src/MainPage.xaml.cs +0 -34
  686. package/template/cs-app/src/Properties/AssemblyInfo.cs +0 -29
  687. package/template/cs-app/src/Properties/Default.rd.xml +0 -32
  688. package/template/cs-app/src/ReactPackageProvider.cs +0 -17
  689. package/template/shared-app/assets/LockScreenLogo.scale-200.png +0 -0
  690. package/template/shared-app/assets/SplashScreen.scale-200.png +0 -0
  691. package/template/shared-app/assets/Square150x150Logo.scale-200.png +0 -0
  692. package/template/shared-app/assets/Square44x44Logo.scale-200.png +0 -0
  693. package/template/shared-app/assets/Square44x44Logo.targetsize-24_altform-unplated.png +0 -0
  694. package/template/shared-app/assets/StoreLogo.png +0 -0
  695. package/template/shared-app/assets/Wide310x150Logo.scale-200.png +0 -0
  696. package/template/shared-app/proj/ExperimentalFeatures.props +0 -32
  697. package/template/shared-app/proj/NuGet_Config +0 -19
  698. package/template/shared-app/src/App.xaml +0 -10
  699. package/template/shared-app/src/AutolinkedNativeModules.g.props +0 -6
  700. package/template/shared-app/src/AutolinkedNativeModules.g.targets +0 -6
  701. package/template/shared-app/src/MainPage.xaml +0 -21
  702. package/template/shared-app/src/Package.appxmanifest +0 -50
  703. package/templates/old/uwp-cpp-app/template.config.js +0 -15
  704. package/templates/old/uwp-cs-app/template.config.js +0 -15
@@ -4,11 +4,9 @@
4
4
  #if __has_include("Composition.Experimental.SystemCompositionContextHelper.g.cpp")
5
5
  #include "Composition.Experimental.SystemCompositionContextHelper.g.cpp"
6
6
  #endif
7
- #ifdef USE_WINUI3
8
7
  #if __has_include("Composition.Experimental.MicrosoftCompositionContextHelper.g.cpp")
9
8
  #include "Composition.Experimental.MicrosoftCompositionContextHelper.g.cpp"
10
9
  #endif
11
- #endif
12
10
 
13
11
  namespace winrt::Microsoft::ReactNative::Composition::Experimental::implementation {
14
12
 
@@ -43,7 +41,6 @@ winrt::Windows::UI::Composition::ICompositionSurface SystemCompositionContextHel
43
41
  return nullptr;
44
42
  }
45
43
 
46
- #ifdef USE_WINUI3
47
44
  ICompositionContext MicrosoftCompositionContextHelper::CreateContext(
48
45
  winrt::Microsoft::UI::Composition::Compositor const &) noexcept {
49
46
  return nullptr;
@@ -74,6 +71,5 @@ winrt::Microsoft::UI::Composition::ICompositionSurface MicrosoftCompositionConte
74
71
  IDrawingSurfaceBrush) noexcept {
75
72
  return nullptr;
76
73
  }
77
- #endif
78
74
 
79
75
  } // namespace winrt::Microsoft::ReactNative::Composition::Experimental::implementation
@@ -118,7 +118,6 @@ struct CompositionKeyboardSource
118
118
  CompositionEventHandler *m_outer{nullptr};
119
119
  };
120
120
 
121
- #ifdef USE_WINUI3
122
121
  struct CompositionInputKeyboardSource : winrt::implements<
123
122
  CompositionInputKeyboardSource,
124
123
  winrt::Microsoft::ReactNative::Composition::Input::KeyboardSource> {
@@ -138,7 +137,6 @@ struct CompositionInputKeyboardSource : winrt::implements<
138
137
  private:
139
138
  winrt::Microsoft::UI::Input::InputKeyboardSource m_source{nullptr};
140
139
  };
141
- #endif
142
140
 
143
141
  CompositionEventHandler::CompositionEventHandler(
144
142
  const winrt::Microsoft::ReactNative::ReactContext &context,
@@ -146,7 +144,6 @@ CompositionEventHandler::CompositionEventHandler(
146
144
  : m_context(context), m_wkRootView(reactNativeIsland) {}
147
145
 
148
146
  void CompositionEventHandler::Initialize() noexcept {
149
- #ifdef USE_WINUI3
150
147
  if (auto island = m_wkRootView.get().Island()) {
151
148
  auto pointerSource = winrt::Microsoft::UI::Input::InputPointerSource::GetForIsland(island);
152
149
 
@@ -323,12 +320,36 @@ void CompositionEventHandler::Initialize() noexcept {
323
320
  }
324
321
  }
325
322
  });
323
+
324
+ m_contextMenuKeyToken =
325
+ keyboardSource.ContextMenuKey([wkThis = weak_from_this()](
326
+ winrt::Microsoft::UI::Input::InputKeyboardSource const & /*source*/,
327
+ winrt::Microsoft::UI::Input::ContextMenuKeyEventArgs const &args) {
328
+ if (auto strongThis = wkThis.lock()) {
329
+ if (auto strongRootView = strongThis->m_wkRootView.get()) {
330
+ if (strongThis->SurfaceId() == -1)
331
+ return;
332
+
333
+ auto focusedComponent = strongThis->RootComponentView().GetFocusedComponent();
334
+ if (focusedComponent) {
335
+ auto tag =
336
+ winrt::get_self<winrt::Microsoft::ReactNative::implementation::ComponentView>(focusedComponent)
337
+ ->Tag();
338
+ auto contextMenuArgs = winrt::make<
339
+ winrt::Microsoft::ReactNative::Composition::Input::implementation::ContextMenuKeyEventArgs>(tag);
340
+ winrt::get_self<winrt::Microsoft::ReactNative::implementation::ComponentView>(focusedComponent)
341
+ ->OnContextMenuKey(contextMenuArgs);
342
+ if (contextMenuArgs.Handled()) {
343
+ args.Handled(true);
344
+ }
345
+ }
346
+ }
347
+ }
348
+ });
326
349
  }
327
- #endif
328
350
  }
329
351
 
330
352
  CompositionEventHandler::~CompositionEventHandler() {
331
- #ifdef USE_WINUI3
332
353
  if (auto strongRootView = m_wkRootView.get()) {
333
354
  if (auto island = strongRootView.Island()) {
334
355
  auto pointerSource = winrt::Microsoft::UI::Input::InputPointerSource::GetForIsland(island);
@@ -341,9 +362,9 @@ CompositionEventHandler::~CompositionEventHandler() {
341
362
  keyboardSource.KeyDown(m_keyDownToken);
342
363
  keyboardSource.KeyUp(m_keyUpToken);
343
364
  keyboardSource.CharacterReceived(m_characterReceivedToken);
365
+ keyboardSource.ContextMenuKey(m_contextMenuKeyToken);
344
366
  }
345
367
  }
346
- #endif
347
368
 
348
369
  if (m_hcursorOwned) {
349
370
  ::DestroyCursor(m_hcursor);
@@ -449,6 +470,54 @@ int64_t CompositionEventHandler::SendMessage(HWND hwnd, uint32_t msg, uint64_t w
449
470
  }
450
471
  return 0;
451
472
  }
473
+ case WM_RBUTTONDOWN: {
474
+ if (auto strongRootView = m_wkRootView.get()) {
475
+ auto pp = winrt::make<winrt::Microsoft::ReactNative::Composition::Input::implementation::PointerPoint>(
476
+ hwnd, msg, wParam, lParam, strongRootView.ScaleFactor());
477
+ onPointerPressed(pp, GetKeyModifiers(wParam));
478
+ }
479
+ return 0;
480
+ }
481
+ case WM_RBUTTONUP: {
482
+ if (auto strongRootView = m_wkRootView.get()) {
483
+ auto pp = winrt::make<winrt::Microsoft::ReactNative::Composition::Input::implementation::PointerPoint>(
484
+ hwnd, msg, wParam, lParam, strongRootView.ScaleFactor());
485
+ onPointerReleased(pp, GetKeyModifiers(wParam));
486
+ }
487
+ return 0;
488
+ }
489
+ case WM_MBUTTONDOWN: {
490
+ if (auto strongRootView = m_wkRootView.get()) {
491
+ auto pp = winrt::make<winrt::Microsoft::ReactNative::Composition::Input::implementation::PointerPoint>(
492
+ hwnd, msg, wParam, lParam, strongRootView.ScaleFactor());
493
+ onPointerPressed(pp, GetKeyModifiers(wParam));
494
+ }
495
+ return 0;
496
+ }
497
+ case WM_MBUTTONUP: {
498
+ if (auto strongRootView = m_wkRootView.get()) {
499
+ auto pp = winrt::make<winrt::Microsoft::ReactNative::Composition::Input::implementation::PointerPoint>(
500
+ hwnd, msg, wParam, lParam, strongRootView.ScaleFactor());
501
+ onPointerReleased(pp, GetKeyModifiers(wParam));
502
+ }
503
+ return 0;
504
+ }
505
+ case WM_XBUTTONDOWN: {
506
+ if (auto strongRootView = m_wkRootView.get()) {
507
+ auto pp = winrt::make<winrt::Microsoft::ReactNative::Composition::Input::implementation::PointerPoint>(
508
+ hwnd, msg, wParam, lParam, strongRootView.ScaleFactor());
509
+ onPointerPressed(pp, GetKeyModifiers(wParam));
510
+ }
511
+ return 0;
512
+ }
513
+ case WM_XBUTTONUP: {
514
+ if (auto strongRootView = m_wkRootView.get()) {
515
+ auto pp = winrt::make<winrt::Microsoft::ReactNative::Composition::Input::implementation::PointerPoint>(
516
+ hwnd, msg, wParam, lParam, strongRootView.ScaleFactor());
517
+ onPointerReleased(pp, GetKeyModifiers(wParam));
518
+ }
519
+ return 0;
520
+ }
452
521
  case WM_POINTERUP: {
453
522
  if (auto strongRootView = m_wkRootView.get()) {
454
523
  auto pp = winrt::make<winrt::Microsoft::ReactNative::Composition::Input::implementation::PointerPoint>(
@@ -166,7 +166,6 @@ class CompositionEventHandler : public std::enable_shared_from_this<CompositionE
166
166
  facebook::react::Cursor m_currentCursor{facebook::react::Cursor::Auto};
167
167
  winrt::Microsoft::UI::Input::InputCursor m_inputCursor{nullptr};
168
168
 
169
- #ifdef USE_WINUI3
170
169
  winrt::event_token m_pointerPressedToken;
171
170
  winrt::event_token m_pointerReleasedToken;
172
171
  winrt::event_token m_pointerMovedToken;
@@ -176,7 +175,7 @@ class CompositionEventHandler : public std::enable_shared_from_this<CompositionE
176
175
  winrt::event_token m_keyDownToken;
177
176
  winrt::event_token m_keyUpToken;
178
177
  winrt::event_token m_characterReceivedToken;
179
- #endif
178
+ winrt::event_token m_contextMenuKeyToken;
180
179
  };
181
180
 
182
181
  } // namespace Microsoft::ReactNative
@@ -42,7 +42,6 @@ struct IWindowsCompositionDrawingSurfaceInner : public IUnknown {
42
42
  virtual winrt::Windows::UI::Composition::ICompositionSurface Inner() const noexcept = 0;
43
43
  };
44
44
 
45
- #ifdef USE_WINUI3
46
45
  // Windows composition specific interface to extract the inner compositor object
47
46
  MSO_STRUCT_GUID(IMicrosoftCompositionCompositor, "B7B3E027-6A87-4946-B397-247AAB8634C6")
48
47
  struct IMicrosoftCompositionCompositor : public IUnknown {
@@ -72,7 +71,6 @@ MSO_STRUCT_GUID(IMicrosoftCompositionDrawingSurfaceInner, "4ADDC62F-51D0-4C71-8B
72
71
  struct IMicrosoftCompositionDrawingSurfaceInner : public IUnknown {
73
72
  virtual winrt::Microsoft::UI::Composition::ICompositionSurface Inner() const noexcept = 0;
74
73
  };
75
- #endif
76
74
 
77
75
  } // namespace Composition
78
76
 
@@ -18,10 +18,8 @@
18
18
  #include "CompositionRootAutomationProvider.h"
19
19
  #include "ReactNativeIsland.h"
20
20
 
21
- #if USE_WINUI3
22
21
  #include <winrt/Microsoft.UI.Content.h>
23
22
  #include <winrt/Microsoft.UI.interop.h>
24
- #endif
25
23
 
26
24
  WINUSERAPI UINT WINAPI GetDpiForWindow(_In_ HWND hwnd);
27
25
 
@@ -35,7 +33,6 @@ void CompositionHwndHost::Initialize(uint64_t hwnd) noexcept {
35
33
  auto compositionContext =
36
34
  winrt::Microsoft::ReactNative::Composition::implementation::CompositionUIService::GetCompositionContext(
37
35
  ReactViewHost().ReactNativeHost().InstanceSettings().Properties());
38
- #if USE_WINUI3
39
36
  if (auto liftedCompositor =
40
37
  winrt::Microsoft::ReactNative::Composition::Experimental::MicrosoftCompositionContextHelper::InnerCompositor(
41
38
  compositionContext)) {
@@ -56,7 +53,6 @@ void CompositionHwndHost::Initialize(uint64_t hwnd) noexcept {
56
53
  m_compRootView.as<winrt::Microsoft::ReactNative::Composition::Experimental::IInternalCompositionRootView>()
57
54
  .SetWindow(reinterpret_cast<uint64_t>(m_hwnd));
58
55
 
59
- #endif
60
56
  auto compositor =
61
57
  winrt::Microsoft::ReactNative::Composition::Experimental::SystemCompositionContextHelper::InnerCompositor(
62
58
  compositionContext);
@@ -77,10 +73,7 @@ void CompositionHwndHost::Initialize(uint64_t hwnd) noexcept {
77
73
  .InternalRootVisual(
78
74
  winrt::Microsoft::ReactNative::Composition::Experimental::SystemCompositionContextHelper::CreateVisual(
79
75
  target.Root()));
80
-
81
- #if USE_WINUI3
82
76
  }
83
- #endif
84
77
 
85
78
  m_compRootView.ReactViewHost(std::move(m_reactViewHost));
86
79
  m_compRootView.ScaleFactor(ScaleFactor());
@@ -122,9 +115,7 @@ LRESULT CompositionHwndHost::TranslateMessage(int msg, uint64_t wParam, int64_t
122
115
  }
123
116
 
124
117
  if (m_compRootView) {
125
- #if USE_WINUI3
126
118
  if (!m_compRootView.Island()) // When using Island hosting we dont need to forward window messages
127
- #endif
128
119
  return static_cast<LRESULT>(
129
120
  m_compRootView.as<winrt::Microsoft::ReactNative::Composition::Experimental::IInternalCompositionRootView>()
130
121
  .SendMessage(msg, wParam, lParam));
@@ -3,10 +3,8 @@
3
3
  #include <algorithm>
4
4
  #include "UiaHelpers.h"
5
5
 
6
- #ifdef USE_WINUI3
7
6
  #include <winrt/Microsoft.UI.Content.h>
8
7
  #include <winrt/Microsoft.UI.Input.h>
9
- #endif
10
8
 
11
9
  #include <Fabric/Composition/ReactNativeIsland.h>
12
10
 
@@ -59,7 +57,6 @@ HRESULT __stdcall CompositionRootAutomationProvider::GetEmbeddedFragmentRoots(SA
59
57
  }
60
58
 
61
59
  HRESULT __stdcall CompositionRootAutomationProvider::SetFocus(void) {
62
- #ifdef USE_WINUI3
63
60
  if (m_island) {
64
61
  auto focusController = winrt::Microsoft::UI::Input::InputFocusController::GetForIsland(m_island);
65
62
 
@@ -69,7 +66,6 @@ HRESULT __stdcall CompositionRootAutomationProvider::SetFocus(void) {
69
66
  }
70
67
  }
71
68
  }
72
- #endif
73
69
 
74
70
  if (m_hwnd) {
75
71
  ::SetFocus(m_hwnd);
@@ -107,13 +103,11 @@ HRESULT __stdcall CompositionRootAutomationProvider::get_HostRawElementProvider(
107
103
  if (pRetVal == nullptr)
108
104
  return E_POINTER;
109
105
 
110
- #ifdef USE_WINUI3
111
106
  if (m_island) {
112
107
  winrt::Windows::Foundation::IInspectable host = m_island.GetAutomationHostProvider();
113
108
  *pRetVal = host.as<IRawElementProviderSimple>().detach();
114
109
  return S_OK;
115
110
  }
116
- #endif
117
111
 
118
112
  // TODO: assumes windowed
119
113
  if (!IsWindow(m_hwnd)) {
@@ -130,7 +124,6 @@ HRESULT __stdcall CompositionRootAutomationProvider::get_BoundingRectangle(UiaRe
130
124
  if (pRetVal == nullptr)
131
125
  return E_POINTER;
132
126
 
133
- #ifdef USE_WINUI3
134
127
  if (m_island) {
135
128
  auto cc = m_island.CoordinateConverter();
136
129
  auto origin = cc.ConvertLocalToScreen(winrt::Windows::Foundation::Point{0, 0});
@@ -143,7 +136,6 @@ HRESULT __stdcall CompositionRootAutomationProvider::get_BoundingRectangle(UiaRe
143
136
 
144
137
  return S_OK;
145
138
  }
146
- #endif
147
139
 
148
140
  // TODO: Need host site offsets
149
141
  // Assume we're hosted in some other visual-based hosting site
@@ -265,11 +257,9 @@ void CompositionRootAutomationProvider::SetHwnd(HWND hwnd) noexcept {
265
257
  m_hwnd = hwnd;
266
258
  }
267
259
 
268
- #ifdef USE_WINUI3
269
260
  void CompositionRootAutomationProvider::SetIsland(winrt::Microsoft::UI::Content::ContentIsland &island) noexcept {
270
261
  m_island = island;
271
262
  }
272
- #endif
273
263
 
274
264
  HRESULT __stdcall CompositionRootAutomationProvider::Navigate(
275
265
  NavigateDirection direction,
@@ -42,9 +42,7 @@ class CompositionRootAutomationProvider : public winrt::implements<
42
42
  CompositionRootAutomationProvider(const winrt::Microsoft::ReactNative::ReactNativeIsland &rootView) noexcept;
43
43
 
44
44
  void SetHwnd(HWND hwnd) noexcept;
45
- #ifdef USE_WINUI3
46
45
  void SetIsland(winrt::Microsoft::UI::Content::ContentIsland &island) noexcept;
47
- #endif
48
46
  bool WasPropertyAdvised(PROPERTYID prop) noexcept;
49
47
  bool WasEventAdvised(EVENTID event) noexcept;
50
48
 
@@ -75,9 +73,7 @@ class CompositionRootAutomationProvider : public winrt::implements<
75
73
  std::vector<AdvisedEvent> m_advisedProperties{};
76
74
  winrt::weak_ref<winrt::Microsoft::ReactNative::ReactNativeIsland> m_wkRootView;
77
75
  HWND m_hwnd{nullptr};
78
- #ifdef USE_WINUI3
79
76
  winrt::Microsoft::UI::Content::ContentIsland m_island{nullptr};
80
- #endif
81
77
  };
82
78
 
83
79
  } // namespace winrt::Microsoft::ReactNative::implementation
@@ -11,10 +11,8 @@
11
11
  #include <Fabric/AbiViewProps.h>
12
12
  #include <Fabric/Composition/ReactNativeIsland.h>
13
13
  #include <Fabric/FabricUIManagerModule.h>
14
- #include <UI.Xaml.Controls.h>
15
14
  #include <Utils/KeyboardUtils.h>
16
15
  #include <Utils/ValueUtils.h>
17
- #include <Views/FrameworkElementTransferProperties.h>
18
16
  #include <atlcomcli.h>
19
17
  #include <winrt/Microsoft.ReactNative.Composition.Experimental.h>
20
18
  #include <winrt/Microsoft.UI.Input.h>
@@ -527,10 +525,10 @@ facebook::react::RectangleEdges<bool> ComponentView::focusNudges() const noexcep
527
525
 
528
526
  Assert(m_componentHostingFocusVisual);
529
527
 
530
- if (layoutMetrics.frame.origin.x < 0) {
528
+ if (layoutMetrics.frame.origin.x < m_componentHostingFocusVisual->m_layoutMetrics.frame.origin.x) {
531
529
  nudgeEdges.left = true;
532
530
  }
533
- if (layoutMetrics.frame.origin.y < 0) {
531
+ if (layoutMetrics.frame.origin.y < m_componentHostingFocusVisual->m_layoutMetrics.frame.origin.y) {
534
532
  nudgeEdges.top = true;
535
533
  }
536
534
  if (layoutMetrics.frame.getMaxX() > m_componentHostingFocusVisual->m_layoutMetrics.frame.getMaxX()) {
@@ -8,7 +8,6 @@
8
8
 
9
9
  #include <Fabric/FabricUIManagerModule.h>
10
10
  #include <IReactContext.h>
11
- #include <UI.Xaml.Controls.h>
12
11
  #include <Utils/ValueUtils.h>
13
12
  #include <winrt/Microsoft.UI.Content.h>
14
13
  #include <winrt/Microsoft.UI.Input.h>
@@ -172,24 +171,6 @@ ContentIslandComponentView::~ContentIslandComponentView() noexcept {
172
171
  m_navigationHost.DepartFocusRequested(m_navigationHostDepartFocusRequestedToken);
173
172
  m_navigationHostDepartFocusRequestedToken = {};
174
173
  }
175
- if (m_childSiteLink) {
176
- if (m_fragmentRootAutomationProviderRequestedToken) {
177
- m_childSiteLink.FragmentRootAutomationProviderRequested(m_fragmentRootAutomationProviderRequestedToken);
178
- m_fragmentRootAutomationProviderRequestedToken = {};
179
- }
180
- if (m_parentAutomationProviderRequestedToken) {
181
- m_childSiteLink.ParentAutomationProviderRequested(m_parentAutomationProviderRequestedToken);
182
- m_parentAutomationProviderRequestedToken = {};
183
- }
184
- if (m_nextSiblingAutomationProviderRequestedToken) {
185
- m_childSiteLink.NextSiblingAutomationProviderRequested(m_nextSiblingAutomationProviderRequestedToken);
186
- m_nextSiblingAutomationProviderRequestedToken = {};
187
- }
188
- if (m_previousSiblingAutomationProviderRequestedToken) {
189
- m_childSiteLink.PreviousSiblingAutomationProviderRequested(m_previousSiblingAutomationProviderRequestedToken);
190
- m_previousSiblingAutomationProviderRequestedToken = {};
191
- }
192
- }
193
174
  if (m_islandToConnect) {
194
175
  m_islandToConnect.Close();
195
176
  }
@@ -231,56 +212,13 @@ void ContentIslandComponentView::prepareForRecycle() noexcept {
231
212
  }
232
213
 
233
214
  void ContentIslandComponentView::ConfigureChildSiteLinkAutomation() noexcept {
234
- // This automation mode must be set before connecting the child ContentIsland.
235
- // It puts the child content into a mode where it won't own its own framework root. Instead, the child island's
236
- // automation peers will use the same framework root as the automation peer of this ContentIslandComponentView.
237
- m_childSiteLink.AutomationOption(winrt::Microsoft::UI::Content::ContentAutomationOptions::FragmentBased);
238
-
239
- // These events are raised in response to the child ContentIsland asking for providers.
240
- // For example, the ContentIsland.FragmentRootAutomationProvider property will return
241
- // the provider we provide here in FragmentRootAutomationProviderRequested.
242
-
243
- // We capture "this" as a raw pointer because ContentIslandComponentView doesn't currently support weak ptrs.
244
- // It's safe because we disconnect these events in the destructor.
245
-
246
- m_fragmentRootAutomationProviderRequestedToken = m_childSiteLink.FragmentRootAutomationProviderRequested(
247
- [this](
248
- const winrt::Microsoft::UI::Content::IContentSiteAutomation &,
249
- const winrt::Microsoft::UI::Content::ContentSiteAutomationProviderRequestedEventArgs &args) {
250
- // The child island's fragment tree doesn't have its own fragment root.
251
- // Here's how we can provide the correct fragment root to the child's UIA logic.
252
- winrt::com_ptr<IRawElementProviderFragmentRoot> fragmentRoot{nullptr};
253
- auto uiaProvider = this->EnsureUiaProvider();
254
- uiaProvider.as<IRawElementProviderFragment>()->get_FragmentRoot(fragmentRoot.put());
255
- args.AutomationProvider(fragmentRoot.as<IInspectable>());
256
- args.Handled(true);
257
- });
258
-
259
- m_parentAutomationProviderRequestedToken = m_childSiteLink.ParentAutomationProviderRequested(
260
- [this](
261
- const winrt::Microsoft::UI::Content::IContentSiteAutomation &,
262
- const winrt::Microsoft::UI::Content::ContentSiteAutomationProviderRequestedEventArgs &args) {
263
- auto uiaProvider = this->EnsureUiaProvider();
264
- args.AutomationProvider(uiaProvider);
265
- args.Handled(true);
266
- });
267
-
268
- m_nextSiblingAutomationProviderRequestedToken = m_childSiteLink.NextSiblingAutomationProviderRequested(
269
- [](const winrt::Microsoft::UI::Content::IContentSiteAutomation &,
270
- const winrt::Microsoft::UI::Content::ContentSiteAutomationProviderRequestedEventArgs &args) {
271
- // The ContentIsland will always be the one and only child of this node, so it won't have siblings.
272
- args.AutomationProvider(nullptr);
273
- args.Handled(true);
274
- });
275
-
276
- m_previousSiblingAutomationProviderRequestedToken = m_childSiteLink.PreviousSiblingAutomationProviderRequested(
277
- [](const winrt::Microsoft::UI::Content::IContentSiteAutomation &,
278
- const winrt::Microsoft::UI::Content::ContentSiteAutomationProviderRequestedEventArgs &args) {
279
- // The ContentIsland will always be the one and only child of this node, so it won't have siblings.
280
- args.AutomationProvider(nullptr);
281
- args.Handled(true);
282
- });
215
+ // Use FrameworkBased to let the XamlIsland manage its own framework-level accessibility tree
216
+ // and raise focus events naturally. This tells the system that the child island has its own
217
+ // framework (WinUI/XAML) that manages automation.
218
+ m_childSiteLink.AutomationOption(winrt::Microsoft::UI::Content::ContentAutomationOptions::FrameworkBased);
283
219
 
220
+ // When using FrameworkBased mode, we don't register automation callbacks - let the XamlIsland handle its own UIA
221
+ // tree.
284
222
  if (m_innerAutomationProvider) {
285
223
  m_innerAutomationProvider->SetChildSiteLink(m_childSiteLink);
286
224
  }
@@ -70,10 +70,6 @@ struct ContentIslandComponentView : ContentIslandComponentViewT<ContentIslandCom
70
70
 
71
71
  // Automation
72
72
  void ConfigureChildSiteLinkAutomation() noexcept;
73
- winrt::event_token m_fragmentRootAutomationProviderRequestedToken{};
74
- winrt::event_token m_parentAutomationProviderRequestedToken{};
75
- winrt::event_token m_nextSiblingAutomationProviderRequestedToken{};
76
- winrt::event_token m_previousSiblingAutomationProviderRequestedToken{};
77
73
  };
78
74
 
79
75
  } // namespace winrt::Microsoft::ReactNative::Composition::implementation
@@ -6,7 +6,6 @@
6
6
 
7
7
  #include "ImageComponentView.h"
8
8
 
9
- #include <UI.Xaml.Controls.h>
10
9
  #include <Utils/ValueUtils.h>
11
10
 
12
11
  #include <IReactContext.h>
@@ -7,7 +7,6 @@
7
7
  #include <Fabric/ComponentView.h>
8
8
 
9
9
  #include <Microsoft.ReactNative.Cxx/ReactContext.h>
10
- #include <Views/Image/ReactImage.h>
11
10
  #include <react/renderer/components/image/ImageShadowNode.h>
12
11
  #include <react/renderer/imagemanager/ImageResponseObserver.h>
13
12
  #include <wincodec.h>
@@ -107,6 +107,10 @@ void ParagraphComponentView::updateProps(
107
107
  m_requireRedraw = true;
108
108
  }
109
109
 
110
+ if (oldViewProps.selectionColor != newViewProps.selectionColor) {
111
+ m_requireRedraw = true;
112
+ }
113
+
110
114
  Super::updateProps(props, oldProps);
111
115
  }
112
116
 
@@ -167,6 +171,26 @@ void ParagraphComponentView::updateTextAlignment(
167
171
  m_textLayout = nullptr;
168
172
  }
169
173
 
174
+ facebook::react::Tag ParagraphComponentView::hitTest(
175
+ facebook::react::Point pt,
176
+ facebook::react::Point &localPt,
177
+ bool ignorePointerEvents) const noexcept {
178
+ facebook::react::Point ptLocal{pt.x - m_layoutMetrics.frame.origin.x, pt.y - m_layoutMetrics.frame.origin.y};
179
+ const auto &props = paragraphProps();
180
+ const auto &vProps = *viewProps();
181
+
182
+ if (props.isSelectable && ptLocal.x >= 0 && ptLocal.x <= m_layoutMetrics.frame.size.width && ptLocal.y >= 0 &&
183
+ ptLocal.y <= m_layoutMetrics.frame.size.height) {
184
+ // claims if pointer events are enabled for this component
185
+ if (ignorePointerEvents || vProps.pointerEvents == facebook::react::PointerEventsMode::Auto ||
186
+ vProps.pointerEvents == facebook::react::PointerEventsMode::BoxOnly) {
187
+ localPt = ptLocal;
188
+ return Tag();
189
+ }
190
+ }
191
+ return Super::hitTest(pt, localPt, ignorePointerEvents);
192
+ }
193
+
170
194
  bool ParagraphComponentView::IsTextSelectableAtPoint(facebook::react::Point pt) noexcept {
171
195
  // paragraph-level selectable prop is enabled
172
196
  const auto &props = paragraphProps();
@@ -454,9 +478,14 @@ void ParagraphComponentView::DrawSelectionHighlight(
454
478
  return;
455
479
  }
456
480
 
457
- // TODO: use prop selectionColor if provided
458
481
  winrt::com_ptr<ID2D1SolidColorBrush> selectionBrush;
459
- const D2D1_COLOR_F selectionColor = theme()->D2DPlatformColor("Highlight@40");
482
+ D2D1_COLOR_F selectionColor;
483
+ const auto &props = paragraphProps();
484
+ if (props.selectionColor) {
485
+ selectionColor = theme()->D2DColor(**props.selectionColor);
486
+ } else {
487
+ selectionColor = theme()->D2DPlatformColor("Highlight@40");
488
+ }
460
489
  hr = renderTarget.CreateSolidColorBrush(selectionColor, selectionBrush.put());
461
490
 
462
491
  if (FAILED(hr)) {
@@ -519,6 +548,7 @@ void ParagraphComponentView::ClearSelection() noexcept {
519
548
  m_selectionStart = std::nullopt;
520
549
  m_selectionEnd = std::nullopt;
521
550
  m_isSelecting = false;
551
+ m_isWordSelecting = false;
522
552
  if (hadSelection) {
523
553
  // Clears selection highlight
524
554
  DrawText();
@@ -534,7 +564,8 @@ void ParagraphComponentView::OnPointerPressed(
534
564
  return;
535
565
  }
536
566
 
537
- auto pp = args.GetCurrentPoint(-1);
567
+ // Use Tag() to get coordinates in component's local space
568
+ auto pp = args.GetCurrentPoint(static_cast<int32_t>(Tag()));
538
569
 
539
570
  // Ignores right-click
540
571
  if (pp.Properties().PointerUpdateKind() ==
@@ -545,8 +576,8 @@ void ParagraphComponentView::OnPointerPressed(
545
576
 
546
577
  auto position = pp.Position();
547
578
 
548
- facebook::react::Point localPt{
549
- position.X - m_layoutMetrics.frame.origin.x, position.Y - m_layoutMetrics.frame.origin.y};
579
+ // GetCurrentPoint(Tag()) returns position relative to component origin
580
+ facebook::react::Point localPt{position.X, position.Y};
550
581
 
551
582
  std::optional<int32_t> charPosition = GetTextPositionAtPoint(localPt);
552
583
 
@@ -568,7 +599,13 @@ void ParagraphComponentView::OnPointerPressed(
568
599
 
569
600
  if (isDoubleClick) {
570
601
  SelectWordAtPosition(*charPosition);
571
- m_isSelecting = false;
602
+ if (m_selectionStart && m_selectionEnd) {
603
+ m_isWordSelecting = true;
604
+ m_wordAnchorStart = *m_selectionStart;
605
+ m_wordAnchorEnd = *m_selectionEnd;
606
+ m_isSelecting = true;
607
+ CapturePointer(args.Pointer());
608
+ }
572
609
  } else {
573
610
  // Single-click: start drag selection
574
611
  m_selectionStart = charPosition;
@@ -610,17 +647,35 @@ void ParagraphComponentView::OnPointerMoved(
610
647
  facebook::react::Point localPt{position.X, position.Y};
611
648
  std::optional<int32_t> charPosition = GetClampedTextPosition(localPt);
612
649
 
613
- if (charPosition && charPosition != m_selectionEnd) {
614
- m_selectionEnd = charPosition;
615
- DrawText();
616
- args.Handled(true);
650
+ if (charPosition) {
651
+ if (m_isWordSelecting) {
652
+ // Extend selection by whole words
653
+ auto [wordStart, wordEnd] = GetWordBoundariesAtPosition(*charPosition);
654
+
655
+ if (*charPosition < m_wordAnchorStart) {
656
+ m_selectionStart = wordStart;
657
+ m_selectionEnd = m_wordAnchorEnd;
658
+ } else if (*charPosition >= m_wordAnchorEnd) {
659
+ m_selectionStart = m_wordAnchorStart;
660
+ m_selectionEnd = wordEnd;
661
+ } else {
662
+ m_selectionStart = m_wordAnchorStart;
663
+ m_selectionEnd = m_wordAnchorEnd;
664
+ }
665
+ DrawText();
666
+ args.Handled(true);
667
+ } else if (charPosition != m_selectionEnd) {
668
+ m_selectionEnd = charPosition;
669
+ DrawText();
670
+ args.Handled(true);
671
+ }
617
672
  }
618
673
  }
619
674
 
620
675
  void ParagraphComponentView::OnPointerReleased(
621
676
  const winrt::Microsoft::ReactNative::Composition::Input::PointerRoutedEventArgs &args) noexcept {
622
677
  // Check for right-click to show context menu
623
- auto pp = args.GetCurrentPoint(-1);
678
+ auto pp = args.GetCurrentPoint(static_cast<int32_t>(Tag()));
624
679
  if (pp.Properties().PointerUpdateKind() ==
625
680
  winrt::Microsoft::ReactNative::Composition::Input::PointerUpdateKind::RightButtonReleased) {
626
681
  const auto &props = paragraphProps();
@@ -637,6 +692,7 @@ void ParagraphComponentView::OnPointerReleased(
637
692
  }
638
693
 
639
694
  m_isSelecting = false;
695
+ m_isWordSelecting = false;
640
696
 
641
697
  ReleasePointerCapture(args.Pointer());
642
698
 
@@ -661,6 +717,7 @@ void ParagraphComponentView::OnPointerCaptureLost() noexcept {
661
717
  // Pointer capture was lost stop any active selection drag
662
718
  if (m_isSelecting) {
663
719
  m_isSelecting = false;
720
+ m_isWordSelecting = false;
664
721
 
665
722
  if (!m_selectionStart || !m_selectionEnd || *m_selectionStart == *m_selectionEnd) {
666
723
  m_selectionStart = std::nullopt;
@@ -711,12 +768,17 @@ void ParagraphComponentView::CopySelectionToClipboard() noexcept {
711
768
  winrt::Windows::ApplicationModel::DataTransfer::Clipboard::SetContent(dataPackage);
712
769
  }
713
770
 
714
- void ParagraphComponentView::SelectWordAtPosition(int32_t charPosition) noexcept {
771
+ std::pair<int32_t, int32_t> ParagraphComponentView::GetWordBoundariesAtPosition(int32_t charPosition) noexcept {
715
772
  const std::wstring utf16Text{facebook::react::WindowsTextLayoutManager::GetTransformedText(m_attributedStringBox)};
716
773
  const int32_t textLength = static_cast<int32_t>(utf16Text.length());
717
774
 
718
- if (utf16Text.empty() || charPosition < 0 || charPosition >= textLength) {
719
- return;
775
+ if (utf16Text.empty() || charPosition < 0) {
776
+ return {0, 0};
777
+ }
778
+
779
+ charPosition = std::min(charPosition, textLength - 1);
780
+ if (charPosition < 0) {
781
+ return {0, 0};
720
782
  }
721
783
 
722
784
  int32_t wordStart = charPosition;
@@ -749,6 +811,12 @@ void ParagraphComponentView::SelectWordAtPosition(int32_t charPosition) noexcept
749
811
  }
750
812
  }
751
813
 
814
+ return {wordStart, wordEnd};
815
+ }
816
+
817
+ void ParagraphComponentView::SelectWordAtPosition(int32_t charPosition) noexcept {
818
+ auto [wordStart, wordEnd] = GetWordBoundariesAtPosition(charPosition);
819
+
752
820
  if (wordEnd > wordStart) {
753
821
  SetSelection(wordStart, wordEnd);
754
822
  DrawText();