diff --git a/SampleApps/WebView2APISample/AppWindow.cpp b/SampleApps/WebView2APISample/AppWindow.cpp index f692d5c..ccb2c20 100644 --- a/SampleApps/WebView2APISample/AppWindow.cpp +++ b/SampleApps/WebView2APISample/AppWindow.cpp @@ -35,8 +35,10 @@ #include "ScenarioCustomDownloadExperience.h" #include "ScenarioCustomScheme.h" #include "ScenarioCustomSchemeNavigate.h" -#include "ScenarioDefaultBackgroundColor.h" #include "ScenarioDOMContentLoaded.h" +#include "ScenarioDedicatedWorker.h" +#include "ScenarioDedicatedWorkerPostMessage.h" +#include "ScenarioDefaultBackgroundColor.h" #include "ScenarioDragDrop.h" #include "ScenarioDragDropOverride.h" #include "ScenarioExtensionsManagement.h" @@ -47,10 +49,9 @@ #include "ScenarioNonClientRegionSupport.h" #include "ScenarioNotificationReceived.h" #include "ScenarioPermissionManagement.h" -#include "ScenarioDedicatedWorker.h" -#include "ScenarioDedicatedWorkerPostMessage.h" #include "ScenarioServiceWorkerManager.h" #include "ScenarioServiceWorkerPostMessage.h" +#include "ScenarioServiceWorkerPostMessageSetting.h" #include "ScenarioSharedWorkerManager.h" #include "ScenarioSaveAs.h" #include "ScenarioScreenCapture.h" @@ -821,6 +822,17 @@ bool AppWindow::ExecuteWebViewCommands(WPARAM wParam, LPARAM lParam) worker_manager->GetAllSharedWorkers(); return true; } + case IDM_TOGGLE_SERVICE_WORKER_JS_API_SETTING: + { + auto component = GetComponent(); + if (!component) + { + NewComponent(this); + component = GetComponent(); + } + component->ToggleServiceWorkerJsApiSetting(); + return true; + } case IDM_SCENARIO_SCREEN_CAPTURE: { NewComponent(this); diff --git a/SampleApps/WebView2APISample/ScenarioServiceWorkerPostMessageSetting.cpp b/SampleApps/WebView2APISample/ScenarioServiceWorkerPostMessageSetting.cpp new file mode 100644 index 0000000..7044b1c --- /dev/null +++ b/SampleApps/WebView2APISample/ScenarioServiceWorkerPostMessageSetting.cpp @@ -0,0 +1,209 @@ +// Copyright (C) Microsoft Corporation. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. +#include "stdafx.h" +#include + +#include "CheckFailure.h" + +#include "ScenarioServiceWorkerPostMessageSetting.h" + +using namespace Microsoft::WRL; + +static constexpr WCHAR c_samplePath[] = L"scenario_sw_post_msg_scope/index2.html"; + +ScenarioServiceWorkerPostMessageSetting::ScenarioServiceWorkerPostMessageSetting( + AppWindow* appWindow) + : m_appWindow(appWindow), m_webView(appWindow->GetWebView()) +{ + SetupEventsOnWebview(); +} + +ScenarioServiceWorkerPostMessageSetting::~ScenarioServiceWorkerPostMessageSetting() +{ + UnregisterAllServiceWorkers(); + m_webView->remove_ContentLoading(m_contentLoadingToken); + m_webView->remove_WebMessageReceived(m_webMessageReceivedToken); + if (m_serviceWorkerManager) + { + m_serviceWorkerManager->remove_ServiceWorkerRegistered(m_serviceWorkerRegisteredToken); + } +} + +void ScenarioServiceWorkerPostMessageSetting::UnregisterAllServiceWorkers() +{ + m_webView->ExecuteScript( + L"navigator.serviceWorker.getRegistrations().then(function(registrations) {" + L" for(let registration of registrations) {" + L" registration.unregister();" + L" }" + L"});", + nullptr); +} + +void ScenarioServiceWorkerPostMessageSetting::ToggleServiceWorkerJsApiSetting() +{ + // Unregister all the existing service workers before toggling the setting. + // So that the setting can be applied to new service workers. + UnregisterAllServiceWorkers(); + auto webView2_13 = m_webView.try_query(); + CHECK_FEATURE_RETURN_EMPTY(webView2_13); + + wil::com_ptr webView2Profile; + CHECK_FAILURE(webView2_13->get_Profile(&webView2Profile)); + auto webViewExperimentalProfile15 = + webView2Profile.try_query(); + + if (webViewExperimentalProfile15) + { + BOOL isEnabled; + //! [AreWebViewScriptApisEnabledForServiceWorkers] + CHECK_FAILURE( + webViewExperimentalProfile15->get_AreWebViewScriptApisEnabledForServiceWorkers( + &isEnabled)); + CHECK_FAILURE( + webViewExperimentalProfile15->put_AreWebViewScriptApisEnabledForServiceWorkers( + !isEnabled)); + //! [AreWebViewScriptApisEnabledForServiceWorkers] + + MessageBox( + nullptr, + (std::wstring(L"Service Worker JS API setting has been ") + + (!isEnabled ? L"enabled." : L"disabled.")) + .c_str(), + L"Service Worker JS API Setting", MB_OK); + } + + // Setup events on webview2 to listen message from service worker + // main thread. + m_sampleUri = m_appWindow->GetLocalUri(c_samplePath); + CHECK_FAILURE(m_webView->Navigate(m_sampleUri.c_str())); +} + +void ScenarioServiceWorkerPostMessageSetting::SetupEventsOnWebview() +{ + + // Turn off this scenario if we navigate away from the sample page. + CHECK_FAILURE(m_webView->add_ContentLoading( + Callback( + [this](ICoreWebView2* sender, ICoreWebView2ContentLoadingEventArgs* args) -> HRESULT + { + wil::unique_cotaskmem_string uri; + sender->get_Source(&uri); + if (uri.get() != m_sampleUri) + { + m_appWindow->DeleteComponent(this); + } + return S_OK; + }) + .Get(), + &m_contentLoadingToken)); + + // Setup WebMessageReceived event to receive message from main thread. + m_webView->add_WebMessageReceived( + Callback( + [this](ICoreWebView2* sender, ICoreWebView2WebMessageReceivedEventArgs* args) + -> HRESULT + { + wil::unique_cotaskmem_string message; + CHECK_FAILURE(args->TryGetWebMessageAsString(&message)); + + std::wstring msgStr = message.get(); + if (msgStr == L"MessageFromMainThread") + { + std::wstringstream message{}; + message << L"Message: " << std::endl + << L"Service Worker Message from Main thread. Service worker " + L"direct messaging disabled." + << std::endl; + m_appWindow->AsyncMessageBox(message.str(), L"Message from Service Worker"); + } + return S_OK; + }) + .Get(), + &m_webMessageReceivedToken); + + // Get ServiceWorkerManager from profile and setup events to listen to service worker post + // messages. + auto webView2_13 = m_webView.try_query(); + CHECK_FEATURE_RETURN_EMPTY(webView2_13); + + wil::com_ptr webView2Profile; + CHECK_FAILURE(webView2_13->get_Profile(&webView2Profile)); + auto webViewExperimentalProfile13 = + webView2Profile.try_query(); + CHECK_FEATURE_RETURN_EMPTY(webViewExperimentalProfile13); + CHECK_FAILURE( + webViewExperimentalProfile13->get_ServiceWorkerManager(&m_serviceWorkerManager)); + + CHECK_FAILURE(m_serviceWorkerManager->add_ServiceWorkerRegistered( + Callback( + [this]( + ICoreWebView2ExperimentalServiceWorkerManager* sender, + ICoreWebView2ExperimentalServiceWorkerRegisteredEventArgs* args) + { + wil::com_ptr + serviceWorkerRegistration; + CHECK_FAILURE(args->get_ServiceWorkerRegistration(&serviceWorkerRegistration)); + + if (serviceWorkerRegistration) + { + wil::com_ptr serviceWorker; + CHECK_FAILURE( + serviceWorkerRegistration->get_ActiveServiceWorker(&serviceWorker)); + + if (serviceWorker) + { + SetupEventsOnServiceWorker(serviceWorker); + } + else + { + CHECK_FAILURE(serviceWorkerRegistration->add_ServiceWorkerActivated( + Callback< + ICoreWebView2ExperimentalServiceWorkerActivatedEventHandler>( + [this]( + ICoreWebView2ExperimentalServiceWorkerRegistration* sender, + ICoreWebView2ExperimentalServiceWorkerActivatedEventArgs* + args) -> HRESULT + { + wil::com_ptr + serviceWorker; + CHECK_FAILURE( + args->get_ActiveServiceWorker(&serviceWorker)); + SetupEventsOnServiceWorker(serviceWorker); + + return S_OK; + }) + .Get(), + nullptr)); + } + } + + return S_OK; + }) + .Get(), + &m_serviceWorkerRegisteredToken)); +} + +void ScenarioServiceWorkerPostMessageSetting::SetupEventsOnServiceWorker( + wil::com_ptr serviceWorker) +{ + serviceWorker->add_WebMessageReceived( + Callback( + [this]( + ICoreWebView2ExperimentalServiceWorker* sender, + ICoreWebView2WebMessageReceivedEventArgs* args) -> HRESULT + { + wil::unique_cotaskmem_string messageRaw; + CHECK_FAILURE(args->TryGetWebMessageAsString(&messageRaw)); + std::wstring messageFromWorker = messageRaw.get(); + + std::wstringstream message{}; + message << L"Message: " << std::endl << messageFromWorker << std::endl; + m_appWindow->AsyncMessageBox(message.str(), L"Message from Service Worker"); + + return S_OK; + }) + .Get(), + nullptr); +} diff --git a/SampleApps/WebView2APISample/ScenarioServiceWorkerPostMessageSetting.h b/SampleApps/WebView2APISample/ScenarioServiceWorkerPostMessageSetting.h new file mode 100644 index 0000000..cd85aea --- /dev/null +++ b/SampleApps/WebView2APISample/ScenarioServiceWorkerPostMessageSetting.h @@ -0,0 +1,31 @@ +// Copyright (C) Microsoft Corporation. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#pragma once +#include "stdafx.h" + +#include "AppWindow.h" +#include "ComponentBase.h" + +class ScenarioServiceWorkerPostMessageSetting : public ComponentBase +{ +public: + ScenarioServiceWorkerPostMessageSetting(AppWindow* appWindow); + ~ScenarioServiceWorkerPostMessageSetting() override; + void SetupEventsOnWebview(); + void SetupEventsOnServiceWorker( + wil::com_ptr serviceWorker); + + void ToggleServiceWorkerJsApiSetting(); + void UnregisterAllServiceWorkers(); + +private: + AppWindow* m_appWindow; + wil::com_ptr m_webView; + wil::com_ptr m_serviceWorkerManager; + std::wstring m_sampleUri; + EventRegistrationToken m_serviceWorkerRegisteredToken = {}; + EventRegistrationToken m_contentLoadingToken = {}; + EventRegistrationToken m_webMessageReceivedToken = {}; +}; diff --git a/SampleApps/WebView2APISample/SettingsComponent.cpp b/SampleApps/WebView2APISample/SettingsComponent.cpp index c0e5cea..a6e9399 100644 --- a/SampleApps/WebView2APISample/SettingsComponent.cpp +++ b/SampleApps/WebView2APISample/SettingsComponent.cpp @@ -953,20 +953,64 @@ bool SettingsComponent::HandleWindowMessage( //! [ToggleSwipeNavigationEnabled] return true; } - case ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS: + case ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_NONE: + case ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_LEFT: + case ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_CENTER: + case ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_RIGHT: + case ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_ALL: { //! [ToggleHidePdfToolbarItems] CHECK_FEATURE_RETURN(m_settings7); - COREWEBVIEW2_PDF_TOOLBAR_ITEMS hiddenPdfToolbarItems; - CHECK_FAILURE(m_settings7->get_HiddenPdfToolbarItems(&hiddenPdfToolbarItems)); - if (hiddenPdfToolbarItems == - COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_NONE) + COREWEBVIEW2_PDF_TOOLBAR_ITEMS itemsToHide = + COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_NONE; + std::wstring message; + + switch (LOWORD(wParam)) { - CHECK_FAILURE( - m_settings7->put_HiddenPdfToolbarItems( - COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_PRINT | - COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_SAVE) | + case ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_NONE: + // Show all items (hide none) + itemsToHide = + COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_NONE; + message = L"All PDF toolbar items are shown after the next navigation."; + break; + case ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_LEFT: + // Left items: Bookmarks + itemsToHide = static_cast( + COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_BOOKMARKS); + message = + L"PDF toolbar left items (Bookmarks) are hidden after the next navigation."; + break; + case ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_CENTER: + // Center items: Page Selector, Zoom In, Zoom Out, Fit Page, Page Layout, Rotate + itemsToHide = static_cast( + COREWEBVIEW2_PDF_TOOLBAR_ITEMS:: + COREWEBVIEW2_PDF_TOOLBAR_ITEMS_PAGE_SELECTOR | + COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_ZOOM_IN | + COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_ZOOM_OUT | + COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_FIT_PAGE | + COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_PAGE_LAYOUT | + COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_ROTATE); + message = L"PDF toolbar center items (Page Selector, Zoom, Fit Page, Page " + L"Layout, Rotate) are hidden after the next navigation."; + break; + case ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_RIGHT: + // Right items: Search, Print, Save, Full Screen, More Settings + itemsToHide = static_cast( + COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_SEARCH | + COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_PRINT | + COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_SAVE | + COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_FULL_SCREEN | + COREWEBVIEW2_PDF_TOOLBAR_ITEMS:: + COREWEBVIEW2_PDF_TOOLBAR_ITEMS_MORE_SETTINGS); + message = L"PDF toolbar right items (Search, Print, Save, Full Screen, More " + L"Settings) are hidden after the next navigation."; + break; + case ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_ALL: + // All items + itemsToHide = static_cast( + COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_PRINT | + COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_SAVE | COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_BOOKMARKS | COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_FIT_PAGE | COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_PAGE_LAYOUT | @@ -980,20 +1024,12 @@ bool SettingsComponent::HandleWindowMessage( COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_FULL_SCREEN | COREWEBVIEW2_PDF_TOOLBAR_ITEMS:: COREWEBVIEW2_PDF_TOOLBAR_ITEMS_MORE_SETTINGS); - MessageBox( - nullptr, - L"PDF toolbar print and save buttons are hidden after the next navigation.", - L"Settings change", MB_OK); - } - else - { - CHECK_FAILURE(m_settings7->put_HiddenPdfToolbarItems( - COREWEBVIEW2_PDF_TOOLBAR_ITEMS::COREWEBVIEW2_PDF_TOOLBAR_ITEMS_NONE)); - MessageBox( - nullptr, - L"PDF toolbar print and save buttons are shown after the next navigation.", - L"Settings change", MB_OK); + message = L"All PDF toolbar items are hidden after the next navigation."; + break; } + + CHECK_FAILURE(m_settings7->put_HiddenPdfToolbarItems(itemsToHide)); + MessageBox(nullptr, message.c_str(), L"Settings change", MB_OK); //! [ToggleHidePdfToolbarItems] return true; } diff --git a/SampleApps/WebView2APISample/WebView2APISample.rc b/SampleApps/WebView2APISample/WebView2APISample.rc index 5904d53..36b69f3 100644 --- a/SampleApps/WebView2APISample/WebView2APISample.rc +++ b/SampleApps/WebView2APISample/WebView2APISample.rc @@ -138,7 +138,14 @@ BEGIN MENUITEM "Toggle Default Script Dialogs", IDM_TOGGLE_DEFAULT_SCRIPT_DIALOGS MENUITEM "Toggle DevTools Enabled", ID_SETTINGS_DEV_TOOLS_ENABLED MENUITEM "Toggle General Autofill", ID_SETTINGS_GENERAL_AUTOFILL_ENABLED - MENUITEM "Toggle Hide PDF Toolbar Items", ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS + POPUP "Toggle Hide PDF Toolbar Items" + BEGIN + MENUITEM "None (Show All)", ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_NONE + MENUITEM "Hide Left Items", ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_LEFT + MENUITEM "Hide Center Items", ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_CENTER + MENUITEM "Hide Right Items", ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_RIGHT + MENUITEM "Hide All Items", ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_ALL + END MENUITEM "Toggle Host Objects Allowed", ID_SETTINGS_HOST_OBJECTS_ALLOWED MENUITEM "Toggle JavaScript", IDM_TOGGLE_JAVASCRIPT MENUITEM "Toggle Password Autosave", ID_SETTINGS_PASSWORD_AUTOSAVE_ENABLED @@ -324,6 +331,7 @@ BEGIN MENUITEM "Get Service Worker Registrations", IDM_SCENARIO_GET_SERVICE_WORKER_REGISTRATIONS MENUITEM "Get Service Worker Registrations for the Scope", IDM_SCENARIO_GET_SERVICE_WORKER_REGISTERED_FOR_SCOPE MENUITEM "Web Messaging", IDM_SCENARIO_SERVICE_WORKER_POST_MESSAGE + MENUITEM "Toggle Service Worker JS APIs", IDM_TOGGLE_SERVICE_WORKER_JS_API_SETTING END POPUP "Dedicated Worker" BEGIN diff --git a/SampleApps/WebView2APISample/WebView2APISample.vcxproj b/SampleApps/WebView2APISample/WebView2APISample.vcxproj index ec3c5d6..3e41185 100644 --- a/SampleApps/WebView2APISample/WebView2APISample.vcxproj +++ b/SampleApps/WebView2APISample/WebView2APISample.vcxproj @@ -253,6 +253,7 @@ + @@ -317,6 +318,7 @@ + @@ -532,13 +534,13 @@ - + 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}. - + diff --git a/SampleApps/WebView2APISample/packages.config b/SampleApps/WebView2APISample/packages.config index f3a3bf6..bc1ee89 100644 --- a/SampleApps/WebView2APISample/packages.config +++ b/SampleApps/WebView2APISample/packages.config @@ -1,5 +1,5 @@  - + \ No newline at end of file diff --git a/SampleApps/WebView2APISample/resource.h b/SampleApps/WebView2APISample/resource.h index d2474cd..1da97a5 100644 --- a/SampleApps/WebView2APISample/resource.h +++ b/SampleApps/WebView2APISample/resource.h @@ -221,6 +221,7 @@ #define IDM_SCENARIO_DEDICATED_WORKER_POST_MESSAGE 3009 #define IDM_SCENARIO_SERVICE_WORKER_POST_MESSAGE 3010 #define IDM_SCENARIO_WEBRTC_UDP_PORT_CONFIGURATION 3011 +#define IDM_TOGGLE_SERVICE_WORKER_JS_API_SETTING 3012 #define ID_BLOCKEDSITES 32773 #define ID_SETTINGS_NAVIGATETOSTRING 32774 #define ID_ADD_INITIALIZE_SCRIPT 32775 @@ -238,7 +239,6 @@ #define ID_SETTINGS_PINCH_ZOOM_ENABLED 32787 #define ID_SETTINGS_SWIPE_NAVIGATION_ENABLED 32788 #define ID_TOGGLE_CLIENT_CERTIFICATE_REQUESTED 32789 -#define ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS 32790 #define ID_TOGGLE_CUSTOM_CONTEXT_MENU 32791 #define ID_TOGGLE_ALLOW_EXTERNAL_DROP 32792 #define ID_SETTINGS_TOGGLE_POST_STATUS_BAR_ACTIVITY 32793 @@ -254,6 +254,11 @@ #define IDC_CHECK_USE_OS_REGION 32803 #define ID_CUSTOM_DATA_PARTITION 32804 #define ID_SETTINGS_NON_CLIENT_REGION_SUPPORT_ENABLED 32805 +#define ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_NONE 32853 +#define ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_LEFT 32854 +#define ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_CENTER 32855 +#define ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_RIGHT 32856 +#define ID_SETTINGS_TOGGLE_HIDE_PDF_TOOLBAR_ITEMS_ALL 32857 #define IDM_SCENARIO_THROTTLING_CONTROL 32807 #define IDM_SCENARIO_SCREEN_CAPTURE 32809 #define IDC_STATIC -1 @@ -263,7 +268,7 @@ #ifndef APSTUDIO_READONLY_SYMBOLS #define _APS_NO_MFC 1 #define _APS_NEXT_RESOURCE_VALUE 245 -#define _APS_NEXT_COMMAND_VALUE 32810 +#define _APS_NEXT_COMMAND_VALUE 32858 #define _APS_NEXT_CONTROL_VALUE 1015 #define _APS_NEXT_SYMED_VALUE 110 #endif diff --git a/SampleApps/WebView2WindowsFormsBrowser/WebView2WindowsFormsBrowser.csproj b/SampleApps/WebView2WindowsFormsBrowser/WebView2WindowsFormsBrowser.csproj index a54a57f..96d6f77 100644 --- a/SampleApps/WebView2WindowsFormsBrowser/WebView2WindowsFormsBrowser.csproj +++ b/SampleApps/WebView2WindowsFormsBrowser/WebView2WindowsFormsBrowser.csproj @@ -25,7 +25,7 @@ AnyCPU - + diff --git a/SampleApps/WebView2WpfBrowser/WebView2WpfBrowser.csproj b/SampleApps/WebView2WpfBrowser/WebView2WpfBrowser.csproj index ffde1d8..4f924fe 100644 --- a/SampleApps/WebView2WpfBrowser/WebView2WpfBrowser.csproj +++ b/SampleApps/WebView2WpfBrowser/WebView2WpfBrowser.csproj @@ -61,7 +61,7 @@ - +