react-native-windows 0.74.36 → 0.74.37
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/Microsoft.ReactNative/Fabric/AbiViewProps.cpp +8 -10
- package/Microsoft.ReactNative/Fabric/Composition/CompositionViewComponentView.cpp +1 -1
- package/Microsoft.ReactNative/Fabric/Composition/TooltipService.cpp +41 -37
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/HostPlatformColor.h +3 -8
- package/Microsoft.ReactNative/Fabric/platform/react/renderer/graphics/PlatformColorParser.h +0 -1
- package/Microsoft.ReactNative.Cxx/NativeModules.h +9 -0
- package/PropertySheets/Generated/PackageVersion.g.props +3 -3
- package/Shared/Networking/WinRTWebSocketResource.cpp +371 -6
- package/Shared/Networking/WinRTWebSocketResource.h +118 -0
- package/codegen/react/components/rnwcore/ActivityIndicatorView.g.h +6 -6
- package/codegen/react/components/rnwcore/AndroidDrawerLayout.g.h +6 -6
- package/codegen/react/components/rnwcore/AndroidHorizontalScrollContentView.g.h +6 -6
- package/codegen/react/components/rnwcore/AndroidProgressBar.g.h +6 -6
- package/codegen/react/components/rnwcore/AndroidSwipeRefreshLayout.g.h +6 -6
- package/codegen/react/components/rnwcore/AndroidSwitch.g.h +6 -6
- package/codegen/react/components/rnwcore/DebuggingOverlay.g.h +6 -6
- package/codegen/react/components/rnwcore/InputAccessory.g.h +6 -6
- package/codegen/react/components/rnwcore/ModalHostView.g.h +6 -6
- package/codegen/react/components/rnwcore/PullToRefreshView.g.h +6 -6
- package/codegen/react/components/rnwcore/SafeAreaView.g.h +6 -6
- package/codegen/react/components/rnwcore/Switch.g.h +6 -6
- package/codegen/react/components/rnwcore/UnimplementedNativeView.g.h +6 -6
- package/package.json +3 -3
|
@@ -16,6 +16,124 @@
|
|
|
16
16
|
|
|
17
17
|
namespace Microsoft::React::Networking {
|
|
18
18
|
|
|
19
|
+
class WinRTWebSocketResource2 : public IWebSocketResource,
|
|
20
|
+
public std::enable_shared_from_this<WinRTWebSocketResource2> {
|
|
21
|
+
winrt::Windows::Networking::Sockets::IMessageWebSocket m_socket;
|
|
22
|
+
|
|
23
|
+
///
|
|
24
|
+
// Connection attempt performed, either succeeding or failing
|
|
25
|
+
///
|
|
26
|
+
winrt::handle m_connectPerformed;
|
|
27
|
+
|
|
28
|
+
ReadyState m_readyState;
|
|
29
|
+
Mso::DispatchQueue m_callingQueue;
|
|
30
|
+
Mso::DispatchQueue m_backgroundQueue;
|
|
31
|
+
std::queue<std::pair<std::string, bool>> m_outgoingMessages;
|
|
32
|
+
CloseCode m_closeCode{CloseCode::Normal};
|
|
33
|
+
std::string m_closeReason;
|
|
34
|
+
|
|
35
|
+
std::function<void()> m_connectHandler;
|
|
36
|
+
std::function<void(std::size_t, const std::string &, bool)> m_readHandler;
|
|
37
|
+
std::function<void(CloseCode, const std::string &)> m_closeHandler;
|
|
38
|
+
std::function<void(Error &&)> m_errorHandler;
|
|
39
|
+
|
|
40
|
+
winrt::Windows::Storage::Streams::IDataWriter m_writer;
|
|
41
|
+
|
|
42
|
+
void Fail(std::string &&message, ErrorType type) noexcept;
|
|
43
|
+
void Fail(winrt::hresult &&e, ErrorType type) noexcept;
|
|
44
|
+
void Fail(winrt::hresult_error const &e, ErrorType type) noexcept;
|
|
45
|
+
|
|
46
|
+
void OnMessageReceived(
|
|
47
|
+
winrt::Windows::Networking::Sockets::IMessageWebSocket const &,
|
|
48
|
+
winrt::Windows::Networking::Sockets::IMessageWebSocketMessageReceivedEventArgs const &args);
|
|
49
|
+
|
|
50
|
+
void OnClosed(
|
|
51
|
+
winrt::Windows::Networking::Sockets::IWebSocket const &,
|
|
52
|
+
winrt::Windows::Networking::Sockets::IWebSocketClosedEventArgs const &args);
|
|
53
|
+
|
|
54
|
+
winrt::fire_and_forget PerformConnect(winrt::Windows::Foundation::Uri &&uri) noexcept;
|
|
55
|
+
winrt::fire_and_forget PerformWrite(std::string &&message, bool isBinary) noexcept;
|
|
56
|
+
winrt::fire_and_forget PerformClose() noexcept;
|
|
57
|
+
winrt::Windows::Foundation::IAsyncAction SendPendingMessages() noexcept;
|
|
58
|
+
|
|
59
|
+
WinRTWebSocketResource2(
|
|
60
|
+
winrt::Windows::Networking::Sockets::IMessageWebSocket &&socket,
|
|
61
|
+
std::vector<winrt::Windows::Security::Cryptography::Certificates::ChainValidationResult> &&certExceptions);
|
|
62
|
+
|
|
63
|
+
public:
|
|
64
|
+
WinRTWebSocketResource2(
|
|
65
|
+
winrt::Windows::Networking::Sockets::IMessageWebSocket &&socket,
|
|
66
|
+
winrt::Windows::Storage::Streams::IDataWriter &&writer,
|
|
67
|
+
std::vector<winrt::Windows::Security::Cryptography::Certificates::ChainValidationResult> &&certExceptions,
|
|
68
|
+
Mso::DispatchQueue callingQueue);
|
|
69
|
+
|
|
70
|
+
WinRTWebSocketResource2(
|
|
71
|
+
std::vector<winrt::Windows::Security::Cryptography::Certificates::ChainValidationResult> &&certExceptions);
|
|
72
|
+
|
|
73
|
+
~WinRTWebSocketResource2() noexcept override;
|
|
74
|
+
|
|
75
|
+
#pragma region IWebSocketResource
|
|
76
|
+
|
|
77
|
+
/// <summary>
|
|
78
|
+
/// <see cref="IWebSocketResource::Connect" />
|
|
79
|
+
/// </summary>
|
|
80
|
+
void Connect(std::string &&url, const Protocols &protocols, const Options &options) noexcept override;
|
|
81
|
+
|
|
82
|
+
/// <summary>
|
|
83
|
+
/// <see cref="IWebSocketResource::Ping" />
|
|
84
|
+
/// </summary>
|
|
85
|
+
void Ping() noexcept override;
|
|
86
|
+
|
|
87
|
+
/// <summary>
|
|
88
|
+
/// <see cref="IWebSocketResource::Send" />
|
|
89
|
+
/// </summary>
|
|
90
|
+
void Send(std::string &&message) noexcept override;
|
|
91
|
+
|
|
92
|
+
/// <summary>
|
|
93
|
+
/// <see cref="IWebSocketResource::SendBinary" />
|
|
94
|
+
/// </summary>
|
|
95
|
+
void SendBinary(std::string &&base64String) noexcept override;
|
|
96
|
+
|
|
97
|
+
/// <summary>
|
|
98
|
+
/// <see cref="IWebSocketResource::Close" />
|
|
99
|
+
/// </summary>
|
|
100
|
+
void Close(CloseCode code, const std::string &reason) noexcept override;
|
|
101
|
+
|
|
102
|
+
ReadyState GetReadyState() const noexcept override;
|
|
103
|
+
|
|
104
|
+
/// <summary>
|
|
105
|
+
/// <see cref="IWebSocketResource::SetOnConnect" />
|
|
106
|
+
/// </summary>
|
|
107
|
+
void SetOnConnect(std::function<void()> &&handler) noexcept override;
|
|
108
|
+
|
|
109
|
+
/// <summary>
|
|
110
|
+
/// <see cref="IWebSocketResource::SetOnPing" />
|
|
111
|
+
/// </summary>
|
|
112
|
+
void SetOnPing(std::function<void()> &&handler) noexcept override;
|
|
113
|
+
|
|
114
|
+
/// <summary>
|
|
115
|
+
/// <see cref="IWebSocketResource::SetOnSend" />
|
|
116
|
+
/// </summary>
|
|
117
|
+
void SetOnSend(std::function<void(std::size_t)> &&handler) noexcept override;
|
|
118
|
+
|
|
119
|
+
/// <summary>
|
|
120
|
+
/// <see cref="IWebSocketResource::SetOnMessage" />
|
|
121
|
+
/// </summary>
|
|
122
|
+
void SetOnMessage(std::function<void(std::size_t, const std::string &, bool isBinary)> &&handler) noexcept override;
|
|
123
|
+
|
|
124
|
+
/// <summary>
|
|
125
|
+
/// <see cref="IWebSocketResource::SetOnClose" />
|
|
126
|
+
/// </summary>
|
|
127
|
+
void SetOnClose(std::function<void(CloseCode, const std::string &)> &&handler) noexcept override;
|
|
128
|
+
|
|
129
|
+
/// <summary>
|
|
130
|
+
/// <see cref="IWebSocketResource::SetOnError" />
|
|
131
|
+
/// </summary>
|
|
132
|
+
void SetOnError(std::function<void(Error &&)> &&handler) noexcept override;
|
|
133
|
+
|
|
134
|
+
#pragma endregion IWebSocketResource
|
|
135
|
+
};
|
|
136
|
+
|
|
19
137
|
class WinRTWebSocketResource : public IWebSocketResource, public std::enable_shared_from_this<WinRTWebSocketResource> {
|
|
20
138
|
winrt::Windows::Networking::Sockets::IMessageWebSocket m_socket;
|
|
21
139
|
// TODO: Use or remove.
|
|
@@ -147,7 +147,7 @@ void RegisterActivityIndicatorViewNativeComponent(
|
|
|
147
147
|
userData->UpdateEventEmitter(std::make_shared<ActivityIndicatorViewEventEmitter>(eventEmitter));
|
|
148
148
|
});
|
|
149
149
|
|
|
150
|
-
if
|
|
150
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::FinalizeUpdate != &BaseActivityIndicatorView<TUserData>::FinalizeUpdate) {
|
|
151
151
|
builder.SetFinalizeUpdateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
152
152
|
winrt::Microsoft::ReactNative::ComponentViewUpdateMask mask) noexcept {
|
|
153
153
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -155,7 +155,7 @@ void RegisterActivityIndicatorViewNativeComponent(
|
|
|
155
155
|
});
|
|
156
156
|
}
|
|
157
157
|
|
|
158
|
-
if
|
|
158
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UpdateState != &BaseActivityIndicatorView<TUserData>::UpdateState) {
|
|
159
159
|
builder.SetUpdateStateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
160
160
|
const winrt::Microsoft::ReactNative::IComponentState &newState) noexcept {
|
|
161
161
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -163,7 +163,7 @@ void RegisterActivityIndicatorViewNativeComponent(
|
|
|
163
163
|
});
|
|
164
164
|
}
|
|
165
165
|
|
|
166
|
-
if
|
|
166
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::MountChildComponentView != &BaseActivityIndicatorView<TUserData>::MountChildComponentView) {
|
|
167
167
|
builder.SetMountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
168
168
|
const winrt::Microsoft::ReactNative::MountChildComponentViewArgs &args) noexcept {
|
|
169
169
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -171,7 +171,7 @@ void RegisterActivityIndicatorViewNativeComponent(
|
|
|
171
171
|
});
|
|
172
172
|
}
|
|
173
173
|
|
|
174
|
-
if
|
|
174
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UnmountChildComponentView != &BaseActivityIndicatorView<TUserData>::UnmountChildComponentView) {
|
|
175
175
|
builder.SetUnmountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
176
176
|
const winrt::Microsoft::ReactNative::UnmountChildComponentViewArgs &args) noexcept {
|
|
177
177
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -181,13 +181,13 @@ void RegisterActivityIndicatorViewNativeComponent(
|
|
|
181
181
|
|
|
182
182
|
compBuilder.SetViewComponentViewInitializer([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
183
183
|
auto userData = winrt::make_self<TUserData>();
|
|
184
|
-
if
|
|
184
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::Initialize != &BaseActivityIndicatorView<TUserData>::Initialize) {
|
|
185
185
|
userData->Initialize(view);
|
|
186
186
|
}
|
|
187
187
|
view.UserData(*userData);
|
|
188
188
|
});
|
|
189
189
|
|
|
190
|
-
if
|
|
190
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::CreateVisual != &BaseActivityIndicatorView<TUserData>::CreateVisual) {
|
|
191
191
|
compBuilder.SetCreateVisualHandler([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
192
192
|
auto userData = view.UserData().as<TUserData>();
|
|
193
193
|
return userData->CreateVisual(view);
|
|
@@ -224,7 +224,7 @@ void RegisterAndroidDrawerLayoutNativeComponent(
|
|
|
224
224
|
userData->UpdateEventEmitter(std::make_shared<AndroidDrawerLayoutEventEmitter>(eventEmitter));
|
|
225
225
|
});
|
|
226
226
|
|
|
227
|
-
if
|
|
227
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::FinalizeUpdate != &BaseAndroidDrawerLayout<TUserData>::FinalizeUpdate) {
|
|
228
228
|
builder.SetFinalizeUpdateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
229
229
|
winrt::Microsoft::ReactNative::ComponentViewUpdateMask mask) noexcept {
|
|
230
230
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -232,7 +232,7 @@ void RegisterAndroidDrawerLayoutNativeComponent(
|
|
|
232
232
|
});
|
|
233
233
|
}
|
|
234
234
|
|
|
235
|
-
if
|
|
235
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UpdateState != &BaseAndroidDrawerLayout<TUserData>::UpdateState) {
|
|
236
236
|
builder.SetUpdateStateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
237
237
|
const winrt::Microsoft::ReactNative::IComponentState &newState) noexcept {
|
|
238
238
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -246,7 +246,7 @@ void RegisterAndroidDrawerLayoutNativeComponent(
|
|
|
246
246
|
userData->HandleCommand(view, args);
|
|
247
247
|
});
|
|
248
248
|
|
|
249
|
-
if
|
|
249
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::MountChildComponentView != &BaseAndroidDrawerLayout<TUserData>::MountChildComponentView) {
|
|
250
250
|
builder.SetMountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
251
251
|
const winrt::Microsoft::ReactNative::MountChildComponentViewArgs &args) noexcept {
|
|
252
252
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -254,7 +254,7 @@ void RegisterAndroidDrawerLayoutNativeComponent(
|
|
|
254
254
|
});
|
|
255
255
|
}
|
|
256
256
|
|
|
257
|
-
if
|
|
257
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UnmountChildComponentView != &BaseAndroidDrawerLayout<TUserData>::UnmountChildComponentView) {
|
|
258
258
|
builder.SetUnmountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
259
259
|
const winrt::Microsoft::ReactNative::UnmountChildComponentViewArgs &args) noexcept {
|
|
260
260
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -264,13 +264,13 @@ void RegisterAndroidDrawerLayoutNativeComponent(
|
|
|
264
264
|
|
|
265
265
|
compBuilder.SetViewComponentViewInitializer([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
266
266
|
auto userData = winrt::make_self<TUserData>();
|
|
267
|
-
if
|
|
267
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::Initialize != &BaseAndroidDrawerLayout<TUserData>::Initialize) {
|
|
268
268
|
userData->Initialize(view);
|
|
269
269
|
}
|
|
270
270
|
view.UserData(*userData);
|
|
271
271
|
});
|
|
272
272
|
|
|
273
|
-
if
|
|
273
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::CreateVisual != &BaseAndroidDrawerLayout<TUserData>::CreateVisual) {
|
|
274
274
|
compBuilder.SetCreateVisualHandler([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
275
275
|
auto userData = view.UserData().as<TUserData>();
|
|
276
276
|
return userData->CreateVisual(view);
|
|
@@ -135,7 +135,7 @@ void RegisterAndroidHorizontalScrollContentViewNativeComponent(
|
|
|
135
135
|
userData->UpdateEventEmitter(std::make_shared<AndroidHorizontalScrollContentViewEventEmitter>(eventEmitter));
|
|
136
136
|
});
|
|
137
137
|
|
|
138
|
-
if
|
|
138
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::FinalizeUpdate != &BaseAndroidHorizontalScrollContentView<TUserData>::FinalizeUpdate) {
|
|
139
139
|
builder.SetFinalizeUpdateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
140
140
|
winrt::Microsoft::ReactNative::ComponentViewUpdateMask mask) noexcept {
|
|
141
141
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -143,7 +143,7 @@ void RegisterAndroidHorizontalScrollContentViewNativeComponent(
|
|
|
143
143
|
});
|
|
144
144
|
}
|
|
145
145
|
|
|
146
|
-
if
|
|
146
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UpdateState != &BaseAndroidHorizontalScrollContentView<TUserData>::UpdateState) {
|
|
147
147
|
builder.SetUpdateStateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
148
148
|
const winrt::Microsoft::ReactNative::IComponentState &newState) noexcept {
|
|
149
149
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -151,7 +151,7 @@ void RegisterAndroidHorizontalScrollContentViewNativeComponent(
|
|
|
151
151
|
});
|
|
152
152
|
}
|
|
153
153
|
|
|
154
|
-
if
|
|
154
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::MountChildComponentView != &BaseAndroidHorizontalScrollContentView<TUserData>::MountChildComponentView) {
|
|
155
155
|
builder.SetMountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
156
156
|
const winrt::Microsoft::ReactNative::MountChildComponentViewArgs &args) noexcept {
|
|
157
157
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -159,7 +159,7 @@ void RegisterAndroidHorizontalScrollContentViewNativeComponent(
|
|
|
159
159
|
});
|
|
160
160
|
}
|
|
161
161
|
|
|
162
|
-
if
|
|
162
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UnmountChildComponentView != &BaseAndroidHorizontalScrollContentView<TUserData>::UnmountChildComponentView) {
|
|
163
163
|
builder.SetUnmountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
164
164
|
const winrt::Microsoft::ReactNative::UnmountChildComponentViewArgs &args) noexcept {
|
|
165
165
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -169,13 +169,13 @@ void RegisterAndroidHorizontalScrollContentViewNativeComponent(
|
|
|
169
169
|
|
|
170
170
|
compBuilder.SetViewComponentViewInitializer([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
171
171
|
auto userData = winrt::make_self<TUserData>();
|
|
172
|
-
if
|
|
172
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::Initialize != &BaseAndroidHorizontalScrollContentView<TUserData>::Initialize) {
|
|
173
173
|
userData->Initialize(view);
|
|
174
174
|
}
|
|
175
175
|
view.UserData(*userData);
|
|
176
176
|
});
|
|
177
177
|
|
|
178
|
-
if
|
|
178
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::CreateVisual != &BaseAndroidHorizontalScrollContentView<TUserData>::CreateVisual) {
|
|
179
179
|
compBuilder.SetCreateVisualHandler([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
180
180
|
auto userData = view.UserData().as<TUserData>();
|
|
181
181
|
return userData->CreateVisual(view);
|
|
@@ -159,7 +159,7 @@ void RegisterAndroidProgressBarNativeComponent(
|
|
|
159
159
|
userData->UpdateEventEmitter(std::make_shared<AndroidProgressBarEventEmitter>(eventEmitter));
|
|
160
160
|
});
|
|
161
161
|
|
|
162
|
-
if
|
|
162
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::FinalizeUpdate != &BaseAndroidProgressBar<TUserData>::FinalizeUpdate) {
|
|
163
163
|
builder.SetFinalizeUpdateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
164
164
|
winrt::Microsoft::ReactNative::ComponentViewUpdateMask mask) noexcept {
|
|
165
165
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -167,7 +167,7 @@ void RegisterAndroidProgressBarNativeComponent(
|
|
|
167
167
|
});
|
|
168
168
|
}
|
|
169
169
|
|
|
170
|
-
if
|
|
170
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UpdateState != &BaseAndroidProgressBar<TUserData>::UpdateState) {
|
|
171
171
|
builder.SetUpdateStateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
172
172
|
const winrt::Microsoft::ReactNative::IComponentState &newState) noexcept {
|
|
173
173
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -175,7 +175,7 @@ void RegisterAndroidProgressBarNativeComponent(
|
|
|
175
175
|
});
|
|
176
176
|
}
|
|
177
177
|
|
|
178
|
-
if
|
|
178
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::MountChildComponentView != &BaseAndroidProgressBar<TUserData>::MountChildComponentView) {
|
|
179
179
|
builder.SetMountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
180
180
|
const winrt::Microsoft::ReactNative::MountChildComponentViewArgs &args) noexcept {
|
|
181
181
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -183,7 +183,7 @@ void RegisterAndroidProgressBarNativeComponent(
|
|
|
183
183
|
});
|
|
184
184
|
}
|
|
185
185
|
|
|
186
|
-
if
|
|
186
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UnmountChildComponentView != &BaseAndroidProgressBar<TUserData>::UnmountChildComponentView) {
|
|
187
187
|
builder.SetUnmountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
188
188
|
const winrt::Microsoft::ReactNative::UnmountChildComponentViewArgs &args) noexcept {
|
|
189
189
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -193,13 +193,13 @@ void RegisterAndroidProgressBarNativeComponent(
|
|
|
193
193
|
|
|
194
194
|
compBuilder.SetViewComponentViewInitializer([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
195
195
|
auto userData = winrt::make_self<TUserData>();
|
|
196
|
-
if
|
|
196
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::Initialize != &BaseAndroidProgressBar<TUserData>::Initialize) {
|
|
197
197
|
userData->Initialize(view);
|
|
198
198
|
}
|
|
199
199
|
view.UserData(*userData);
|
|
200
200
|
});
|
|
201
201
|
|
|
202
|
-
if
|
|
202
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::CreateVisual != &BaseAndroidProgressBar<TUserData>::CreateVisual) {
|
|
203
203
|
compBuilder.SetCreateVisualHandler([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
204
204
|
auto userData = view.UserData().as<TUserData>();
|
|
205
205
|
return userData->CreateVisual(view);
|
|
@@ -179,7 +179,7 @@ void RegisterAndroidSwipeRefreshLayoutNativeComponent(
|
|
|
179
179
|
userData->UpdateEventEmitter(std::make_shared<AndroidSwipeRefreshLayoutEventEmitter>(eventEmitter));
|
|
180
180
|
});
|
|
181
181
|
|
|
182
|
-
if
|
|
182
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::FinalizeUpdate != &BaseAndroidSwipeRefreshLayout<TUserData>::FinalizeUpdate) {
|
|
183
183
|
builder.SetFinalizeUpdateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
184
184
|
winrt::Microsoft::ReactNative::ComponentViewUpdateMask mask) noexcept {
|
|
185
185
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -187,7 +187,7 @@ void RegisterAndroidSwipeRefreshLayoutNativeComponent(
|
|
|
187
187
|
});
|
|
188
188
|
}
|
|
189
189
|
|
|
190
|
-
if
|
|
190
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UpdateState != &BaseAndroidSwipeRefreshLayout<TUserData>::UpdateState) {
|
|
191
191
|
builder.SetUpdateStateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
192
192
|
const winrt::Microsoft::ReactNative::IComponentState &newState) noexcept {
|
|
193
193
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -201,7 +201,7 @@ void RegisterAndroidSwipeRefreshLayoutNativeComponent(
|
|
|
201
201
|
userData->HandleCommand(view, args);
|
|
202
202
|
});
|
|
203
203
|
|
|
204
|
-
if
|
|
204
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::MountChildComponentView != &BaseAndroidSwipeRefreshLayout<TUserData>::MountChildComponentView) {
|
|
205
205
|
builder.SetMountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
206
206
|
const winrt::Microsoft::ReactNative::MountChildComponentViewArgs &args) noexcept {
|
|
207
207
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -209,7 +209,7 @@ void RegisterAndroidSwipeRefreshLayoutNativeComponent(
|
|
|
209
209
|
});
|
|
210
210
|
}
|
|
211
211
|
|
|
212
|
-
if
|
|
212
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UnmountChildComponentView != &BaseAndroidSwipeRefreshLayout<TUserData>::UnmountChildComponentView) {
|
|
213
213
|
builder.SetUnmountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
214
214
|
const winrt::Microsoft::ReactNative::UnmountChildComponentViewArgs &args) noexcept {
|
|
215
215
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -219,13 +219,13 @@ void RegisterAndroidSwipeRefreshLayoutNativeComponent(
|
|
|
219
219
|
|
|
220
220
|
compBuilder.SetViewComponentViewInitializer([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
221
221
|
auto userData = winrt::make_self<TUserData>();
|
|
222
|
-
if
|
|
222
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::Initialize != &BaseAndroidSwipeRefreshLayout<TUserData>::Initialize) {
|
|
223
223
|
userData->Initialize(view);
|
|
224
224
|
}
|
|
225
225
|
view.UserData(*userData);
|
|
226
226
|
});
|
|
227
227
|
|
|
228
|
-
if
|
|
228
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::CreateVisual != &BaseAndroidSwipeRefreshLayout<TUserData>::CreateVisual) {
|
|
229
229
|
compBuilder.SetCreateVisualHandler([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
230
230
|
auto userData = view.UserData().as<TUserData>();
|
|
231
231
|
return userData->CreateVisual(view);
|
|
@@ -196,7 +196,7 @@ void RegisterAndroidSwitchNativeComponent(
|
|
|
196
196
|
userData->UpdateEventEmitter(std::make_shared<AndroidSwitchEventEmitter>(eventEmitter));
|
|
197
197
|
});
|
|
198
198
|
|
|
199
|
-
if
|
|
199
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::FinalizeUpdate != &BaseAndroidSwitch<TUserData>::FinalizeUpdate) {
|
|
200
200
|
builder.SetFinalizeUpdateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
201
201
|
winrt::Microsoft::ReactNative::ComponentViewUpdateMask mask) noexcept {
|
|
202
202
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -204,7 +204,7 @@ void RegisterAndroidSwitchNativeComponent(
|
|
|
204
204
|
});
|
|
205
205
|
}
|
|
206
206
|
|
|
207
|
-
if
|
|
207
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UpdateState != &BaseAndroidSwitch<TUserData>::UpdateState) {
|
|
208
208
|
builder.SetUpdateStateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
209
209
|
const winrt::Microsoft::ReactNative::IComponentState &newState) noexcept {
|
|
210
210
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -218,7 +218,7 @@ void RegisterAndroidSwitchNativeComponent(
|
|
|
218
218
|
userData->HandleCommand(view, args);
|
|
219
219
|
});
|
|
220
220
|
|
|
221
|
-
if
|
|
221
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::MountChildComponentView != &BaseAndroidSwitch<TUserData>::MountChildComponentView) {
|
|
222
222
|
builder.SetMountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
223
223
|
const winrt::Microsoft::ReactNative::MountChildComponentViewArgs &args) noexcept {
|
|
224
224
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -226,7 +226,7 @@ void RegisterAndroidSwitchNativeComponent(
|
|
|
226
226
|
});
|
|
227
227
|
}
|
|
228
228
|
|
|
229
|
-
if
|
|
229
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UnmountChildComponentView != &BaseAndroidSwitch<TUserData>::UnmountChildComponentView) {
|
|
230
230
|
builder.SetUnmountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
231
231
|
const winrt::Microsoft::ReactNative::UnmountChildComponentViewArgs &args) noexcept {
|
|
232
232
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -236,13 +236,13 @@ void RegisterAndroidSwitchNativeComponent(
|
|
|
236
236
|
|
|
237
237
|
compBuilder.SetViewComponentViewInitializer([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
238
238
|
auto userData = winrt::make_self<TUserData>();
|
|
239
|
-
if
|
|
239
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::Initialize != &BaseAndroidSwitch<TUserData>::Initialize) {
|
|
240
240
|
userData->Initialize(view);
|
|
241
241
|
}
|
|
242
242
|
view.UserData(*userData);
|
|
243
243
|
});
|
|
244
244
|
|
|
245
|
-
if
|
|
245
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::CreateVisual != &BaseAndroidSwitch<TUserData>::CreateVisual) {
|
|
246
246
|
compBuilder.SetCreateVisualHandler([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
247
247
|
auto userData = view.UserData().as<TUserData>();
|
|
248
248
|
return userData->CreateVisual(view);
|
|
@@ -163,7 +163,7 @@ void RegisterDebuggingOverlayNativeComponent(
|
|
|
163
163
|
userData->UpdateEventEmitter(std::make_shared<DebuggingOverlayEventEmitter>(eventEmitter));
|
|
164
164
|
});
|
|
165
165
|
|
|
166
|
-
if
|
|
166
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::FinalizeUpdate != &BaseDebuggingOverlay<TUserData>::FinalizeUpdate) {
|
|
167
167
|
builder.SetFinalizeUpdateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
168
168
|
winrt::Microsoft::ReactNative::ComponentViewUpdateMask mask) noexcept {
|
|
169
169
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -171,7 +171,7 @@ void RegisterDebuggingOverlayNativeComponent(
|
|
|
171
171
|
});
|
|
172
172
|
}
|
|
173
173
|
|
|
174
|
-
if
|
|
174
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UpdateState != &BaseDebuggingOverlay<TUserData>::UpdateState) {
|
|
175
175
|
builder.SetUpdateStateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
176
176
|
const winrt::Microsoft::ReactNative::IComponentState &newState) noexcept {
|
|
177
177
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -185,7 +185,7 @@ void RegisterDebuggingOverlayNativeComponent(
|
|
|
185
185
|
userData->HandleCommand(view, args);
|
|
186
186
|
});
|
|
187
187
|
|
|
188
|
-
if
|
|
188
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::MountChildComponentView != &BaseDebuggingOverlay<TUserData>::MountChildComponentView) {
|
|
189
189
|
builder.SetMountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
190
190
|
const winrt::Microsoft::ReactNative::MountChildComponentViewArgs &args) noexcept {
|
|
191
191
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -193,7 +193,7 @@ void RegisterDebuggingOverlayNativeComponent(
|
|
|
193
193
|
});
|
|
194
194
|
}
|
|
195
195
|
|
|
196
|
-
if
|
|
196
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UnmountChildComponentView != &BaseDebuggingOverlay<TUserData>::UnmountChildComponentView) {
|
|
197
197
|
builder.SetUnmountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
198
198
|
const winrt::Microsoft::ReactNative::UnmountChildComponentViewArgs &args) noexcept {
|
|
199
199
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -203,13 +203,13 @@ void RegisterDebuggingOverlayNativeComponent(
|
|
|
203
203
|
|
|
204
204
|
compBuilder.SetViewComponentViewInitializer([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
205
205
|
auto userData = winrt::make_self<TUserData>();
|
|
206
|
-
if
|
|
206
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::Initialize != &BaseDebuggingOverlay<TUserData>::Initialize) {
|
|
207
207
|
userData->Initialize(view);
|
|
208
208
|
}
|
|
209
209
|
view.UserData(*userData);
|
|
210
210
|
});
|
|
211
211
|
|
|
212
|
-
if
|
|
212
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::CreateVisual != &BaseDebuggingOverlay<TUserData>::CreateVisual) {
|
|
213
213
|
compBuilder.SetCreateVisualHandler([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
214
214
|
auto userData = view.UserData().as<TUserData>();
|
|
215
215
|
return userData->CreateVisual(view);
|
|
@@ -135,7 +135,7 @@ void RegisterInputAccessoryNativeComponent(
|
|
|
135
135
|
userData->UpdateEventEmitter(std::make_shared<InputAccessoryEventEmitter>(eventEmitter));
|
|
136
136
|
});
|
|
137
137
|
|
|
138
|
-
if
|
|
138
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::FinalizeUpdate != &BaseInputAccessory<TUserData>::FinalizeUpdate) {
|
|
139
139
|
builder.SetFinalizeUpdateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
140
140
|
winrt::Microsoft::ReactNative::ComponentViewUpdateMask mask) noexcept {
|
|
141
141
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -143,7 +143,7 @@ void RegisterInputAccessoryNativeComponent(
|
|
|
143
143
|
});
|
|
144
144
|
}
|
|
145
145
|
|
|
146
|
-
if
|
|
146
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UpdateState != &BaseInputAccessory<TUserData>::UpdateState) {
|
|
147
147
|
builder.SetUpdateStateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
148
148
|
const winrt::Microsoft::ReactNative::IComponentState &newState) noexcept {
|
|
149
149
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -151,7 +151,7 @@ void RegisterInputAccessoryNativeComponent(
|
|
|
151
151
|
});
|
|
152
152
|
}
|
|
153
153
|
|
|
154
|
-
if
|
|
154
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::MountChildComponentView != &BaseInputAccessory<TUserData>::MountChildComponentView) {
|
|
155
155
|
builder.SetMountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
156
156
|
const winrt::Microsoft::ReactNative::MountChildComponentViewArgs &args) noexcept {
|
|
157
157
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -159,7 +159,7 @@ void RegisterInputAccessoryNativeComponent(
|
|
|
159
159
|
});
|
|
160
160
|
}
|
|
161
161
|
|
|
162
|
-
if
|
|
162
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UnmountChildComponentView != &BaseInputAccessory<TUserData>::UnmountChildComponentView) {
|
|
163
163
|
builder.SetUnmountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
164
164
|
const winrt::Microsoft::ReactNative::UnmountChildComponentViewArgs &args) noexcept {
|
|
165
165
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -169,13 +169,13 @@ void RegisterInputAccessoryNativeComponent(
|
|
|
169
169
|
|
|
170
170
|
compBuilder.SetViewComponentViewInitializer([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
171
171
|
auto userData = winrt::make_self<TUserData>();
|
|
172
|
-
if
|
|
172
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::Initialize != &BaseInputAccessory<TUserData>::Initialize) {
|
|
173
173
|
userData->Initialize(view);
|
|
174
174
|
}
|
|
175
175
|
view.UserData(*userData);
|
|
176
176
|
});
|
|
177
177
|
|
|
178
|
-
if
|
|
178
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::CreateVisual != &BaseInputAccessory<TUserData>::CreateVisual) {
|
|
179
179
|
compBuilder.SetCreateVisualHandler([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
180
180
|
auto userData = view.UserData().as<TUserData>();
|
|
181
181
|
return userData->CreateVisual(view);
|
|
@@ -214,7 +214,7 @@ void RegisterModalHostViewNativeComponent(
|
|
|
214
214
|
userData->UpdateEventEmitter(std::make_shared<ModalHostViewEventEmitter>(eventEmitter));
|
|
215
215
|
});
|
|
216
216
|
|
|
217
|
-
if
|
|
217
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::FinalizeUpdate != &BaseModalHostView<TUserData>::FinalizeUpdate) {
|
|
218
218
|
builder.SetFinalizeUpdateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
219
219
|
winrt::Microsoft::ReactNative::ComponentViewUpdateMask mask) noexcept {
|
|
220
220
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -222,7 +222,7 @@ void RegisterModalHostViewNativeComponent(
|
|
|
222
222
|
});
|
|
223
223
|
}
|
|
224
224
|
|
|
225
|
-
if
|
|
225
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UpdateState != &BaseModalHostView<TUserData>::UpdateState) {
|
|
226
226
|
builder.SetUpdateStateHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
227
227
|
const winrt::Microsoft::ReactNative::IComponentState &newState) noexcept {
|
|
228
228
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -230,7 +230,7 @@ void RegisterModalHostViewNativeComponent(
|
|
|
230
230
|
});
|
|
231
231
|
}
|
|
232
232
|
|
|
233
|
-
if
|
|
233
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::MountChildComponentView != &BaseModalHostView<TUserData>::MountChildComponentView) {
|
|
234
234
|
builder.SetMountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
235
235
|
const winrt::Microsoft::ReactNative::MountChildComponentViewArgs &args) noexcept {
|
|
236
236
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -238,7 +238,7 @@ void RegisterModalHostViewNativeComponent(
|
|
|
238
238
|
});
|
|
239
239
|
}
|
|
240
240
|
|
|
241
|
-
if
|
|
241
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::UnmountChildComponentView != &BaseModalHostView<TUserData>::UnmountChildComponentView) {
|
|
242
242
|
builder.SetUnmountChildComponentViewHandler([](const winrt::Microsoft::ReactNative::ComponentView &view,
|
|
243
243
|
const winrt::Microsoft::ReactNative::UnmountChildComponentViewArgs &args) noexcept {
|
|
244
244
|
auto userData = view.UserData().as<TUserData>();
|
|
@@ -248,13 +248,13 @@ void RegisterModalHostViewNativeComponent(
|
|
|
248
248
|
|
|
249
249
|
compBuilder.SetViewComponentViewInitializer([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
250
250
|
auto userData = winrt::make_self<TUserData>();
|
|
251
|
-
if
|
|
251
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::Initialize != &BaseModalHostView<TUserData>::Initialize) {
|
|
252
252
|
userData->Initialize(view);
|
|
253
253
|
}
|
|
254
254
|
view.UserData(*userData);
|
|
255
255
|
});
|
|
256
256
|
|
|
257
|
-
if
|
|
257
|
+
if CONSTEXPR_SUPPORTED_ON_VIRTUAL_FN_ADDRESS (&TUserData::CreateVisual != &BaseModalHostView<TUserData>::CreateVisual) {
|
|
258
258
|
compBuilder.SetCreateVisualHandler([](const winrt::Microsoft::ReactNative::ComponentView &view) noexcept {
|
|
259
259
|
auto userData = view.UserData().as<TUserData>();
|
|
260
260
|
return userData->CreateVisual(view);
|