CARVIEW |
Select Language
HTTP/2 200
date: Sat, 26 Jul 2025 17:09:38 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
x-repository-download: git clone https://github.com/microsoft/react-native-windows.git
etag: W/"8e249617fb97e576509e7a3e26df7adc"
cache-control: max-age=0, private, must-revalidate
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: no-referrer-when-downgrade
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=r442xZss9OCyrIqWDLMMTo%2Bn6NMWn%2BXg3WSrdGn1Ce%2B0mXv4%2FpdWEJOCjDA3W%2B73ATLajgSCs2n2%2F2V00Zrbvj1%2Fye0x4%2FjIThmp%2BkMS4g2HS4kOqpcfkcpNiwD4Bt1hjO%2BYu0dLb6tro9IU00JZxSVE1SJqdM4cIoe3aitYyYhFcLGQlRDDAI2BZYouWn5S1vM843mNQpgjl%2BGWBcL41ajccZ8YVtMclYxS%2BL4uLfDbIHfC7TheprC7LS2CQLB6QzOt%2FfWMJLFox3QjG547Tw%3D%3D--JHnlFQ0HE5GrqjIz--IVlv3EBUH80wZJ8LHQxhrw%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.988795810.1753549777; Path=/; Domain=github.com; Expires=Sun, 26 Jul 2026 17:09:37 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Sun, 26 Jul 2026 17:09:37 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: DAF2:1799B9:78D093:9BD4F7:68850BD1
Cleanup ReactNativeAppBuilder and ReactNativeWin32App (#13983) · microsoft/react-native-windows@e1b07c7 · GitHub
Copy file name to clipboard
Copy file name to clipboardExpand all lines: packages/sample-app-fabric/windows/SampleAppFabric/SampleAppFabric.cpp
Copy file name to clipboardExpand all lines: vnext/Microsoft.ReactNative/ReactInstanceSettingsBuilder.cpp
Copy file name to clipboardExpand all lines: vnext/Microsoft.ReactNative/ReactInstanceSettingsBuilder.h
Skip to content
Navigation Menu
{{ message }}
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit e1b07c7
authored
Cleanup ReactNativeAppBuilder and ReactNativeWin32App (#13983)
## Description
This PR simplifies and scopes down the API for `ReactNativeAppBuilder` and `ReactNativeWin32App`.
### Type of Change
- Bug fix (non-breaking change which fixes an issue)
### Why
`ReactNativeAppBuilder`'s API surface made it too easy to call incorrectly and not realize it.
Resolves #13946
### What
There are a variety of changes to the API surface:
* `ReactInstanceSettingsBuilder` deleted: not only are there are simply too many APIs that would need to be exposed to be useful, the very act of creating and replacing the app's `ReactNativeHost`'s `ReactInstanceSettings` with a new one is what caused the bug in #13946 in the first place
* `ReactNativeAppBuilder` now only exposes APIs to specify the intial, non-ReactNative, WinAppSDK types, (i.e. `DispatcherQueueController`, `Compositor`, and `AppWindow`), objects the app developer may already have created for their existing app, and otherwise is only responsible for building a `ReactNativeWin32App` with those types properly pre-made
* `ReactNativeWin32App::Start()` is now more responsible for the stitching together all of the relevant types to make a working Win32 fabric app
* All WinRT APIs without an immediate use-case have been commented out until we are sure they are necessary and that it is safe to expose them
* The template has been updated to follow the pattern of:
* Use `ReactNativeAppBuilder` to get a `ReactNativeWin32` app with the base WinAppSDK types ready
* Get and modify the types as necessary from the created app object (like the `ReactInstanceSettings` and the `AppWindow`)
* Call `app.Start()`
## Screenshots
N/A
## Testing
Verified new apps and example apps in libraryes build and run properly.
## Changelog
Should this change be included in the release notes: _yes_
Cleanup ReactNativeAppBuilder and ReactNativeWin32App1 parent 1346dc5 commit e1b07c7Copy full SHA for e1b07c7
File tree
Expand file treeCollapse file tree
11 files changed
+279
-370
lines changedFilter options
- change
- packages/sample-app-fabric/windows/SampleAppFabric
- vnext
- Microsoft.ReactNative
- Shared
- templates/cpp-app/windows/MyApp
Expand file treeCollapse file tree
11 files changed
+279
-370
lines changedchange/react-native-windows-2b4a6ca8-3a50-4be5-8b1d-559946fa0be1.json
Copy file name to clipboard+7Lines changed: 7 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + |
packages/sample-app-fabric/windows/SampleAppFabric/SampleAppFabric.cpp
Copy file name to clipboardExpand all lines: packages/sample-app-fabric/windows/SampleAppFabric/SampleAppFabric.cpp+43-41Lines changed: 43 additions & 41 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
8 | 8 |
| |
9 | 9 |
| |
10 | 10 |
| |
| 11 | + | |
11 | 12 |
| |
12 | 13 |
| |
13 | 14 |
| |
| |||
16 | 17 |
| |
17 | 18 |
| |
18 | 19 |
| |
19 |
| - | |
20 |
| - | |
21 |
| - | |
22 |
| - | |
| 20 | + | |
23 | 21 |
| |
24 |
| - | |
| 22 | + | |
25 | 23 |
| |
26 | 24 |
| |
27 | 25 |
| |
28 | 26 |
| |
29 | 27 |
| |
30 |
| - | |
31 |
| - | |
32 |
| - | |
33 |
| - | |
34 |
| - | |
35 |
| - | |
| 28 | + | |
36 | 29 |
| |
37 | 30 |
| |
38 | 31 |
| |
39 | 32 |
| |
40 |
| - | |
41 |
| - | |
42 |
| - | |
43 |
| - | |
44 |
| - | |
45 |
| - | |
46 |
| - | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
47 | 43 |
| |
48 |
| - | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
49 | 51 |
| |
50 |
| - | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
51 | 56 |
| |
52 | 57 |
| |
53 |
| - | |
54 |
| - | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
55 | 63 |
| |
56 |
| - | |
57 |
| - | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
58 | 69 |
| |
59 |
| - | |
60 |
| - | |
61 |
| - | |
62 |
| - | |
63 |
| - | |
64 |
| - | |
65 |
| - | |
66 |
| - | |
67 |
| - | |
68 | 70 |
| |
69 |
| - | |
70 |
| - | |
71 |
| - | |
72 |
| - | |
73 |
| - | |
74 |
| - | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
75 | 75 |
| |
76 |
| - | |
77 |
| - | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
78 | 79 |
| |
| 80 | + | |
79 | 81 |
| |
80 | 82 |
|
vnext/Microsoft.ReactNative/ReactInstanceSettingsBuilder.cpp
Copy file name to clipboardExpand all lines: vnext/Microsoft.ReactNative/ReactInstanceSettingsBuilder.cpp-59Lines changed: 0 additions & 59 deletions
This file was deleted.
vnext/Microsoft.ReactNative/ReactInstanceSettingsBuilder.h
Copy file name to clipboardExpand all lines: vnext/Microsoft.ReactNative/ReactInstanceSettingsBuilder.h-23Lines changed: 0 additions & 23 deletions
This file was deleted.
You can’t perform that action at this time.
0 commit comments