diff --git a/windows/ReactNativeWebView.sln b/windows/ReactNativeWebView.sln
index b0f11da..4af3230 100644
--- a/windows/ReactNativeWebView.sln
+++ b/windows/ReactNativeWebView.sln
@@ -34,7 +34,7 @@ EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
..\node_modules\react-native-windows\JSI\Shared\JSI.Shared.vcxitems*{0cc28589-39e4-4288-b162-97b959f8b843}*SharedItemsImports = 9
- ..\node_modules\react-native-windows\ReactWindowsCore\ReactWindowsCore.vcxitems*{11c084a3-a57c-4296-a679-cac17b603144}*SharedItemsImports = 4
+ ..\node_modules\react-native-windows\ReactWindowsCore\ReactWindowsCore-Items.vcxitems*{11c084a3-a57c-4296-a679-cac17b603144}*SharedItemsImports = 4
..\node_modules\react-native-windows\Chakra\Chakra.vcxitems*{2d5d43d9-cffc-4c40-b4cd-02efb4e2742b}*SharedItemsImports = 4
..\node_modules\react-native-windows\Mso\Mso.vcxitems*{2d5d43d9-cffc-4c40-b4cd-02efb4e2742b}*SharedItemsImports = 4
..\node_modules\react-native-windows\Shared\Shared.vcxitems*{2d5d43d9-cffc-4c40-b4cd-02efb4e2742b}*SharedItemsImports = 4
@@ -44,7 +44,6 @@ Global
..\node_modules\react-native-windows\Chakra\Chakra.vcxitems*{c38970c0-5fbf-4d69-90d8-cbac225ae895}*SharedItemsImports = 9
..\node_modules\react-native-windows\Microsoft.ReactNative.Cxx\Microsoft.ReactNative.Cxx.vcxitems*{da8b35b3-da00-4b02-bde6-6a397b3fd46b}*SharedItemsImports = 9
..\node_modules\react-native-windows\Chakra\Chakra.vcxitems*{f7d32bd0-2749-483e-9a0d-1635ef7e3136}*SharedItemsImports = 4
- ..\node_modules\react-native-windows\JSI\Shared\JSI.Shared.vcxitems*{f7d32bd0-2749-483e-9a0d-1635ef7e3136}*SharedItemsImports = 4
..\node_modules\react-native-windows\Microsoft.ReactNative.Cxx\Microsoft.ReactNative.Cxx.vcxitems*{f7d32bd0-2749-483e-9a0d-1635ef7e3136}*SharedItemsImports = 4
..\node_modules\react-native-windows\Mso\Mso.vcxitems*{f7d32bd0-2749-483e-9a0d-1635ef7e3136}*SharedItemsImports = 4
..\node_modules\react-native-windows\Shared\Shared.vcxitems*{f7d32bd0-2749-483e-9a0d-1635ef7e3136}*SharedItemsImports = 4
diff --git a/windows/ReactNativeWebView/ReactNativeWebView.vcxproj b/windows/ReactNativeWebView/ReactNativeWebView.vcxproj
index 0f0ad05..46a756d 100644
--- a/windows/ReactNativeWebView/ReactNativeWebView.vcxproj
+++ b/windows/ReactNativeWebView/ReactNativeWebView.vcxproj
@@ -1,6 +1,6 @@
-
+
true
true
@@ -89,6 +89,7 @@
28204
_WINRT_DLL;%(PreprocessorDefinitions)
$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)
+ stdcpp17
Console
@@ -153,7 +154,7 @@
-
+
This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.
@@ -161,4 +162,4 @@
-
+
\ No newline at end of file
diff --git a/windows/ReactNativeWebView/ReactWebView.cpp b/windows/ReactNativeWebView/ReactWebView.cpp
index 6127fbe..045cec4 100644
--- a/windows/ReactNativeWebView/ReactWebView.cpp
+++ b/windows/ReactNativeWebView/ReactWebView.cpp
@@ -5,8 +5,8 @@
#include "JSValueXaml.h"
#include "ReactWebView.h"
#include "ReactWebView.g.cpp"
-
-
+#include
+#include
namespace winrt {
using namespace Microsoft::ReactNative;
@@ -63,11 +63,22 @@ namespace winrt::ReactNativeWebView::implementation {
});
}
+ bool Is17763OrHigher() {
+ static std::optional hasUniversalAPIContract_v7;
+
+ if (!hasUniversalAPIContract_v7.has_value()) {
+ hasUniversalAPIContract_v7 = winrt::Windows::Foundation::Metadata::ApiInformation::IsApiContractPresent(L"Windows.Foundation.UniversalApiContract", 7);
+ }
+ return hasUniversalAPIContract_v7.value();
+ }
+
void ReactWebView::WriteWebViewNavigationEventArg(winrt::WebView const& sender, winrt::IJSValueWriter const& eventDataWriter) {
auto tag = this->GetValue(winrt::FrameworkElement::TagProperty()).as().GetInt64();
WriteProperty(eventDataWriter, L"canGoBack", sender.CanGoBack());
WriteProperty(eventDataWriter, L"canGoForward", sender.CanGoForward());
- WriteProperty(eventDataWriter, L"loading", !sender.IsLoaded());
+ if (Is17763OrHigher()) {
+ WriteProperty(eventDataWriter, L"loading", !sender.IsLoaded());
+ }
WriteProperty(eventDataWriter, L"target", tag);
WriteProperty(eventDataWriter, L"title", sender.DocumentTitle());
if (auto uri = sender.Source()) {
diff --git a/windows/WebViewBridgeComponent/WebViewBridgeComponent.vcxproj b/windows/WebViewBridgeComponent/WebViewBridgeComponent.vcxproj
index 2100364..68a6b77 100644
--- a/windows/WebViewBridgeComponent/WebViewBridgeComponent.vcxproj
+++ b/windows/WebViewBridgeComponent/WebViewBridgeComponent.vcxproj
@@ -95,6 +95,7 @@
_WINRT_DLL;WIN32_LEAN_AND_MEAN;WINRT_LEAN_AND_MEAN;%(PreprocessorDefinitions)
$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)
+ stdcpp17
Console