react-native-windows 0.74.7 → 0.74.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Libraries/ReactNative/AppContainer-dev.js +3 -2
- package/Libraries/ReactNative/AppContainer-prod.js +2 -1
- package/Libraries/ReactNative/AppContainer.js +2 -0
- package/Libraries/ReactNative/AppRegistry.d.ts +7 -0
- package/Libraries/ReactNative/AppRegistry.js +8 -0
- package/Libraries/ReactNative/renderApplication.js +3 -0
- package/Microsoft.ReactNative/AsynchronousEventBeat.cpp +1 -2
- package/Microsoft.ReactNative/CompositionHwndHost.idl +1 -1
- package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +18 -18
- package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.h +2 -2
- package/Microsoft.ReactNative/Fabric/Composition/CompositionHwndHost.cpp +4 -4
- package/Microsoft.ReactNative/Fabric/Composition/CompositionHwndHost.h +1 -1
- package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.cpp +3 -3
- package/Microsoft.ReactNative/Fabric/Composition/CompositionRootAutomationProvider.h +3 -3
- package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +5 -5
- package/Microsoft.ReactNative/Fabric/Composition/{CompositionRootView.cpp → ReactNativeIsland.cpp} +59 -51
- package/Microsoft.ReactNative/Fabric/Composition/{CompositionRootView.h → ReactNativeIsland.h} +8 -8
- package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.cpp +7 -8
- package/Microsoft.ReactNative/Fabric/Composition/RootComponentView.h +2 -2
- package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +2 -2
- package/Microsoft.ReactNative/Fabric/Composition/UriImageManager.cpp +82 -17
- package/Microsoft.ReactNative/Fabric/Composition/UriImageManager.h +79 -0
- package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp +2 -2
- package/Microsoft.ReactNative/Fabric/FabricUIManagerModule.h +3 -3
- package/Microsoft.ReactNative/Fabric/WindowsImageManager.cpp +191 -119
- package/Microsoft.ReactNative/Fabric/WindowsImageManager.h +11 -0
- package/Microsoft.ReactNative/HttpSettings.idl +19 -0
- package/Microsoft.ReactNative/Modules/ImageViewManagerModule.cpp +15 -11
- package/Microsoft.ReactNative/{CompositionRootView.idl → ReactNativeIsland.idl} +10 -10
- package/Microsoft.ReactNative/UriImageManager.idl +35 -17
- package/Microsoft.ReactNative/Utils/ImageUtils.cpp +22 -3
- package/Microsoft.ReactNative/Utils/ImageUtils.h +3 -1
- package/Microsoft.ReactNative/Views/Image/ImageViewManager.cpp +1 -1
- package/Microsoft.ReactNative/Views/Image/ReactImage.cpp +13 -4
- package/Microsoft.ReactNative/Views/Image/ReactImage.h +4 -2
- package/PropertySheets/Generated/PackageVersion.g.props +3 -3
- package/Shared/Modules/FileReaderModule.cpp +3 -4
- package/Shared/Modules/WebSocketModule.cpp +14 -16
- package/Shared/Networking/DefaultBlobResource.cpp +6 -14
- package/Shared/Networking/NetworkPropertyIds.cpp +60 -0
- package/Shared/Networking/NetworkPropertyIds.h +41 -0
- package/Shared/Networking/RedirectHttpFilter.cpp +18 -9
- package/Shared/Networking/RedirectHttpFilter.h +6 -3
- package/Shared/Networking/WinRTHttpResource.cpp +36 -8
- package/Shared/Networking/WinRTHttpResource.h +17 -0
- package/Shared/Shared.vcxitems +6 -4
- package/Shared/Shared.vcxitems.filters +5 -3
- package/package.json +1 -1
- package/templates/cpp-app/windows/MyApp/MyApp.cpp +2 -2
|
@@ -5,11 +5,19 @@
|
|
|
5
5
|
#include "UriImageManager.h"
|
|
6
6
|
|
|
7
7
|
#include "Composition.ImageSource.g.h"
|
|
8
|
+
#include <Composition.Experimental.UriBrushFactoryImageResponse.g.cpp>
|
|
9
|
+
#include <Composition.ImageFailedResponse.g.cpp>
|
|
10
|
+
#include <Composition.ImageResponse.g.cpp>
|
|
11
|
+
#include <Composition.StreamImageResponse.g.cpp>
|
|
12
|
+
#include <Composition.UriBrushFactoryImageResponse.g.cpp>
|
|
8
13
|
#include <AutoDraw.h>
|
|
14
|
+
#include <IBlobPersistor.h>
|
|
15
|
+
#include <Networking/NetworkPropertyIds.h>
|
|
9
16
|
#include <ReactPropertyBag.h>
|
|
10
17
|
#include <d2d1_3.h>
|
|
11
18
|
#include <shcore.h>
|
|
12
19
|
#include <winrt/Microsoft.ReactNative.Composition.Experimental.h>
|
|
20
|
+
#include <winrt/Microsoft.ReactNative.Composition.h>
|
|
13
21
|
#include <winrt/Windows.Security.Cryptography.h>
|
|
14
22
|
#include <winrt/Windows.Storage.Streams.h>
|
|
15
23
|
|
|
@@ -54,16 +62,14 @@ winrt::Microsoft::ReactNative::Composition::ImageSource MakeImageSource(
|
|
|
54
62
|
* />
|
|
55
63
|
*
|
|
56
64
|
*/
|
|
57
|
-
struct SvgDataImageHandler
|
|
58
|
-
|
|
59
|
-
winrt::Microsoft::ReactNative::Composition::Experimental::IUriBrushProvider,
|
|
60
|
-
winrt::Microsoft::ReactNative::Composition::IUriImageProvider> {
|
|
65
|
+
struct SvgDataImageHandler
|
|
66
|
+
: winrt::implements<SvgDataImageHandler, winrt::Microsoft::ReactNative::Composition::IUriImageProvider> {
|
|
61
67
|
bool CanLoadImageUri(winrt::Microsoft::ReactNative::IReactContext context, winrt::Windows::Foundation::Uri uri) {
|
|
62
68
|
return uri.SchemeName() == L"data" && std::wstring_view(uri.Path()).starts_with(L"image/svg+xml;base64,");
|
|
63
69
|
}
|
|
64
70
|
|
|
65
|
-
winrt::Windows::Foundation::IAsyncOperation<winrt::Microsoft::ReactNative::Composition::
|
|
66
|
-
|
|
71
|
+
winrt::Windows::Foundation::IAsyncOperation<winrt::Microsoft::ReactNative::Composition::ImageResponse>
|
|
72
|
+
GetImageResponseAsync(
|
|
67
73
|
const winrt::Microsoft::ReactNative::IReactContext &context,
|
|
68
74
|
const winrt::Microsoft::ReactNative::Composition::ImageSource &imageSource) {
|
|
69
75
|
auto path = winrt::to_string(imageSource.Uri().Path());
|
|
@@ -85,7 +91,7 @@ struct SvgDataImageHandler : winrt::implements<
|
|
|
85
91
|
co_await memoryStream.WriteAsync(buffer);
|
|
86
92
|
memoryStream.Seek(0);
|
|
87
93
|
|
|
88
|
-
co_return
|
|
94
|
+
co_return winrt::Microsoft::ReactNative::Composition::Experimental::UriBrushFactoryImageResponse(
|
|
89
95
|
[memoryStream, size, scale](
|
|
90
96
|
const winrt::Microsoft::ReactNative::IReactContext &reactContext,
|
|
91
97
|
const winrt::Microsoft::ReactNative::Composition::Experimental::ICompositionContext &compositionContext)
|
|
@@ -126,12 +132,13 @@ struct SvgDataImageHandler : winrt::implements<
|
|
|
126
132
|
renderTarget->SetTransform(originalTransform);
|
|
127
133
|
|
|
128
134
|
return drawingBrush;
|
|
129
|
-
};
|
|
135
|
+
});
|
|
130
136
|
|
|
131
|
-
} catch (winrt::hresult_error const &) {
|
|
137
|
+
} catch (winrt::hresult_error const &ex) {
|
|
138
|
+
co_return winrt::Microsoft::ReactNative::Composition::ImageFailedResponse(ex.message());
|
|
132
139
|
}
|
|
133
140
|
|
|
134
|
-
|
|
141
|
+
winrt::throw_hresult(E_UNEXPECTED);
|
|
135
142
|
}
|
|
136
143
|
};
|
|
137
144
|
|
|
@@ -145,15 +152,14 @@ struct SvgDataImageHandler : winrt::implements<
|
|
|
145
152
|
* />
|
|
146
153
|
*
|
|
147
154
|
*/
|
|
148
|
-
struct DataImageHandler
|
|
149
|
-
|
|
150
|
-
winrt::Microsoft::ReactNative::Composition::IUriImageStreamProvider,
|
|
151
|
-
winrt::Microsoft::ReactNative::Composition::IUriImageProvider> {
|
|
155
|
+
struct DataImageHandler
|
|
156
|
+
: winrt::implements<DataImageHandler, winrt::Microsoft::ReactNative::Composition::IUriImageProvider> {
|
|
152
157
|
bool CanLoadImageUri(winrt::Microsoft::ReactNative::IReactContext context, winrt::Windows::Foundation::Uri uri) {
|
|
153
158
|
return uri.SchemeName() == L"data";
|
|
154
159
|
}
|
|
155
160
|
|
|
156
|
-
winrt::Windows::Foundation::IAsyncOperation<winrt::
|
|
161
|
+
winrt::Windows::Foundation::IAsyncOperation<winrt::Microsoft::ReactNative::Composition::ImageResponse>
|
|
162
|
+
GetImageResponseAsync(
|
|
157
163
|
const winrt::Microsoft::ReactNative::IReactContext &context,
|
|
158
164
|
const winrt::Microsoft::ReactNative::Composition::ImageSource &imageSource) {
|
|
159
165
|
auto path = winrt::to_string(imageSource.Uri().Path());
|
|
@@ -173,12 +179,57 @@ struct DataImageHandler : winrt::implements<
|
|
|
173
179
|
co_await memoryStream.WriteAsync(buffer);
|
|
174
180
|
memoryStream.Seek(0);
|
|
175
181
|
|
|
176
|
-
co_return memoryStream;
|
|
182
|
+
co_return winrt::Microsoft::ReactNative::Composition::StreamImageResponse(memoryStream);
|
|
177
183
|
} catch (winrt::hresult_error const &) {
|
|
178
184
|
// Base64 decode failed
|
|
185
|
+
co_return winrt::Microsoft::ReactNative::Composition::ImageFailedResponse(
|
|
186
|
+
L"Invalid base64 encoding in inline image data");
|
|
179
187
|
}
|
|
180
188
|
|
|
181
|
-
|
|
189
|
+
winrt::throw_hresult(E_UNEXPECTED);
|
|
190
|
+
}
|
|
191
|
+
};
|
|
192
|
+
|
|
193
|
+
/**
|
|
194
|
+
* This ImageHandler will handle uri loading data from blobs
|
|
195
|
+
*
|
|
196
|
+
* <Image
|
|
197
|
+
* style={{width: 400, height: 200}}
|
|
198
|
+
* source={{uri:'blob:<guid>?offset=<offset>&size=<size>'}}
|
|
199
|
+
* />
|
|
200
|
+
*
|
|
201
|
+
*/
|
|
202
|
+
struct BlobImageHandler
|
|
203
|
+
: winrt::implements<BlobImageHandler, winrt::Microsoft::ReactNative::Composition::IUriImageProvider> {
|
|
204
|
+
bool CanLoadImageUri(winrt::Microsoft::ReactNative::IReactContext context, winrt::Windows::Foundation::Uri uri) {
|
|
205
|
+
return uri.SchemeName() == L"blob";
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
winrt::Windows::Foundation::IAsyncOperation<winrt::Microsoft::ReactNative::Composition::ImageResponse>
|
|
209
|
+
GetImageResponseAsync(
|
|
210
|
+
const winrt::Microsoft::ReactNative::IReactContext &context,
|
|
211
|
+
const winrt::Microsoft::ReactNative::Composition::ImageSource &imageSource) {
|
|
212
|
+
if (auto prop = winrt::Microsoft::ReactNative::ReactPropertyBag(context.Properties())
|
|
213
|
+
.Get(::Microsoft::React::BlobModulePersistorPropertyId())) {
|
|
214
|
+
auto weakBlobPersistor = prop.Value();
|
|
215
|
+
if (auto persistor = weakBlobPersistor.lock()) {
|
|
216
|
+
auto queryParsed = imageSource.Uri().QueryParsed();
|
|
217
|
+
auto guid = winrt::to_string(imageSource.Uri().Path());
|
|
218
|
+
int64_t offset = _atoi64(winrt::to_string(queryParsed.GetFirstValueByName(L"offset")).c_str());
|
|
219
|
+
int64_t size = _atoi64(winrt::to_string(queryParsed.GetFirstValueByName(L"size")).c_str());
|
|
220
|
+
|
|
221
|
+
auto arr = persistor->ResolveMessage(std::move(guid), offset, size);
|
|
222
|
+
winrt::Windows::Storage::Streams::InMemoryRandomAccessStream memoryStream;
|
|
223
|
+
winrt::Windows::Storage::Streams::DataWriter dataWriter{memoryStream};
|
|
224
|
+
dataWriter.WriteBytes(arr);
|
|
225
|
+
co_await dataWriter.StoreAsync();
|
|
226
|
+
memoryStream.Seek(0);
|
|
227
|
+
|
|
228
|
+
co_return winrt::Microsoft::ReactNative::Composition::StreamImageResponse(memoryStream.CloneStream());
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
co_return winrt::Microsoft::ReactNative::Composition::ImageFailedResponse(L"Failed to load image from blob");
|
|
182
233
|
}
|
|
183
234
|
};
|
|
184
235
|
|
|
@@ -191,6 +242,7 @@ static const ReactPropertyId<ReactNonAbiValue<std::shared_ptr<UriImageManager>>>
|
|
|
191
242
|
UriImageManager::UriImageManager() {
|
|
192
243
|
m_providers.push_back(winrt::make<SvgDataImageHandler>());
|
|
193
244
|
m_providers.push_back(winrt::make<DataImageHandler>());
|
|
245
|
+
m_providers.push_back(winrt::make<BlobImageHandler>());
|
|
194
246
|
}
|
|
195
247
|
|
|
196
248
|
void UriImageManager::Install(
|
|
@@ -227,4 +279,17 @@ IUriImageProvider UriImageManager::TryGetUriImageProvider(
|
|
|
227
279
|
return nullptr;
|
|
228
280
|
}
|
|
229
281
|
|
|
282
|
+
ImageResponseOrImageErrorInfo ImageResponse::ResolveImage() {
|
|
283
|
+
winrt::throw_hresult(E_NOTIMPL);
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
ImageResponseOrImageErrorInfo ImageFailedResponse::ResolveImage() {
|
|
287
|
+
ImageResponseOrImageErrorInfo imageOrError;
|
|
288
|
+
imageOrError.errorInfo = winrt::to_string(m_errorMessage);
|
|
289
|
+
if (imageOrError.errorInfo.empty()) {
|
|
290
|
+
imageOrError.errorInfo = "Failed to load image.";
|
|
291
|
+
}
|
|
292
|
+
return imageOrError;
|
|
293
|
+
}
|
|
294
|
+
|
|
230
295
|
} // namespace winrt::Microsoft::ReactNative::Composition::implementation
|
|
@@ -3,10 +3,16 @@
|
|
|
3
3
|
|
|
4
4
|
#pragma once
|
|
5
5
|
|
|
6
|
+
#include <Composition.Experimental.UriBrushFactoryImageResponse.g.h>
|
|
7
|
+
#include <Composition.ImageFailedResponse.g.h>
|
|
8
|
+
#include <Composition.ImageResponse.g.h>
|
|
9
|
+
#include <Composition.StreamImageResponse.g.h>
|
|
10
|
+
#include <Composition.UriBrushFactoryImageResponse.g.h>
|
|
6
11
|
#include <ReactPropertyBag.h>
|
|
7
12
|
#include <Utils/ImageUtils.h>
|
|
8
13
|
#include <react/renderer/imagemanager/primitives.h>
|
|
9
14
|
#include <winrt/Microsoft.ReactNative.Composition.h>
|
|
15
|
+
#include "ImageResponseImage.h"
|
|
10
16
|
|
|
11
17
|
namespace winrt::Microsoft::ReactNative::Composition::implementation {
|
|
12
18
|
|
|
@@ -33,4 +39,77 @@ struct UriImageManager {
|
|
|
33
39
|
winrt::Microsoft::ReactNative::Composition::ImageSource MakeImageSource(
|
|
34
40
|
const facebook::react::ImageSource &source) noexcept;
|
|
35
41
|
|
|
42
|
+
struct ImageResponseOrImageErrorInfo {
|
|
43
|
+
std::shared_ptr<winrt::Microsoft::ReactNative::Composition::implementation::ImageResponseImage> image;
|
|
44
|
+
std::string errorInfo;
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
struct ImageResponse : ImageResponseT<ImageResponse /*, IResolveImage*/> {
|
|
48
|
+
ImageResponse() noexcept = default;
|
|
49
|
+
virtual ImageResponseOrImageErrorInfo ResolveImage();
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
struct ImageFailedResponse : ImageFailedResponseT<ImageFailedResponse, ImageResponse /*, IResolveImage*/> {
|
|
53
|
+
ImageFailedResponse(winrt::hstring errorMessage) noexcept : base_type(), m_errorMessage(errorMessage) {}
|
|
54
|
+
ImageFailedResponse(
|
|
55
|
+
winrt::hstring errorMessage,
|
|
56
|
+
winrt::Windows::Web::Http::HttpStatusCode statusCode,
|
|
57
|
+
const winrt::Windows::Web::Http::Headers::HttpResponseHeaderCollection &responseHeaders) noexcept
|
|
58
|
+
: base_type(), m_errorMessage(errorMessage), m_statusCode(statusCode), m_responseHeaders(responseHeaders) {}
|
|
59
|
+
|
|
60
|
+
virtual ImageResponseOrImageErrorInfo ResolveImage();
|
|
61
|
+
|
|
62
|
+
private:
|
|
63
|
+
const winrt::hstring m_errorMessage;
|
|
64
|
+
const winrt::Windows::Web::Http::HttpStatusCode m_statusCode{winrt::Windows::Web::Http::HttpStatusCode::None};
|
|
65
|
+
const winrt::Windows::Web::Http::Headers::HttpResponseHeaderCollection m_responseHeaders{nullptr};
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
struct StreamImageResponse : StreamImageResponseT<StreamImageResponse, ImageResponse /*, IResolveImage*/> {
|
|
69
|
+
StreamImageResponse(const winrt::Windows::Storage::Streams::IRandomAccessStream &stream) noexcept
|
|
70
|
+
: base_type(), m_stream(stream) {}
|
|
71
|
+
virtual ImageResponseOrImageErrorInfo ResolveImage();
|
|
72
|
+
|
|
73
|
+
private:
|
|
74
|
+
const winrt::Windows::Storage::Streams::IRandomAccessStream m_stream;
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
struct UriBrushFactoryImageResponse
|
|
78
|
+
: UriBrushFactoryImageResponseT<UriBrushFactoryImageResponse, ImageResponse /*, IResolveImage*/> {
|
|
79
|
+
UriBrushFactoryImageResponse(const winrt::Microsoft::ReactNative::Composition::UriBrushFactory &factory) noexcept
|
|
80
|
+
: base_type(), m_factory(factory) {}
|
|
81
|
+
virtual ImageResponseOrImageErrorInfo ResolveImage();
|
|
82
|
+
|
|
83
|
+
private:
|
|
84
|
+
const winrt::Microsoft::ReactNative::Composition::UriBrushFactory m_factory;
|
|
85
|
+
};
|
|
86
|
+
|
|
36
87
|
} // namespace winrt::Microsoft::ReactNative::Composition::implementation
|
|
88
|
+
|
|
89
|
+
namespace winrt::Microsoft::ReactNative::Composition::Experimental::implementation {
|
|
90
|
+
struct UriBrushFactoryImageResponse
|
|
91
|
+
: UriBrushFactoryImageResponseT<
|
|
92
|
+
UriBrushFactoryImageResponse,
|
|
93
|
+
winrt::Microsoft::ReactNative::Composition::implementation::
|
|
94
|
+
ImageResponse /*, winrt::Microsoft::ReactNative::Composition::implementation::IResolveImage*/> {
|
|
95
|
+
UriBrushFactoryImageResponse(
|
|
96
|
+
const winrt::Microsoft::ReactNative::Composition::Experimental::UriBrushFactory &factory) noexcept
|
|
97
|
+
: base_type(), m_factory(factory) {}
|
|
98
|
+
virtual winrt::Microsoft::ReactNative::Composition::implementation::ImageResponseOrImageErrorInfo ResolveImage();
|
|
99
|
+
|
|
100
|
+
private:
|
|
101
|
+
const winrt::Microsoft::ReactNative::Composition::Experimental::UriBrushFactory m_factory;
|
|
102
|
+
};
|
|
103
|
+
} // namespace winrt::Microsoft::ReactNative::Composition::Experimental::implementation
|
|
104
|
+
|
|
105
|
+
namespace winrt::Microsoft::ReactNative::Composition::factory_implementation {
|
|
106
|
+
struct ImageFailedResponse : ImageFailedResponseT<ImageFailedResponse, implementation::ImageFailedResponse> {};
|
|
107
|
+
struct StreamImageResponse : StreamImageResponseT<StreamImageResponse, implementation::StreamImageResponse> {};
|
|
108
|
+
struct UriBrushFactoryImageResponse
|
|
109
|
+
: UriBrushFactoryImageResponseT<UriBrushFactoryImageResponse, implementation::UriBrushFactoryImageResponse> {};
|
|
110
|
+
} // namespace winrt::Microsoft::ReactNative::Composition::factory_implementation
|
|
111
|
+
|
|
112
|
+
namespace winrt::Microsoft::ReactNative::Composition::Experimental::factory_implementation {
|
|
113
|
+
struct UriBrushFactoryImageResponse
|
|
114
|
+
: UriBrushFactoryImageResponseT<UriBrushFactoryImageResponse, implementation::UriBrushFactoryImageResponse> {};
|
|
115
|
+
} // namespace winrt::Microsoft::ReactNative::Composition::Experimental::factory_implementation
|
|
@@ -141,7 +141,7 @@ const IComponentViewRegistry &FabricUIManager::GetViewRegistry() const noexcept
|
|
|
141
141
|
}
|
|
142
142
|
|
|
143
143
|
void FabricUIManager::startSurface(
|
|
144
|
-
const winrt::Microsoft::ReactNative::
|
|
144
|
+
const winrt::Microsoft::ReactNative::ReactNativeIsland &rootView,
|
|
145
145
|
facebook::react::SurfaceId surfaceId,
|
|
146
146
|
const facebook::react::LayoutConstraints &layoutConstraints,
|
|
147
147
|
const std::string &moduleName,
|
|
@@ -175,7 +175,7 @@ void FabricUIManager::stopSurface(facebook::react::SurfaceId surfaceId) noexcept
|
|
|
175
175
|
m_surfaceManager->stopSurface(surfaceId);
|
|
176
176
|
}
|
|
177
177
|
|
|
178
|
-
winrt::Microsoft::ReactNative::
|
|
178
|
+
winrt::Microsoft::ReactNative::ReactNativeIsland FabricUIManager::GetReactNativeIsland(
|
|
179
179
|
facebook::react::SurfaceId surfaceId) const noexcept {
|
|
180
180
|
return m_surfaceRegistry.at(surfaceId).wkRootView.get();
|
|
181
181
|
}
|
|
@@ -29,7 +29,7 @@ struct FabricUIManager final : public std::enable_shared_from_this<FabricUIManag
|
|
|
29
29
|
void Initialize(winrt::Microsoft::ReactNative::ReactContext const &reactContext) noexcept;
|
|
30
30
|
|
|
31
31
|
void startSurface(
|
|
32
|
-
const winrt::Microsoft::ReactNative::
|
|
32
|
+
const winrt::Microsoft::ReactNative::ReactNativeIsland &rootView,
|
|
33
33
|
facebook::react::SurfaceId surfaceId,
|
|
34
34
|
const facebook::react::LayoutConstraints &layoutConstraints,
|
|
35
35
|
const std::string &moduleName,
|
|
@@ -49,7 +49,7 @@ struct FabricUIManager final : public std::enable_shared_from_this<FabricUIManag
|
|
|
49
49
|
|
|
50
50
|
const IComponentViewRegistry &GetViewRegistry() const noexcept;
|
|
51
51
|
|
|
52
|
-
winrt::Microsoft::ReactNative::
|
|
52
|
+
winrt::Microsoft::ReactNative::ReactNativeIsland GetReactNativeIsland(
|
|
53
53
|
facebook::react::SurfaceId surfaceId) const noexcept;
|
|
54
54
|
|
|
55
55
|
private:
|
|
@@ -73,7 +73,7 @@ struct FabricUIManager final : public std::enable_shared_from_this<FabricUIManag
|
|
|
73
73
|
|
|
74
74
|
ComponentViewRegistry m_registry;
|
|
75
75
|
struct SurfaceInfo {
|
|
76
|
-
winrt::weak_ref<winrt::Microsoft::ReactNative::
|
|
76
|
+
winrt::weak_ref<winrt::Microsoft::ReactNative::ReactNativeIsland> wkRootView{nullptr};
|
|
77
77
|
};
|
|
78
78
|
|
|
79
79
|
std::unordered_map<facebook::react::SurfaceId, SurfaceInfo> m_surfaceRegistry;
|