From e98ad5d21b1645671cc2968b289850e3f028f70d Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Fri, 17 Feb 2023 10:17:44 -0800 Subject: [PATCH 01/31] Initial draft --- .../wv2-control-sdk-runtime-diagram.png | Bin 0 -> 11573 bytes microsoft-edge/webview2/index.md | 38 +++++++++++++++++- 2 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 microsoft-edge/webview2/index-images/wv2-control-sdk-runtime-diagram.png diff --git a/microsoft-edge/webview2/index-images/wv2-control-sdk-runtime-diagram.png b/microsoft-edge/webview2/index-images/wv2-control-sdk-runtime-diagram.png new file mode 100644 index 0000000000000000000000000000000000000000..dbe28d5cb65dca78a940f4e92b36c42364aba10b GIT binary patch literal 11573 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 d=pI{qQU#TK#$V&K1RsE +## The WebView2 control, SDK, and Runtime + +The WebView2 control, WebView2 SDK, and WebView2 Runtime are related as follows. + +![Diagram: Relationship between the WebView2 control, SDK, and Runtime](wv2-control-sdk-runtime-diagram.png) + +Boundary: Dev machine vs. user machine. + +How the WebView2 SDK is laid out in relation to how the WebView2 RunTime is laid out. + +Note any differences for Runtime & SDK across the frameworks/platforms/languages. + + +See also: +* [Understanding the options at the Runtime download page](./concepts/distribution.md#understanding-the-options-at-the-runtime-download-page) in _Distribute your app and the WebView2 Runtime_. + + + +## Setup for Dev machine + + + +See also: +* [Set up your Dev environment for WebView2](./how-to/machine-setup.md) + + + +## Setup for User machines + + + +See also: +* [Set up your Dev environment for WebView2](./how-to/machine-setup.md) + + ## Supported platforms From b9c34a2c8501c89a41b78ec91015335b8651fbd6 Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Fri, 17 Feb 2023 10:57:05 -0800 Subject: [PATCH 02/31] linkfix --- microsoft-edge/webview2/index.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/microsoft-edge/webview2/index.md b/microsoft-edge/webview2/index.md index 743c0286d5..4697b3e604 100644 --- a/microsoft-edge/webview2/index.md +++ b/microsoft-edge/webview2/index.md @@ -69,7 +69,10 @@ Hybrid apps, in the middle of this spectrum, allow you to enjoy the best of both The WebView2 control, WebView2 SDK, and WebView2 Runtime are related as follows. -![Diagram: Relationship between the WebView2 control, SDK, and Runtime](wv2-control-sdk-runtime-diagram.png) +* A Prerelease version of the WebView2 SDK uses a preview channel of Microsoft Edge. +* A Release version of the WebView2 SDK uses the WebView2 Runtime. + +![Diagram: Relationship between the WebView2 control, SDK, and Runtime](./index-images/wv2-control-sdk-runtime-diagram.png) Boundary: Dev machine vs. user machine. @@ -80,6 +83,8 @@ Note any differences for Runtime & SDK across the frameworks/platforms/languages See also: * [Understanding the options at the Runtime download page](./concepts/distribution.md#understanding-the-options-at-the-runtime-download-page) in _Distribute your app and the WebView2 Runtime_. +* [Understand the different WebView2 SDK versions](./concepts/versioning.md) +* [Distribute your app and the WebView2 Runtime](./concepts/distribution.md) From a6fddf48bd7d1ecf0359779b0fdf6c303a0eda29 Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Fri, 17 Feb 2023 11:31:09 -0800 Subject: [PATCH 03/31] Add tables --- microsoft-edge/webview2/index.md | 27 ++++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/microsoft-edge/webview2/index.md b/microsoft-edge/webview2/index.md index 4697b3e604..c2556cb179 100644 --- a/microsoft-edge/webview2/index.md +++ b/microsoft-edge/webview2/index.md @@ -69,9 +69,6 @@ Hybrid apps, in the middle of this spectrum, allow you to enjoy the best of both The WebView2 control, WebView2 SDK, and WebView2 Runtime are related as follows. -* A Prerelease version of the WebView2 SDK uses a preview channel of Microsoft Edge. -* A Release version of the WebView2 SDK uses the WebView2 Runtime. - ![Diagram: Relationship between the WebView2 control, SDK, and Runtime](./index-images/wv2-control-sdk-runtime-diagram.png) Boundary: Dev machine vs. user machine. @@ -81,6 +78,30 @@ How the WebView2 SDK is laid out in relation to how the WebView2 RunTime is laid Note any differences for Runtime & SDK across the frameworks/platforms/languages. + +#### Roles of the control, SDK, and Runtime + +The WebView2 control, SDK, and Runtime have the following roles: + +| Component | Role | +|:---|:---| +| WebView2 SDK | text | +| WebView2 control | text | +| WebView2 Runtime | text | + + + +#### Prerelease SDK with preview browser channel, or Release SDK with Runtime + +| Version | Renderer platform | Description | +|:---|:---|:---| +| Prerelease SDK | A preview channel of Microsoft Edge (Beta, Dev, or Canary) | For experimenting and testing your app against upcoming changes, on your Dev machines. | +| Release SDK | The WebView2 Runtime | For shipping your app to end users. | + +* A Prerelease version of the WebView2 SDK uses a preview channel of Microsoft Edge (Beta, Dev, or Canary). +* A Release version of the WebView2 SDK uses the WebView2 Runtime. + + See also: * [Understanding the options at the Runtime download page](./concepts/distribution.md#understanding-the-options-at-the-runtime-download-page) in _Distribute your app and the WebView2 Runtime_. * [Understand the different WebView2 SDK versions](./concepts/versioning.md) From 5c871a6c8e327744c8e638ed3c212c224057fac3 Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Thu, 23 Feb 2023 12:57:05 -0800 Subject: [PATCH 04/31] Topical TOC buckets --- microsoft-edge/toc.yml | 190 +++++++++--------- .../webview2/concepts/distribution.md | 36 ++-- .../webview2/concepts/versioning.md | 12 +- .../webview2/how-to/set-preview-channel.md | 2 +- microsoft-edge/webview2/index.md | 2 +- 5 files changed, 127 insertions(+), 115 deletions(-) diff --git a/microsoft-edge/toc.yml b/microsoft-edge/toc.yml index 6ab58f1f50..ab631fd7ec 100644 --- a/microsoft-edge/toc.yml +++ b/microsoft-edge/toc.yml @@ -1098,6 +1098,10 @@ href: webview2/concepts/overview-features-apis.md displayName: + - name: Differences between Microsoft Edge and WebView2 + href: webview2/concepts/browser-features.md + displayName: + # ----------------------------------------------------------------------------- # machine setup - name: Set up your Dev environment for WebView2 @@ -1174,7 +1178,6 @@ displayName: WebView2WindowsFormsBrowser, WinForms sample app # repo dir name, top-of-page title # ----------------------------------------------------------------------------- -# Deployment samples - name: Deployment samples items: - name: Deployment samples @@ -1194,54 +1197,29 @@ displayName: WV2DeploymentWiXCustomActionSample # repo dir name # ----------------------------------------------------------------------------- - - name: Fundamentals - items: - - name: Differences between Microsoft Edge and WebView2 - href: webview2/concepts/browser-features.md - displayName: - - - name: "Main classes for WebView2: Environment, Controller, and Core" - href: webview2/concepts/environment-controller-core.md - displayName: + - name: "Main classes for WebView2: Environment, Controller, and Core" + href: webview2/concepts/environment-controller-core.md + displayName: - - name: Navigation events - href: webview2/concepts/navigation-events.md - displayName: Navigation events for WebView2 apps # top-of-page title + - name: Navigation events + href: webview2/concepts/navigation-events.md + displayName: Navigation events for WebView2 apps # top-of-page title - - name: Basic authentication - href: webview2/concepts/basic-authentication.md - displayName: auth, Basic authentication for WebView2 apps # top-of-page title + - name: Basic authentication + href: webview2/concepts/basic-authentication.md + displayName: auth, Basic authentication for WebView2 apps # top-of-page title - - name: Windowed vs. visual hosting of WebView2 - href: webview2/concepts/windowed-vs-visual-hosting.md - displayName: + - name: Windowed vs. visual hosting of WebView2 + href: webview2/concepts/windowed-vs-visual-hosting.md + displayName: +# ----------------------------------------------------------------------------- + - name: Customization and UI + items: - name: Custom management of network requests href: webview2/how-to/webresourcerequested.md displayName: WebResourceRequested, WebResourceResponseReceived - - name: Web and native interop - items: - - name: Interop of native-side and web-side code - href: webview2/how-to/communicate-btwn-web-native.md - displayName: JavaScript interop, Embed web content into native applications (JavaScript interop) # old title - - - name: Call web-side code from native-side code - href: webview2/how-to/javascript.md - displayName: ExecuteScriptAsync API, Use JavaScript in WebView for extended scenarios # old title - - - name: Call native-side code from web-side code - href: webview2/how-to/hostobject.md - displayName: AddHostObjectToScript, host objects - - - name: Call native-side WinRT code from web-side code - href: webview2/how-to/winrt-from-js.md - displayName: AddHostObjectToScript, host objects - - - name: How WinRT types and members are represented in JavaScript - href: webview2/how-to/winrt-js-conversion.md - displayName: - - name: Using frames href: webview2/concepts/frames.md displayName: Using frames in WebView2 apps, iframe # full title @@ -1250,10 +1228,53 @@ href: webview2/how-to/print.md displayName: Printing from WebView2 apps # full title - # updated h2: Experimental APIs, added a 2nd, new h3: - - name: Understand the different WebView2 SDK versions + - name: Working with local content in WebView2 apps + href: webview2/concepts/working-with-local-content.md + displayName: + + # - name: Customize the UI # not needed? flatten + # items: + # - name: Customize the UI of WebView2 apps + # href: webview2/how-to/customize-ui.md + # displayName: context menu, right-click menu + + - name: Customize context menus + href: webview2/how-to/context-menus.md + displayName: right-click menu, Customize context menus in WebView2 # top-of-page title + +# ----------------------------------------------------------------------------- + - name: Web and native interop + items: + - name: Interop of native-side and web-side code + href: webview2/how-to/communicate-btwn-web-native.md + displayName: JavaScript interop, Embed web content into native applications (JavaScript interop) # old title + + - name: Call web-side code from native-side code + href: webview2/how-to/javascript.md + displayName: ExecuteScriptAsync API, Use JavaScript in WebView for extended scenarios # old title + + - name: Call native-side code from web-side code + href: webview2/how-to/hostobject.md + displayName: AddHostObjectToScript, host objects + + - name: Call native-side WinRT code from web-side code + href: webview2/how-to/winrt-from-js.md + displayName: AddHostObjectToScript, host objects + + - name: How WinRT types and members are represented in JavaScript + href: webview2/how-to/winrt-js-conversion.md + displayName: + +# ----------------------------------------------------------------------------- + - name: Distribution and SDK versions + items: + - name: Deployment and distribution # firstchild landing page + href: webview2/concepts/deployment-distribution.md + displayName: Manage WebView2 applications # old title + + - name: Prerelease and release SDKs for WebView2 href: webview2/concepts/versioning.md - displayName: Understand WebView2 SDK versions # old title + displayName: experimental APIs, Understand the different WebView2 SDK versions # old title # update needed? - name: Test upcoming APIs and features @@ -1264,13 +1285,37 @@ href: webview2/concepts/distribution.md displayName: - - name: Working with local content in WebView2 apps - href: webview2/concepts/working-with-local-content.md - displayName: + - name: Enterprise management of WebView2 Runtimes + href: webview2/concepts/enterprise.md + displayName: Manage WebView2 applications # old title + + - name: Distribute an app as a single executable file + href: webview2/how-to/static.md + displayName: Statically link the WebView2 loader library, single-file app # old title + + - name: Publish a UWP WebView2 app to the Microsoft Store + href: webview2/how-to/publish-uwp-app-store.md + displayName: Partner Center, Microsoft Store # ----------------------------------------------------------------------------- - - name: Debug WebView2 apps - items: + - name: Testing and best practices + items: + - name: Development best practices + href: webview2/concepts/developer-guide.md + displayName: Development best practices for WebView2 apps # top-of-page title + + - name: Develop secure WebView2 apps + href: webview2/concepts/security.md + displayName: + + - name: Use the Chrome DevTools Protocol + href: webview2/how-to/chromium-devtools-protocol.md + displayName: Use the Chrome DevTools Protocol in WebView2 # old title + + - name: Automate and test with Microsoft Edge WebDriver + href: webview2/how-to/webdriver.md + displayName: Automate and test WebView2 apps with Microsoft Edge WebDriver # top-of-page title + - name: Debug WebView2 apps href: webview2/how-to/debug.md displayName: @@ -1319,53 +1364,6 @@ displayName: # ----------------------------------------------------------------------------- - - name: Advanced Topics and Best Practices - items: - - name: Development best practices - href: webview2/concepts/developer-guide.md - displayName: Development best practices for WebView2 apps # top-of-page title - - - name: Develop secure WebView2 apps - href: webview2/concepts/security.md - displayName: - - # - name: Customize the UI # not needed? flatten - # items: - # - name: Customize the UI of WebView2 apps - # href: webview2/how-to/customize-ui.md - # displayName: context menu, right-click menu - - - name: Customize context menus - href: webview2/how-to/context-menus.md - displayName: right-click menu, Customize context menus in WebView2 # top-of-page title - - - name: Use the Chrome DevTools Protocol - href: webview2/how-to/chromium-devtools-protocol.md - displayName: Use the Chrome DevTools Protocol in WebView2 # old title - - - name: Automate and test with Microsoft Edge WebDriver - href: webview2/how-to/webdriver.md - displayName: Automate and test WebView2 apps with Microsoft Edge WebDriver # top-of-page title - -# ----------------------------------------------------------------------------- - - name: Deployment and distribution - items: - - name: Deployment and distribution # new firstchild page - href: webview2/concepts/deployment-distribution.md - displayName: Manage WebView2 applications # old title - - - name: Enterprise management of WebView2 Runtimes - href: webview2/concepts/enterprise.md - displayName: Manage WebView2 applications # old title - - - name: Distribute an app as a single executable file - href: webview2/how-to/static.md - displayName: Statically link the WebView2 loader library, single-file app # old title - - - name: Publish a UWP WebView2 app to the Microsoft Store - href: webview2/how-to/publish-uwp-app-store.md - displayName: Partner Center, Microsoft Store - - name: Release Notes for the WebView2 SDK href: webview2/release-notes.md displayName: what's new, announcements diff --git a/microsoft-edge/webview2/concepts/distribution.md b/microsoft-edge/webview2/concepts/distribution.md index 64a632f9b6..af7edcc403 100644 --- a/microsoft-edge/webview2/concepts/distribution.md +++ b/microsoft-edge/webview2/concepts/distribution.md @@ -85,11 +85,15 @@ When distributing your WebView2 app, make sure that the WebView2 Runtime is pres If you want to use the Fixed Version distribution mode, you can skip the next couple of sections and jump ahead to [Details about the Fixed Version runtime distribution mode](#details-about-the-fixed-version-runtime-distribution-mode). -### Servicing the WebView2 Runtime through Windows Server Update Services (WSUS) + + +#### Servicing the WebView2 Runtime through Windows Server Update Services (WSUS) See [Windows Server Update Services (WSUS)](enterprise.md#windows-server-update-services-wsus) in _Enterprise management of WebView2 Runtimes_. -### Runtime or browser support during development or production + + +#### Runtime or browser support during development or production During development and testing, a WebView2 app can use either option as the backing web platform: @@ -99,7 +103,7 @@ During development and testing, a WebView2 app can use either option as the back A production release of a WebView2 app can only use the WebView2 Runtime as the backing web platform, not Microsoft Edge. -#### Microsoft Edge Stable channel isn't supported for WebView2 +###### Microsoft Edge Stable channel isn't supported for WebView2 WebView2 apps aren't permitted to use the Stable channel of Microsoft Edge as the backing web platform. This restriction prevents a production release of a WebView2 app from taking a dependency on the browser. A WebView2 app cannot take a dependency on the browser during production, for the following reasons: @@ -130,7 +134,8 @@ When you use the Evergreen distribution mode of the WebView2 Runtime, your WebVi See [Understanding browser versions and WebView2](versioning.md). -### Deploying the Evergreen WebView2 Runtime + +#### Deploying the Evergreen WebView2 Runtime Only one installation of the Evergreen WebView2 Runtime is needed for all Evergreen apps on the device. Several tools are available at [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section) to help you deploy the Evergreen Runtime. @@ -143,7 +148,8 @@ Only one installation of the Evergreen WebView2 Runtime is needed for all Evergr * For offline clients: _WebView2 Runtime Standalone Installer_ is a full installer that installs the Evergreen WebView2 Runtime in offline environments. -### Installing the Runtime as per-machine or per-user + +#### Installing the Runtime as per-machine or per-user The latest bootstrapper and standalone installer support both _per-machine_ and _per-user_ installs of the WebView2 Runtime. @@ -152,7 +158,7 @@ If you run the installer from an elevated process or command prompt, the Runtime Use the following online deployment workflow or offline deployment workflow to ensure that the Runtime is already installed before your app launches. You can adjust your workflow depending on your scenario. Sample code is available in the [Samples repo](https://github.com/MicrosoftEdge/WebView2Samples#webview2-deployment). -#### Detect if a suitable WebView2 Runtime is already installed +###### Detect if a suitable WebView2 Runtime is already installed To verify that a WebView2 Runtime is installed, use one of the following approaches: @@ -178,7 +184,7 @@ To verify that a WebView2 Runtime is installed, use one of the following approac * Approach 2: Run [GetAvailableCoreWebView2BrowserVersionString](/microsoft-edge/webview2/reference/win32/webview2-idl#getavailablecorewebview2browserversionstring) and evaluate whether the `versionInfo` is `nullptr`. `nullptr` indicates that the WebView2 Runtime isn't installed. This API returns version information for the WebView2 Runtime or for any installed preview channels of Microsoft Edge (Beta, Dev, or Canary). -#### Online-only deployment +###### Online-only deployment If you have an online-only deployment scenario where users are assumed to have internet access, use the following workflow. @@ -208,7 +214,7 @@ The above workflow has several benefits: Alternatively, instead of programmatically downloading the bootstrapper on-demand by getting a link, as shown above, you can package the Evergreen Bootstrapper for the WebView2 Runtime with your app. -#### Offline deployment +###### Offline deployment If you have an offline deployment scenario, where app deployment has to work entirely offline, use the following workflow. @@ -228,18 +234,22 @@ If you have an offline deployment scenario, where app deployment has to work ent MicrosoftEdgeWebView2RuntimeInstaller{X64/X86/ARM64}.exe /silent /install ``` -### Test your app for forward-compatibility + + +#### Test your app for forward-compatibility The Web is constantly evolving. In the Evergreen distribution mode, the WebView2 Runtime is automatically kept up to date on the client to provide the latest features and security fixes. If you use Evergreen distribution, to ensure that your WebView2 app stays compatible with the web, you should set up testing infrastructure. -Microsoft Edge preview channels (Beta, Dev, and Canary) provide a sneak peek into what is coming next in the WebView2 Runtime. Test your WebView2 app regularly against a Microsoft Edge preview channel, and update your app or [report issues](https://github.com/MicrosoftEdge/WebViewFeedback) if issues arise. Canary is the recommended preview channel, because it ships at the fastest cadence and has the newest APIs. +Microsoft Edge preview channels (Beta, Dev, and Canary) provide a sneak peek into what is coming next in the WebView2 Runtime. Test your WebView2 app regularly against a Microsoft Edge preview channel, and update your app or [report issues](https://github.com/MicrosoftEdge/WebViewFeedback) if issues arise. See [Test upcoming APIs and features](../how-to/set-preview-channel.md). + Canary is the recommended preview channel, because it ships at the fastest cadence and has the newest APIs. To help you decide which channel is right, see [Overview of the Microsoft Edge channels](/deployedge/microsoft-edge-channels). You can [Download Microsoft Edge Insider Channels](https://www.microsoftedgeinsider.com/download) on your test environment, and use `regkey` or environment variables to indicate the channel preference for your testing app. See [CreateCoreWebView2EnvironmentWithOptions](/microsoft-edge/webview2/reference/win32/webview2-idl#createcorewebview2environmentwithoptions). You can also use WebDriver to automate WebView2 testing, as described in [Automate, and test WebView2 with Microsoft Edge WebDriver](../how-to/webdriver.md). -### Feature-detect when using recent APIs + +#### Feature-detect when using recent APIs @@ -309,7 +319,9 @@ To use the Fixed Version distribution mode: Verify that the `bin\**designated architecture**\Release` folder has a matching FixedRuntime\\(version number) folder with the runtime files in it. -### Known issues for Fixed Version + + +#### Known issues for Fixed Version * Currently, Fixed Version cannot be run from a network location or UNC path. diff --git a/microsoft-edge/webview2/concepts/versioning.md b/microsoft-edge/webview2/concepts/versioning.md index 6e828c8826..917ac3f09c 100644 --- a/microsoft-edge/webview2/concepts/versioning.md +++ b/microsoft-edge/webview2/concepts/versioning.md @@ -1,6 +1,6 @@ --- -title: Understand the different WebView2 SDK versions -description: Understand the different WebView2 SDK versions, and version models used for Microsoft Edge WebView2. +title: Prerelease and release SDKs for WebView2 +description: Prerelease SDK, release SDK, using experimental APIs, and version models used for Microsoft Edge WebView2. author: MSEdgeTeam ms.author: msedgedevrel ms.topic: conceptual @@ -8,7 +8,7 @@ ms.prod: microsoft-edge ms.technology: webview ms.date: 08/03/2021 --- -# Understand the different WebView2 SDK versions +# Prerelease and release SDKs for WebView2 The NuGet package for the WebView2 SDK contains both a release and prerelease package. Either use a prerelease SDK with a preview channel of Microsoft Edge, or use a release SDK with the WebView2 Runtime. @@ -90,7 +90,8 @@ For full support for the latest APIs in a release version of the SDK, the Runtim To try out new forthcoming features that are in development, use experimental APIs. Experimental APIs are contained in prerelease versions of the WebView2 SDK, but not in release versions of the WebView2 SDK. -### Developing with experimental APIs and providing feedback + +#### Developing with experimental APIs and providing feedback The experimental APIs in a WebView2 SDK _prerelease_ package aren't guaranteed to be forward-compatible and might be removed in future Runtime updates. When a _prerelease_ version of the WebView2 SDK is initially made available, that SDK only works with Microsoft Edge Canary. Soon after that, the prerelease SDK also works with the Beta and Dev channels. Use a prerelease SDK to try out new APIs early and provide feedback before the new APIs are promoted to become stable, forward-compatible APIs. @@ -101,7 +102,8 @@ The WebView2 team is seeking feedback on experimental WebView2 APIs that might b To help you evaluate the experimental APIs and share your feedback, use the [WebView2Feedback](https://github.com/MicrosoftEdge/WebViewFeedback) repo. -### Moving from experimental APIs to stable APIs + +#### Moving from experimental APIs to stable APIs Once an API has been moved from experimental to stable APIs, you need to move your app's code to the stable API. Using experimental APIs is not recommended for production apps. Follow these practices when moving your app from using experimental APIs to using stable APIs: diff --git a/microsoft-edge/webview2/how-to/set-preview-channel.md b/microsoft-edge/webview2/how-to/set-preview-channel.md index 11ed7df2e7..05a0793933 100644 --- a/microsoft-edge/webview2/how-to/set-preview-channel.md +++ b/microsoft-edge/webview2/how-to/set-preview-channel.md @@ -27,7 +27,7 @@ The prerelease SDK works together with a preview channel as follows: * The preview channels of Microsoft Edge contain the Microsoft Edge binaries that are needed to run and render your app, including the implementation of the experimental APIs. -For more information about how SDK versions works in conjunction with the WebView2 Runtime or preview channels of Microsoft Edge, see [Understand the different WebView2 SDK versions](../concepts/versioning.md). +For more information about how SDK versions works in conjunction with the WebView2 Runtime or preview channels of Microsoft Edge, see [Prerelease and release SDKs for WebView2](../concepts/versioning.md). diff --git a/microsoft-edge/webview2/index.md b/microsoft-edge/webview2/index.md index c2556cb179..da5ee6ac8a 100644 --- a/microsoft-edge/webview2/index.md +++ b/microsoft-edge/webview2/index.md @@ -104,7 +104,7 @@ The WebView2 control, SDK, and Runtime have the following roles: See also: * [Understanding the options at the Runtime download page](./concepts/distribution.md#understanding-the-options-at-the-runtime-download-page) in _Distribute your app and the WebView2 Runtime_. -* [Understand the different WebView2 SDK versions](./concepts/versioning.md) +* [Prerelease and release SDKs for WebView2](./concepts/versioning.md) * [Distribute your app and the WebView2 Runtime](./concepts/distribution.md) From 176e5b3104021a6c4c939f1469147b952ced4e2c Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Wed, 8 Mar 2023 18:13:56 -0800 Subject: [PATCH 05/31] Draft diagrams --- microsoft-edge/webview2/code-samples-links.md | 5 +- .../webview2/concepts/basic-authentication.md | 3 +- .../webview2/concepts/browser-features.md | 24 +- .../webview2/concepts/distribution.md | 6 + .../webview2/concepts/enterprise.md | 16 +- .../webview2/concepts/threading-model.md | 4 +- .../webview2/concepts/user-data-folder.md | 8 +- .../concepts/win32-api-conventions.md | 4 +- .../webview2/index-images/app-design.png | Bin 0 -> 30006 bytes .../index-images/control-runtime-sdk.png | Bin 0 -> 28012 bytes .../index-images/control-sdk-runtime.png | Bin 0 -> 22589 bytes .../index-images/dev-side-user-side.png | Bin 0 -> 22281 bytes .../index-images/distribute-runtime.png | Bin 0 -> 13461 bytes .../webview2/index-images/full-diagram.png | Bin 0 -> 34071 bytes .../hostapp-wv2ctrl-httpserver.png | Bin 0 -> 11770 bytes .../webview2/index-images/resources.png | Bin 0 -> 11173 bytes .../wv2-control-sdk-runtime-diagram.png | Bin 11573 -> 0 bytes microsoft-edge/webview2/index.md | 220 +++++++++++++++--- 18 files changed, 246 insertions(+), 44 deletions(-) create mode 100644 microsoft-edge/webview2/index-images/app-design.png create mode 100644 microsoft-edge/webview2/index-images/control-runtime-sdk.png create mode 100644 microsoft-edge/webview2/index-images/control-sdk-runtime.png create mode 100644 microsoft-edge/webview2/index-images/dev-side-user-side.png create mode 100644 microsoft-edge/webview2/index-images/distribute-runtime.png create mode 100644 microsoft-edge/webview2/index-images/full-diagram.png create mode 100644 microsoft-edge/webview2/index-images/hostapp-wv2ctrl-httpserver.png create mode 100644 microsoft-edge/webview2/index-images/resources.png delete mode 100644 microsoft-edge/webview2/index-images/wv2-control-sdk-runtime-diagram.png diff --git a/microsoft-edge/webview2/code-samples-links.md b/microsoft-edge/webview2/code-samples-links.md index d044325bd9..308f1198ff 100644 --- a/microsoft-edge/webview2/code-samples-links.md +++ b/microsoft-edge/webview2/code-samples-links.md @@ -8,7 +8,10 @@ ms.prod: microsoft-edge ms.technology: webview ms.date: 08/29/2022 --- -# Sample apps +# WebView2 Sample apps + +This page is specifically about the code-rich platform sample apps within the Samples repo. For the finished Getting Started article projects (minimal code) which are also at the Samples repo, see [Getting Started tutorials](https://learn.microsoft.com/en-us/microsoft-edge/webview2/get-started/get-started). + Sample apps that use WebView2 are available in the [WebView2Samples repo](https://github.com/MicrosoftEdge/WebView2Samples/tree/main/SampleApps), for various frameworks or platforms. diff --git a/microsoft-edge/webview2/concepts/basic-authentication.md b/microsoft-edge/webview2/concepts/basic-authentication.md index 0cf4a607d3..da5cc1378a 100644 --- a/microsoft-edge/webview2/concepts/basic-authentication.md +++ b/microsoft-edge/webview2/concepts/basic-authentication.md @@ -394,7 +394,8 @@ As a part of navigation, the WebView2 control renders the corresponding page (th For more information, see [Navigation events for WebView2 apps](navigation-events.md). -### Navigations for basic authentication + +#### Navigations for basic authentication There are two kinds of navigations in the flow: * A "server requested authentication" navigation. diff --git a/microsoft-edge/webview2/concepts/browser-features.md b/microsoft-edge/webview2/concepts/browser-features.md index 7eb39cd871..064c4aeeef 100644 --- a/microsoft-edge/webview2/concepts/browser-features.md +++ b/microsoft-edge/webview2/concepts/browser-features.md @@ -109,20 +109,24 @@ The following Microsoft Edge and Google Chrome settings webpages aren't availabl Google has disabled Google Authentication in embedded webviews, which includes WebView2, due to a security policy they have set. See [Upcoming security changes to Google's OAuth 2.0 authorization endpoint in embedded webviews](https://developers.googleblog.com/2021/06/upcoming-security-changes-to-googles-oauth-2.0-authorization-endpoint.html). To stay up-to-date on the latest discussion, in the WebView2Feedback repo, see [Google Auth Flows and WebView2](https://github.com/MicrosoftEdge/WebView2Feedback/issues/1647). + + ## Additional keyboard shortcuts information Keyboard shortcuts or key bindings are supported in Microsoft Edge and WebView2. -### Preventing shortcuts from changing during update + +#### Preventing shortcuts from changing during update When Microsoft Edge is updated, the default key bindings might change. Furthermore, a keyboard shortcut that is turned off by default might instead be turned on, if the feature is now supported in WebView2. To avoid such changes to your keyboard shortcuts, you can set `AreBrowserAcceleratorKeysEnabled` to `FALSE`, which turns off all keys that access browser features, but keeps all basic text-editing and movement shortcuts turned on. -### Shortcuts that are turned off + +#### Shortcuts that are turned off The following shortcuts are always turned off in WebView2, or are effectively turned off. An asterisk (`*`) indicates that the shortcut isn't turned off, but the feature that it accesses is turned off, or the feature doesn't apply to WebView2. @@ -169,7 +173,8 @@ The following shortcuts are always turned off in WebView2, or are effectively tu | Show Collections `*` | `Ctrl`+`Shift`+`Y` | -### Shortcuts turned off except when event not handled + +#### Shortcuts turned off except when event not handled The following keyboard shortcuts are always turned off, except in windows that display when the `NewWindowRequested` event isn't handled: @@ -180,7 +185,8 @@ The following keyboard shortcuts are always turned off, except in windows that d | Fullscreen | `F11` | -### Shortcuts turned off if AcceleratorEnabled is False + +#### Shortcuts turned off if AcceleratorEnabled is False If you set `AreBrowserAcceleratorKeysEnabled` to `FALSE`, the following additional keyboard shortcuts are turned off: @@ -206,6 +212,14 @@ If you set `AreBrowserAcceleratorKeysEnabled` to `FALSE`, the following addition | Open DevTools Inspect | `Ctrl`+`Shift`+`C` | -### Customizing an individual key + +#### Customizing an individual key To customize any of the keys individually, use the [AcceleratorKeyPressed](/dotnet/api/microsoft.web.webview2.core.corewebview2controller.acceleratorkeypressed?view=webview2-dotnet-1.0.774.44&preserve-view=true) event. + + + +## See also + +* [List of Chromium Command Line Switches](https://peter.sh/experiments/chromium-command-line-switches) +* [AcceleratorKeyPressed](/dotnet/api/microsoft.web.webview2.core.corewebview2controller.acceleratorkeypressed?view=webview2-dotnet-1.0.774.44&preserve-view=true) event diff --git a/microsoft-edge/webview2/concepts/distribution.md b/microsoft-edge/webview2/concepts/distribution.md index af7edcc403..ec8223e851 100644 --- a/microsoft-edge/webview2/concepts/distribution.md +++ b/microsoft-edge/webview2/concepts/distribution.md @@ -379,3 +379,9 @@ Example managed app folder structure: \win-x64\native\WebView2Loader.dll (x64) \win-x86\native\WebView2Loader.dll (x86) ``` + + + +## See also + +* [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section) - a section of the **Microsoft Edge WebView2** page, which links to the present article. diff --git a/microsoft-edge/webview2/concepts/enterprise.md b/microsoft-edge/webview2/concepts/enterprise.md index 22233771b9..b2c8d073cf 100644 --- a/microsoft-edge/webview2/concepts/enterprise.md +++ b/microsoft-edge/webview2/concepts/enterprise.md @@ -21,7 +21,9 @@ Feedback from IT admins and developers is welcome, through the [WebView2 Feedbac IT admins can use group policy objects (GPO) to configure policy settings for WebView2. The following policies are relevant to WebView2. -### Update policies + + +#### Update policies [Microsoft Edge - Update policies](/deployedge/microsoft-edge-update-policies) are available for IT admins to manage the installing and updating aspects of the WebView2 Runtime. The Microsoft Edge browser and WebView2 Runtime are updated using the same update mechanism. Unless a policy, such as `Update`, is channel-specific, it applies to both the browser and WebView2 Runtime. @@ -29,13 +31,17 @@ For example, `UpdateSuppressed` allows IT admins to set the time during each day IT admins can follow [Microsoft Edge's guide](/deployedge/configure-microsoft-edge) to configure Microsoft Edge - Update policies. -### Browser policies + + +#### Browser policies [Microsoft Edge - Browser policies](/deployedge/microsoft-edge-policies) doesn't apply to WebView2 applications. This is by design, because apps and browsers have different use cases, and IT admins might not be aware of what applications use WebView2. Applying browser policies on WebView2 would have unintended consequences. For example, IT admins can block JavaScript in the browser, and that would break WebView2 apps that use JavaScript. To prevent that, browser policies are separate from WebView2 policies. -### WebView2-specific policies + + +#### WebView2-specific policies [WebView2-specific policies](/deployedge/microsoft-edge-webview-policies) are available to for you to manage WebView2 directly. However, we recommend that WebView2 app developers implement their own group policies to manage the use of WebView2, because it's easier for administrators to manage the app instead of managing WebView2 directly. @@ -48,7 +54,9 @@ Applying browser policies on WebView2 would have unintended consequences. For e > [!NOTE] > The recommended way of receiving WebView2 updates is by using the default Microsoft Edge updater. Any modification of update and servicing paths should be done with caution. -### WebView2 Deployment and Update using WSUS + + +#### WebView2 Deployment and Update using WSUS WebView2 options in Configuration Manager exist under the Microsoft Edge Management node. For more information, visit [Update Microsoft Edge](/mem/configmgr/apps/deploy-use/deploy-edge). diff --git a/microsoft-edge/webview2/concepts/threading-model.md b/microsoft-edge/webview2/concepts/threading-model.md index e94a8f5b1f..cfefd1ec15 100644 --- a/microsoft-edge/webview2/concepts/threading-model.md +++ b/microsoft-edge/webview2/concepts/threading-model.md @@ -84,7 +84,9 @@ Some WebView2 events read values that are set on the related event arguments, or For instance, you can use the `NewWindowRequested` event to provide a `CoreWebView2` to connect as a child window when the event handler completes. But if you need to asynchronously create the `CoreWebView2`, you should call the `GetDeferral` method on the `NewWindowRequestedEventArgs`. After you've asynchronously created the `CoreWebView2` and set the `NewWindow` property on the `NewWindowRequestedEventArgs`, call `Complete` on the `Deferral` object that's returned by the `GetDeferral` method. -### Deferrals in C# + + +#### Deferrals in C# When using a `Deferral` in C#, the best practice is to use it with a `using` block. The `using` block ensures that the `Deferral` is completed even if an exception is thrown in the middle of the `using` block. If instead, you have code to explicitly call `Complete`, but an exception is thrown before your `Complete` call occurs, then the deferral isn't completed until some time later, when the garbage collector eventually collects and disposes of the deferral. In the interim, the WebView2 waits for the app code to handle the event. diff --git a/microsoft-edge/webview2/concepts/user-data-folder.md b/microsoft-edge/webview2/concepts/user-data-folder.md index 4a3a797972..c3b925afa4 100644 --- a/microsoft-edge/webview2/concepts/user-data-folder.md +++ b/microsoft-edge/webview2/concepts/user-data-folder.md @@ -28,6 +28,8 @@ WebView2 creates the UDF in the default location for the platform, or in the cus By default, WebView2 creates a UDF in the default location for the particular platform. This works well on some platforms, but not others. If your app has specific needs, you can specify a custom UDF location. + + #### Suitable custom UDF locations If you specify a custom UDF location, it should meet the following requirements: @@ -642,14 +644,16 @@ Your host app or the uninstaller can delete the user data folder (UDF). You mig * If you want to change the UDF location. If you change the UDF location, the previous UDF will not be automatically cleaned up. -### End the WebView2 session before deleting the UDF + +#### End the WebView2 session before deleting the UDF To delete a user data folder (UDF), you must first end the WebView2 session. You cannot delete a UDF if the WebView2 session is currently active. -### Wait for browser processes to exit before deleting the UDF + +#### Wait for browser processes to exit before deleting the UDF If files are still in use after your WebView2 host app closes, wait for browser processes to exit before deleting the user data folder (UDF). diff --git a/microsoft-edge/webview2/concepts/win32-api-conventions.md b/microsoft-edge/webview2/concepts/win32-api-conventions.md index dd882697fd..bb504dee4b 100644 --- a/microsoft-edge/webview2/concepts/win32-api-conventions.md +++ b/microsoft-edge/webview2/concepts/win32-api-conventions.md @@ -77,7 +77,9 @@ void ScriptComponent::InjectScript() Events in the WebView2 Win32 C++ API use the `add_EventName` and `remove_EventName` method pair to subscribe and unsubscribe from events. The `add_EventName` method takes an event handler delegate interface and gives back an `EventRegistrationToken` token as an output parameter. The `remove_EventName` method takes an `EventRegistrationToken` token and unsubscribes the corresponding event subscription. -### Event handler delegate interfaces + + +#### Event handler delegate interfaces Event handler delegate interfaces work similarly to the async method completed handler delegate interfaces. You implement the event handler delegate interface and `CoreWebView2` sends a callback whenever the event runs. diff --git a/microsoft-edge/webview2/index-images/app-design.png b/microsoft-edge/webview2/index-images/app-design.png new file mode 100644 index 0000000000000000000000000000000000000000..1b10ee5808bb0019b9dd0aa3f504917710a99ba4 GIT binary patch literal 30006 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 literal 0 HcmV?d00001 diff --git a/microsoft-edge/webview2/index-images/control-runtime-sdk.png b/microsoft-edge/webview2/index-images/control-runtime-sdk.png new file mode 100644 index 0000000000000000000000000000000000000000..b4c6dd8dbbbd9015904f4c8b2831e25fbd8fba38 GIT binary patch literal 28012 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‰Hf~oFki}D3C2?^d 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 bO8P(l!)=E+pLW>I2Z?#Q`njxgN@xNA&Et!b literal 0 HcmV?d00001 diff --git a/microsoft-edge/webview2/index-images/dev-side-user-side.png b/microsoft-edge/webview2/index-images/dev-side-user-side.png new file mode 100644 index 0000000000000000000000000000000000000000..825f77ab1c802c27313942d5b13f1fff8fc9b557 GIT binary patch literal 22281 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 I&eNCw2A)Wfo&W#< literal 0 HcmV?d00001 diff --git a/microsoft-edge/webview2/index-images/full-diagram.png b/microsoft-edge/webview2/index-images/full-diagram.png new file mode 100644 index 0000000000000000000000000000000000000000..65e0eea573163246797f13e01d17865d9206db65 GIT binary patch literal 34071 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 KsdTk#fBY9W=`;@j literal 0 HcmV?d00001 diff --git a/microsoft-edge/webview2/index-images/hostapp-wv2ctrl-httpserver.png b/microsoft-edge/webview2/index-images/hostapp-wv2ctrl-httpserver.png new file mode 100644 index 0000000000000000000000000000000000000000..8e6b4d1bf204d7a5703fb4c992e9f6cc57918f02 GIT binary patch literal 11770 zcmeHtd05iv*Ei)%&Zr|!TH53?t!AmD=8jUf*y56zyJ>2;q_|{?3rJ04l$O?LF1e6e zTH%uBj!LtAGklK}t#zg#$f<_Z8HwF&@i^ZaSMfcOE_?}3J951y{6$~sslmdb{W*J<#kP1u>wvclS6#Tx z++GTOZrgC#Tk=o|cF|>HG2fhy7f|9MLN*x#0Nhzm_%?-p)h=d+T`CY0y+!K_Ls+pi z0FbUc)EvcsH6UIQi&j<=xVX(d0KjW)Ga*LAF4=S|kOth5E*g*me2{WvYy*6`tHlNY zRzE1k0RS=AWh?*y@bN@-06;y<3J3rIZN4ur{(rUnLtnz?8eycu8^xu`Q zh=mb1X-i#wH6X=JE@u&v>%wTF;yC-JuXvnmhHMu}C2X?EEhF~135KPU!i{r_nlh34 zQH%Y-qHy2_bsj0=&0#sLH%DC=^e=Pih@wsHbBU7?J7lgf?ou{4Dp0UI|B(@IRI^;( zAkiC z1|$q$`uq^)_N<1yk~UlN%%$4{0YTZkPyXtpKh7nJ_M{qoh;(4w-HQ-zjEvoyY(e5m z`InXQcqpe6CG5Q*HtC4>bE_2-K&n-NbU%NMpz(fMB8Ef{9OJ^42vy%Yr zI}74O!=hiC7y5FHv9u;{VW%C7!=#Ma-H zNngE$2ZlnyCxJ+?;`f0wc9&+7sBW_O$t+Y?5eXd|A1+<$ad=xb5mJLM9dqAs27?KI z4$2D(qiF}*s=yh)gt&m|`mf3O*MZqEXJH8ZadG-0W-aEvD7*t0aq%n3$HT{3F|dLW zb3ZoS_b=w29M|_uwsD`%qsbSXr!V>pYKp40y(ieZ8mdoXOnI#3t8Ht}UyLsmNZSQ@ zyG~v`T=?P!E=hb2={D@u@-n0>cmsN4IFIw%b#tb0*Bg=IS#T}JRrkIM{?WH^^uFDG zClmHQms-xh;hI4xtee3yumQ)C9e&7kQr2U7(loxtT-WZrkuh_3FrA-?F=$Zj7o-Lp z%fo`cQIg$lYcMAtbi`amZMqorq6zP-!}=&d*gCVJMX(AAnJ}wUNn51HvhLX~HK}DQ zC7YVmlo8iEY*%hA``kXc-qAU%I+47M_k^=Y?stj*YdM%y*_878Dvy})Ubiq_4!`p4 zty(DDRm?bnwXV7U8D8_`n6+ZCxg63vEMLDH8XICbbQo`%!l~8vKI1^7o-6Zo&NF)c z>AeOC?1_79V7!4*XdR-Xj<>m{<+LtTGO=7JZ+f_)CRGMI2OBaiO*x&ztU^SPaR|go z_kr4+b>oz1Z?)CEB?D3=)w`<}jHL^o&7Lka(ZyP(s~uwtYb*v&HG3gR&%cY|iFA0L zZ_*9rMVHxth{|Qwq22!d31(Ko` zC&tyM?=}>VbXKIa4P}xkYKSNxb48>}RAvrQ*L;BAzHZsQEKy?hyPPM~KXyf%lOw3z zwpi1p@{knxXsspvApGpUWb5XJO?%h2<*-M8uHf)qd)lILv*m;7DJ9Qy_?f$-U5ab# zzI8nXy&Orn_X@SN_CxE(JNImv$e^%^vdCaMoW`eeEmUo^a$_@7xeC#cpc_PQVUNN| zNlJ5c?=}%@id>S3YS&DSH|T$BO7Lh?OY@vJ=MU?@Rx~W%^-%%BMVTDefBtFhYNVt1 zQ|ofiXHIl!Mc04S<-W2Q+1g4lW&{)Kg}6oOJ^#dm^S+!lzBV4JC%)H8&h3*2SavV;CSK1yEa!^1iH`TmUNh+=qS*R zI>P-yZ16cpv;3Q(?o0$6dNV#b^Id7mNQAXPpeaY0wZAN}y9jexp?jzVM62 z%|vO?+aL|#et4ydU`ctKvt;j5PEEv#XV9Sn?2lMsb6diP@3u~=1m*rMZ7!bfDz)jmlJ2&w)NE)YMdxY4YkS{v!Q$98@!HGlzhX(@lF z9k#>U!g=dhn7jGmMR@O8oQ)&7IOm8IO{0riC6SDUinkC^z3M$3;0qm1V0j1u8zI8jak%DHL+(GKRh8c zD5|&U>D)VQwjNqFlQFuOCH0Pzxp_xcE) z2wdCejLRJN$bk!X*^N?gTxI0GfnYg(8V$lRDH`g0X;z|V(qxM9Y6x3w!O$b z!mjYfi|Dg7eZ zh8IR>9|`}}xbKiUNIQSgZ#Q4euMj6$X&3-nbBx21#Jo`r(JC4xs6%-a%i1UnCIfUG zw6%_&z0HR(cmFPx2nJu_66w4-rl3^%MYx8k3QRDtbong*-nfC zg+z6gHyF!A^*93q?7-=LG8V_LK#(#PY=3{}0<@J<-1V0Ue5E)>UvH@uFj3-!=Y?!7 z_CU_R8~X^Qr2WFPRtny zZX+ev!nZET5|E<3eX##=PGl8%j-@O6;fy9Z6DC4yB$$|rPCEa|g5Q+fF7~7^v68## zmOhgC+nQ&hWrE4rJjD^!`hU?bxyPrfP19P2XX$eW^wgT9@OA&PfzvDVd%*Sun6D&d zV(W)&J;Zqb%L@ESuwMZ%zziu~BIzDj9l?vD+$Pifwg3_|mXxh0E&4`)h^P{9XKP8V z3O{09`w;pgf;DTa>#QIxW>V@RerUzPS2AjH!xw`h(b)M#3ZmXj^tNSxZi6@EaslbM zuB;SR@9BhRWT)-DOwIZSa=O7Z^Ol2G#>fUS`BsqAKj?$l5hb3^u0J$1+#o^T^{q5coajKer{l$c!iU7tP4kd)%^oLzsdkq~rIq}Tp07SgW@^sv{ zp@%hDH^m(GkKy`kmNm>*H;^Lu&M-^WREVF`K*eO0#;XAu+%YAU)-d}hXGdL0pv%Lu zdWKW|uLm$x?q|+1YQm?F?_VzxfQF)Y@ZIAmdmrr^N)kwoPyp&{3 z)zr17{E-k&7gfs&hqLwivOnS!lP{f#4>4hRDm^uI-|dxU1!)UC;}Y7a3rfG7x*~V{oFH8=cw^vwvbB$?X^tzz^o_F>pUW^ z8#3!c&pFCOTyO*X#C+UGobI)6V0zf^9} z2tUS_?w7O7auu}rao5k=?kR*$C2Fw^z#}yWI_|J&8ESI<5}SQ;aw%yvoZFWgY>YIh z_^Fv{C;pVyy@SV_!+?l+OMR7E_@oY zObouo_%fw9RS2u4)f@G`quDNlxTwu8Ys5lkZQl~nff4Y)0CYNrTXVpUYaBLtBPej% zkIw)u7WLhjzp(a!lL!roLq5%!-u^Us>Ux~54Jf}3a{jh70=Nt~Q z?3(xre`z8@+%wDr{P+6lKg2oq96MPY^a^>xJ%cb_U=kT|KK5akbz+lc2<;8xuJGBx zb}2aU%R-NWGFDY%8d_eStqF<{TGH=SXP1^6%*~Bqj6gS@wWN;Dk~#9_|L7kfKQ|1G zU3wu^n%nUC<-M-zOFfKNGmh=~nKQ`&u?wn~hmXDoT`a&%nH0|dz95{()mR89koY~dp64C0#;Jc2w&&Oftve>7<6C)A(r zj7^#B3;0~JQdGyQZhZK+C+556mN!JXsR!CC)vCQ1!Az~SWy{h-Z;T%b6}(ROpr@@? zZ6fTOAH9A{TDs)O2#D#aIdJPQP2^@B9(Beb(1)S%DfBDyps!}-XwR8PK$wJtj0urf zd1%s+<{y{oMAbn#LDzTHT+hDZO$T{)9I>!Mml57IxR57iIsVql`5$>pLPd#EKm5Jw0wDOcRu&cvEb~ylLeT9vnTq$)z>j^ z8uyF7%2#TQSOYSgR%)o7Sx_ggtq*E({8?Lc#cv0&4Th$?^Rp6i$es+`fhT5Z1K0vszH*C5bjA`S1 zzB!(gaJ<;mpx!nlezF!#FvXXSN47|{2S4(Gd#bb<>Bl~lFRL-85I0zsQPAwMztdaw zgZx2jB)2FUWG@^jj2DIGwbi;jHm{CfkdQVz>&?>w#S$lMsi*J5WZBSqFMWs|n-|j| zBKoVj+IYV%539v?m<{Uf*Vy_-#cBm+{sJzxVFetb=e>(DdZC;)i5^$fA;SBNMoKMp z+Vk|C{SUaQJpuoPeTG|~ntFjc!Gx-#)=&gP9o41-%y$H>%F;N{$clRR0H?ux%6zr~ zX^gpcW(6WHFWKDdXCPC1=b zh)P`5L)Y2iguk}pKyhAxMtwsE@$gPID_p!7DJk@M(CWx~e00ER*sHR~^TD3?1Eb7? z_KjP>d}pE;sdGMdzl(6%-qmZwTLFSI@ZM+v(`9e1;Mz6yZqexSO>&Eweod+?&LC{L zzBrK%KWN;MC25Zg@^3eh%x7bp+5&!si7;XwMz)rxWXwkKOHk{-2)nXB!hCW2n+S#$ zxk~_2f{z>zYK_v7p=icEEYX$p?mky5p0MkI4t0ipu9!u^NlZJ{>9iQh(c|rt>$jORYDe1N&1|zb0eZ0cwx*;ZV@A-Hy0ug_mp*-r zo^eg81v5!+;msT7`{o~AYO*zyQ;b5=r;XY~hPBo@M2#L>;kOg+m=x|*IE&a#R~`9x`tyQ3UW%v#d|$qKlO^a*ZbWn`#ws?v^Ke z|5WHDWQ^Do($(b2azF(^r#*1z_LM$H-m(Y>w zVZTsfy^vkxv+P2$wVZ4;Kak~(SnI%x7V(zD#_S^UfokL1Iqccqtl8c#MwRvV+e!1^ zPOq0^xAb!b3)b&M2E@oS@c1r6=7N$J<4tfQJ2p|IxN{DgpB!;T7i%=mYmDESx{hd? zdvJSloP4u)xyKI{_Up)KEI8iX3H$jlUK{lq_81MqF2{9g7Qd=+F9|~d!}@2mmMwT* zgrMEYV;4Ox*}-fkU*EFHEo`W1pjXHC#AX=}4risxvN;cz&AVCVWyAPLVCqsfM__!n^vZ!|FH7RhUtlwlSNJUR8gi{0T==w3oH z5=$T?=UHKu6IRjwa2d+VD6XVy-COX@HxK)YQZW?eLNzcCa zHzdq{u$({bLJ~yRS^jh`MSdgE!%h9u0!W)P>~U+gmUU%XVV0v8V%K<1<<$W(>K=&C4z+?|mWC zfZ7=n%otLDsbSE(mqo01&t{LT!JOTe>uNtX_|+Cz1WjnMSm(sQ79w8xnE;YbSf&qTzd2M`R&@IPDZW*+_W%dL?lV3i;9I+e8PrA)->61>jkF{#UaHpqIoJ8+JMg#4)TCir6^wgxBK+E_9i;P>p>HTgVI2l+s zy@wUM63BYP^l@8mM~s&|H(J^>gmF(Ae(%+-%cNe`b7en1F1gDe)$nY3;rzmlk@{t#J9dY zLPy^Bn2U`<+t=CBte4o5>QIR<6|e)7JzB|9`?4%cuL2KvS#{pv?)_6aZsCvGY^14- zP%dD9oWcet7Jh6ydHh^Ye82<7xwjM@ozipVH?1G65o_<(*2PRF%)#yx>ytT2=UBAe z$>!?o5BI!Uc|k@An02w;^^~_&C6bzNeIKz^mKYZCiBU$1Kj)q|)hv3{^WIpSm}3AT zwYi#_0fB$yW<)5D9fsE^CP)Bu@mO(829!0U-cX7R8w($V4}8|WOqfop1Ya-3e<@|J z^fNx(XBz4}lE2zxOEI4LwiDh&x=jX?mR27|li>sNeo)J=p)>@m?{5MAo4UVGMEJ-N z*GIE2ab+!{46}>=gMHN5gV8HvkK@4a?9V5GLst4K{o@sr&aW&RS^fYzpxf_x%Go^C zt;4Xe`2%#|EapQ@)YDN(V32%7qGG7+)FaYEm_G_huxBT23eZ6zwNK;=@n zJj)#fKH@WS`j({lFEY|lmlR96Lj>cQ^sqRSZxfTbdl3G zer=v;K8WhS`l1h=omrAOfM#r(V(4=iG`Fwz59p_n@~c8wPv_=46JkgCFS)T^QBPW^ zcBtc`m#|ZiK-QFlj4q0}Dq;&l`KmQ|3DbA~>HqSe1E9be8>lWA~ zFGi{)YGPxz$4NMnXg+-{pj3t*kpq&RBpZ1#wxz7CQQ4&P&+BwwzF0bFwFo(s|I95k42aoedp)TayajAUMohZWNHVnW z!)@mMYmU`C$)}F$UJhyF*RA2+Ri*#w5#RsW0phJm5TVr;UV}(RuxEtJaJ+{yf0bEB u)1_H;mzxmvOqaN(@onR2V^fBYA$P8Hh# literal 0 HcmV?d00001 diff --git a/microsoft-edge/webview2/index-images/resources.png b/microsoft-edge/webview2/index-images/resources.png new file mode 100644 index 0000000000000000000000000000000000000000..cc0f88d62207615622ec2b589eb6b1641bf34069 GIT binary patch literal 11173 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 literal 0 HcmV?d00001 diff --git a/microsoft-edge/webview2/index-images/wv2-control-sdk-runtime-diagram.png b/microsoft-edge/webview2/index-images/wv2-control-sdk-runtime-diagram.png deleted file mode 100644 index dbe28d5cb65dca78a940f4e92b36c42364aba10b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11573 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 d=pI{qQU#TK#$V&K1RsE +## Full diagram of WebView2 + +Developing a WebView2 app has the following high-level areas: +* Dev machine +* Distribute the app and Runtime +* User machine +* Resources + +![Full diagram of WebView2](./index-images/full-diagram.png) + + + +## Abbreviated terminology for WebView2 components + +The WebView2 documentation uses the following shorthand terms. + +| Shorthand term | Complete term | +|---|---| +| _App_ | Any app, for any framework or platform, that includes an instance of the WebView2 control. An app can have areas that use a WebView2 control instance, and other areas that don't use the control. | +| _SDK_ | The WebView2 SDK. | +| _Control_ | An instance of the WebView2 control. In an app, typically appears as a rectangular area than contains web content. | +| _Runtime_ | The WebView2 Runtime, which is a browser engine. Installed on user machines, as well as Dev and test machines. | +| _Preview channel_ | A preview channel of Microsoft Edge, either Beta (near-stable), Dev, or Canary (the very latest build; daily). For Dev and test machines only, not user machines. | + + ## Hybrid app approach @@ -35,7 +61,7 @@ The following diagram shows the spectrum of apps, from maximum reach, to maximum * Wide **reach** includes websites and Progressive Web Apps. -* In the middle are hybrid apps, such as WebViews and Electron. +* In the middle are hybrid apps, such as WebViews and [Electron](https://en.wikipedia.org/wiki/Electron_(software_framework)). * Maximum **power** is native apps. @@ -67,63 +93,183 @@ Hybrid apps, in the middle of this spectrum, allow you to enjoy the best of both ## The WebView2 control, SDK, and Runtime -The WebView2 control, WebView2 SDK, and WebView2 Runtime are related as follows. +The WebView2 control, WebView2 SDK, and WebView2 Runtime have the following roles: + +| Component | Role | +|:---|:---| +| WebView2 SDK | Provides APIs for developers to use in an app's code. Used by Dev locally while coding the app. Two versions: Prerelease SDK for local Dev testing, and Release SDK for developing shippable code for users. | +| WebView2 control | You embed the WebView2 control in the app. Hosts the Runtime; serves as a visible area to display web content. | +| WebView2 Runtime | On Dev's test machine and on user machines. Or, instead of using the Runtime, Dev can use a preview channel of Microsoft Edge for local testing, when using the Prerelease SDK. | + + + +#### Relationship between the WebView2 control, SDK, and Runtime + +![Diagram: Relationship between the WebView2 control, SDK, and Runtime](./index-images/wv2-control-sdk-runtime.png) + +Control: +* WebView2 control - in the app layout; hosts the Runtime. + +SDK: +* WebView2 SDK - used by Dev while coding. Either: + * Prerelease SDK (Dev only; includes experimental APIs for Dev testing). + * Release SDK. + +Runtime: +* WebView2 Runtime - a browser for use as a component of an app; on user machines. Either: + * Preview channel of Microsoft Edge (Dev only) + * Runtime + -![Diagram: Relationship between the WebView2 control, SDK, and Runtime](./index-images/wv2-control-sdk-runtime-diagram.png) + +#### WebView2 control, Runtime, and SDK + +![WebView2 control, Runtime, and SDK](./index-images/control-runtime-sdk.png) + +This diagram has the following top-level items: +* Control +* Runtime +* SDK + + +* WebView2 control - eg. add as an XML element + +* WebView2 Runtime (a browser used as a component) - Required; runs the WebView2 control +* WebView2 Runtime - runs the WebView2 control +* Evergreen Runtime, or Fixed-version Runtime (a browser used as a component of an app) +* Evergreen Runtime, or Fixed-version Runtime -Boundary: Dev machine vs. user machine. +WebView2 SDK +* Supported platforms: .NET, WinRT, Win32 +* Preview channel of Microsoft Edge + +APIs +* Release SDK (to ship) +* Prerelease SDK with experimental APIs (to test locally) +* JavaScript API (to support communication between web-side code & the host application) + +You periodically download the latest SDK from NuGet. NuGet links are in [Release Notes for the WebView2 SDK](./release-notes). + +The SDK includes the JavaScript API? The JavaScript API is the [WebView2Script package](https://learn.microsoft.com/microsoft-edge/webview2/reference/javascript/). + + + +## Design architecture of a WebView2 app + +* Host app +* Native-side code calls platform APIs and WebVieww2 APIs +* WebView2 control instance +* Native-side code calls platform APIs and WebView2 APIs +* Web-side JavaScript code calls WebView2Script APIs & exposed native-side APIs + +![Design architecture of a WebView2 app](./index-images/wv2-app-design.png) + + + +## Development machine vs. user machine How the WebView2 SDK is laid out in relation to how the WebView2 RunTime is laid out. -Note any differences for Runtime & SDK across the frameworks/platforms/languages. +There are a few differences for the Runtime and for the SDK across the frameworks (platforms, languages); for example, for WinRT. + + + +## App on the Development machine and user machine + +Here are the differences between the Dev machine and User machine, for which components are used. + +![App on the Development machine and user machine](./index-images/dev-side-user-side.png) + +| Component | Dev machine | User machine | +|---|---|---| +| Runtime | A Preview channel of Microsoft Edge, or the Runtime that's part of the SDK. | Runtime (downloaded via bootstrapper, or packaged with app); Microsoft Edge isn't used. | +| Working environment | Visual Studio project that has the SDK package installed. Layout designer includes WebView control areas & native, non-WebView control areas. | The App (including WebView control areas, and native, non-WebView control areas). | +| Activity | Dev works with the APIs in code (experimental APIs or stable APIs). | User machine runs app. The WebView2 parts of the app (instances of the WebView2 control) use the Runtime to display webpage functionality. | +| User interface environment | Visual Studio (layout designer includes WebView control areas & native, non-WebView control areas). | The App (including WebView control areas, and native, non-WebView control areas). | +| SDK | Prerelease SDK (experimental APIs) or Release SDK (stable APIs). | No SDK; just the Runtime containing the executable stable APIs. | +| Control | Placed on layout designer in Visual Studio. | Areas (regions) of the app containing web content. | + + + +## Prerelease SDK and preview channel, or Release SDK and Runtime + +Here's the relation between: +* Prerelease version of wv2 SDK vs. Release version of wv2 SDK. +* Preview channel of Microsoft Edge vs. the WebView2 Runtime. -#### Roles of the control, SDK, and Runtime +#### For a prerelease version of your app -The WebView2 control, SDK, and Runtime have the following roles: +To develop the prerelease version of your app: +* On your Dev machine, in the Visual Studio project, install a **Prerelease** version of the `Microsoft.Web.WebView2` SDK NuGet package. Write code that uses the **experimental** APIs (and stable APIs). +* On your Dev machine, install and use a preview channel of Microsoft Edge. -| Component | Role | -|:---|:---| -| WebView2 SDK | text | -| WebView2 control | text | -| WebView2 Runtime | text | +To distribute your prerelease app to your test machine: +* On your test machine, install a preview channel of Microsoft Edge. -#### Prerelease SDK with preview browser channel, or Release SDK with Runtime +#### For a release version of your app -| Version | Renderer platform | Description | -|:---|:---|:---| -| Prerelease SDK | A preview channel of Microsoft Edge (Beta, Dev, or Canary) | For experimenting and testing your app against upcoming changes, on your Dev machines. | -| Release SDK | The WebView2 Runtime | For shipping your app to end users. | +To develop the release version of your app: +* On your Dev machine, in the Visual Studio project, install a **Release** version of the `Microsoft.Web.WebView2` SDK NuGet package. Write code that uses only the **stable** APIs. +* On your Dev machine, use the WebView2 Runtime (part of the SDK package). -* A Prerelease version of the WebView2 SDK uses a preview channel of Microsoft Edge (Beta, Dev, or Canary). -* A Release version of the WebView2 SDK uses the WebView2 Runtime. +To distribute your release app to users, do any of the following: +* Use one of several approaches to install the Runtime on the user's machine. See also: -* [Understanding the options at the Runtime download page](./concepts/distribution.md#understanding-the-options-at-the-runtime-download-page) in _Distribute your app and the WebView2 Runtime_. -* [Prerelease and release SDKs for WebView2](./concepts/versioning.md) -* [Distribute your app and the WebView2 Runtime](./concepts/distribution.md) +* [Understand the different WebView2 SDK versions](./concepts/versioning.md) - Either use a prerelease SDK with a preview channel of Microsoft Edge, or use a release SDK with the WebView2 Runtime. -## Setup for Dev machine +## Ways to distribute, install, and update the Runtime on the user's machine + +There are several ways to distribute the WebView2 Runtime with your app: + +![Diagram: Four approaches to distribute the WebView2 Runtime](./index-images/distribute-runtime.png) + +| Name of distribution approach | Description | Notes | +|---|---|---| +| Link to the Evergreen bootstrapper | In your app's installer, link to the Evergreen Runtime bootstrapper. Have your app's installer use this link to programmatically download and install the Evergreen bootstrapper onto the user's machine. Then invoke the bootstrapper to install the appropriate Runtime for the user's device. | For users who have an online connection. The Evergreen bootstrapper is a tiny installer that installs the correct Runtime for the user's CPU, using an internet connection. | +| Package the Evergreen bootstrapper | Download the Evergreen bootstrapper to your Dev machine. Package and distribute the Evergreen bootstrapper with your app installer. Then your app installer invokes the bootstrapper to install the Runtime on the user's machine. | For users who don't have a reliable connection to the bootstrapper CDN site. | +| Package the Evergreen standalone installer | Download the Evergreen standalone installer to your Dev machine, and package it with your app. Package the Evergreen standalone installer with your app's installer. Your app's installer then invokes the Evergreen standalone installer to install the Runtime on the user's device. | For offline users. A large, standalone Evergreen Runtime installer for offline users, that includes the Evergreen Runtime. | +| Package a fixed-version Runtime | Download a version-specific, CPU-specific Runtime to your Dev machine. Package and distribute the fixed-version Runtime with your app's installer. Your app's installer installs the specific fixed-version Runtime on the user's machine. | Specialty case, for when you need specific version of the APIs; avoids testing whether latest APIs are available. | + +The above approaches are listed in the same sequence as in the [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section) section of the **Microsoft Edge WebView2** page, from lightweight to heavyweight approaches. Favor the lightweight approaches; use a heavyweight approach if required by a specialized scenario. - +_Your app's installer_ means your app's installer/updater, which can be separate from your app, or a part of your app. See also: -* [Set up your Dev environment for WebView2](./how-to/machine-setup.md) +* [Understanding the options at the Runtime download page](./concepts/distribution.md#understanding-the-options-at-the-runtime-download-page) in _Distribute your app and the WebView2 Runtime_. -## Setup for User machines +## Host app, WebView2 control, and HTTP server + +The WebView2 control acts as an intermediary for communication between the host app and the HTTP server. + +![Host app, WebView2 control, and HTTP server](./index-images/hostapp-wv2ctrl-httpserver.png) + + + +## Prerelease SDK with preview browser channel, or Release SDK with Runtime + +| Version | Renderer platform | Description | +|:---|:---|:---| +| Prerelease SDK | A preview channel of Microsoft Edge (Beta, Dev, or Canary) | For experimenting and testing your app against upcoming changes, on your Dev machines. | +| Release SDK | The WebView2 Runtime | For shipping your app to end users. | + +* A Prerelease version of the WebView2 SDK uses a preview channel of Microsoft Edge (Beta, Dev, or Canary). +* A Release version of the WebView2 SDK uses the WebView2 Runtime. - See also: -* [Set up your Dev environment for WebView2](./how-to/machine-setup.md) +* [Understanding the options at the Runtime download page](./concepts/distribution.md#understanding-the-options-at-the-runtime-download-page) in _Distribute your app and the WebView2 Runtime_. +* [Prerelease and release SDKs for WebView2](./concepts/versioning.md) +* [Distribute your app and the WebView2 Runtime](./concepts/distribution.md) @@ -151,6 +297,7 @@ WebView2 apps can run on the following versions of Windows: * Windows Server 2016 + #### Windows 7 and 8 WebView2 Runtime version 109 is the final version that supports the following versions of Windows. WebView2 Runtime and SDK version 110.0.1519.0 and higher don't support these operating systems. @@ -166,6 +313,21 @@ See also: * [Microsoft Edge and WebView2 ending support for Windows 7 and Windows 8/8.1](https://blogs.windows.com/msedgedev/2022/12/09/microsoft-edge-and-webview2-ending-support-for-windows-7-and-windows-8-8-1/) + +## Resources + +* Docs - the present article is the main page for WebView2 docs. +* Support - see [Contact the WebView2 Team](./contact.md). +* Runtime installer download page - see [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section). +* NuGet SDK package download site - see [Microsoft.Web.WebView2](https://www.nuget.org/packages/Microsoft.Web.WebView2) at NuGet.org. +* GitHub Repos + * [WebView2Samples repo](https://github.com/MicrosoftEdge/WebView2Samples) - contains completed Getting Started article projects (minimal code) and code-rich Samples. + * [WebView2Announcements repo](https://github.com/MicrosoftEdge/WebView2Announcements) + * [WebView2Feedback repo](https://github.com/MicrosoftEdge/WebView2Feedback) + +![Diagram: Resources](./index-images/resources.png) + + ## See also From 21528ff8742ca28197690d03db49d7d888190d4d Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Wed, 8 Mar 2023 19:57:18 -0800 Subject: [PATCH 06/31] AddHostObject color --- .../index-images/distribute-runtime.png | Bin 13461 -> 14009 bytes .../webview2/index-images/full-diagram.png | Bin 34071 -> 34612 bytes microsoft-edge/webview2/index.md | 10 +++++----- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/microsoft-edge/webview2/index-images/distribute-runtime.png b/microsoft-edge/webview2/index-images/distribute-runtime.png index 739abe21d44966b1becbd82d7da6e58e0a9893d9..03303a353422ef76c8d53c444a9ad800ff89ceb5 100644 GIT binary patch literal 14009 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 literal 13461 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 I&eNCw2A)Wfo&W#< diff --git a/microsoft-edge/webview2/index-images/full-diagram.png b/microsoft-edge/webview2/index-images/full-diagram.png index 65e0eea573163246797f13e01d17865d9206db65..a9c17f826ab28e29300e3a7bc82af38e77515e02 100644 GIT binary patch literal 34612 zcmeFZcT`i`_b-YS1nKoq1Pfi7NH3Al1O%ja5K!qvx)2~L0hF$YAk~0$=}kb0f)we! z7o~>YLJNf49mJ#O-0vOZ-aCHp-Z$QOe=w44_FikQx#pVlGuwV~S3{YUn30%(fPhrx zwt_YR!I^d7kAUbjaOGkF(=FiRl$*9Pm>|D{c>(xw)<#ZUj)0&jlH}0x9Pst%(evxXd0{)=Ql0x)|IStkVVtn={Or~j`Wfl9P6^@pHk+V&=$ijdNlMN3 zfC&U3lYrp!z#h6+bL|Kfd4wXd*aPPrUwsn3zFg8-i`^MDMFtp(TY6{__cGK-U@k7e@y8CH&{TdbXcK zFrEKj8RGM)ebh!kbv0omD2HB3+FRT+5oEs&m%kwG`znVYY&idk-P67N6u}!{)F}Rin(8jC#zo{X})@qxBDDo(JC$tb`IgDSOs+=5yoQ z%vX%ok?L=+M}d({BZPVqLIG!&gk`r>hys|#88zz;=jU_}lef(4P9Xr?7{qAU{JYVDs>q4CH?xU@lmwq8Z=p`zn=V!SVEawd z`DT$rc)*vSOWx;$SwuXqb407Z9J+jGV_jv>Am6b)df<|z)Kt;z(L=33hS_G$2Imjr zk!1nC>w7L^syVrdAc=xFVR!f0BBO{9sICcv4gX+Pfi{{Xi3eI(x_F9UfE?gIQxoy% z?d~aFdr!mYhUbY_(5@F*`nd*O5^o8Zwpr5A>1cEc>t9sV>qw$SWQ#b>qhzW|)|RT` zFV{xK-6HFjS=opWA5Qw#{qWlkPe$6(&S%76)YiqJvQq@*XYj*k@>waWc}iUM3%t$& zu1UP*;TZ1P9J7^5sdrK5=G=PL)w}1Exf0&?J5x7k^@$2W$h~<)GUM|MHQv-)58F1z zTN91zbJ7j5y`LuVtTw2x6k#_@D0zEvW!gKN;k&bbE5iISUlDk7HHExeSt-4 zR-vrQjhVf&1a^11v5ht4oE^qhpkZoSYq6us+AF4uk+pg_NM=rA*8XYXeJv7#LKZ;Q zhs4uP8HdnWP<~Y(Mesdz#f5!%nPyL&5mP@+DPmFd$R>H}k#1W38|nr|GJxoJ43c}W zNNi6wQFw3l^Vi`I+8@Pbu+wZUj_WmMe)9;G?>Pgy-br~u*dyaK!4Lsn*qE0puMS|q z5_@BN%{OhA&sL>z4PE$p3s-o<G@_kuK>Gd6JJ9!#! zt+__!L*7s4f8g*OHforjf4nD%bC-38t$!w^bPMvp5RwrTUN~l!2lt(e=NBHCJ?r;= zD(q<+64H24UhNV)rn2gLw2S5uBGH7bSLbZ}77Zbzk7rAW;Ny42srfv&t9wc^TSo3y zCfe>^H5DR7>+U8f<(7}|Gv%JO8Z|UwemVqy?{WGRfj(XhJ(7DSsxQp|IZN;)9oTmQ zewDopLlpGTiXnxN;7P;rrLe;X&+CuG&k_)PH~-&KO#cPC?SFTORd)2`euvj8!My|N ztu|rJ6j^opoyx;6tcP;(WCR*B;bIfF>3b@DH@|VFV3%!r-3baGbUfOGUcl1Vt_POh z07S~`>TTeWkJT#iB)|hlxR+x!k(rgifbU75q9jDvCRSKt3qhe=>T>~h^ll2__qz&| z7OJT62XVkv^|8R^+kwLX+ms0rgdZ;hLVElEzx02Y6OY_veGWe(Jz1rXxb!}I0A|>k z2uyAeTrsXUox%h^vX%B`NZEZ!NPbDyzc^3LeX8SC#Kw=t2zz-pH2p)pwIpTVs}}o0 zSJAv2HJ)QkcXNo|d!>_FD1KVWkAJj7i3!jm_OntGi$6-5y}Eimc8(2fVSar!bMl;p zqg9UH{!Gj4&Xo^`ag-R^Xmcq-YM%*D$Q|(mBJ7vKikL`%G{FgfQTJSlRLc(`^}tBJ zv+Yo()+Fu9ki^)-rrMClqh=yMW&^ue!xo*` z^;)F5Q2P;t9nRgeAl z7p&5~A#^&kKKm1i6^H@%W}}=|_KXPyChMkl-N|Md;fdtx)0DA~TJ=cZP3G7Z+>m$y z+jOmQd$*od+tMxvu&K(taY;CeKOY@pZ;_!GdR26UP6qeUIpt=X7RSvybZ&|Vl`B{~!h}m6=6kgW-?=VS_Vi^34|Q~(l0KO= zI~$t!;p6m$K^vc^*=qKW?Jxyh)4Wc$4CY>&ST3YO?*W1xS-0{4x?M5u-#Gy+VNd6I z7b~e7B}Wj+U9&JcF{K?Q$@pyPaz)d{vf_RH_Fjv3wq4YV+7)j0*Rz>v@00PN>m4|1 zYa0!8a#+nhrxQy36eYC-3mE6=YBrZ{Xb63}nvt5+QTsJ?)-`rPtb4~0`FS7G$?}wl z*89R_12Y7v*JG3pqp5$ru`fuHPY%e(#ez$I=duPz_fBu&L~MP-XMI9h-#iqgAGpn! zXi-v*MS7P#Z{Ce}?$Wce9){6EeZQ=4Kkbor<%jj>EmMlQbY*EyYpy$=#MCw<3zk0& zg)Ixi=HA?bi&lRX%ri~v&aunazH=q=iVVL#7nv2Fs~Ja&r2<9hO0kzY!H9FUHLi9% z%MJrO2D7?d%?=3D4CuLR?FyS+h98boDtGXzdz8b>2s5G*v*_bsYF4?e!mPXUFf%H) zgfD^gTgIG5$oZNl{2o$bu}>}q)A^X?nmhK3E!<`0>EZ3s(tWJ(V58~|tqYvR2^w2M zUQg0ir01pYsI>D|%8fD2?vh-xetx%YjJrNJ$4g}`W{+;D85`Pxqb9yDH1p^cmdp3( zA}PXa_kqEu+oYa_D;C~g$o(GZxREOcnBRI`B~#r*WJBE{2!;u^1um~~1;8(QWQSH` zf_VA;muM4$TZQ~d^pQL(?70HIW*w1!lZULm)&?ci72$ixqIP77I3}r`ip;z4?tC*C zRBLr#C`NimeMHNhM_B@(J5?P|w~R-P-kgK>u+c7Yyo4L$4fh1eXNc6IAbVOgp6I-X z_tJN(ZlMO-);HY+QqbjB?7@N1-gc)l`c&Q-11o=!w!l2`j)=p7!9Zo#s53J2?c^8e z>gli1@y7?Q{gIGS5GcMSdQCRuhfj1~xWoEuDK)>MzB0#)ZX^5cr>kyuSJwJZe`a&N zizx8L&=zFOCAdqxw9|Ora+nh)-zK%%6+aQ-VWC`Pny)G^9WK`0GIT_H6EY|Lbuhku zL!>04VuA;i*CP{R8Mp_-4WAn%1S6d{Np445Xw<9eM47j3zqEYk`(>c8;L#{@=h@)R zU5dHVt%P$5cBwXg8%1J?^3tK%f=qD#(f7O#GjjW(7Qs+q8jymAnL^}-tE1Vo9iIU} zU_0K-OlnT!n%`7cRW=S-GHtD0k9g4$G4TZ)ZhgV;sc&FdL5AwuA!D@DQH06ul>11<6xp ziZ!i4xYk!X_gueEhfFrC`(qpJ#(#-R$EOO1_6BXAEGefO-Ck~V`J#AJC%e;H1 z2hxAj;H`8>w`ESIyB+{w*fzZQ0smBEmJLikm|Ezhh}?dDe7WK_{_;6Qu%aAF^9={O>Sfj(dgE+0u56-lZTS;ifF~qtKDaGL((^rpl6j7(XD^Or!?gh%iLc*5U`c)=o7)UsWW4Hu~=5B{h<^w0zMMem$}r!Y~-TkKg_a6}{m^SPQHJ za--m=J%t*aANB3vG{CG^!pgiIJ&CVJh(&>LLH<>A{_#x4RJ;&Z^2uT%-MHe3k~mN^B>bydFHAwP49_ zK#jp+klt8}!zBx1kzk zzC#ja=;6sx*5?tN@Wf+|kUx_D=U_6QN##%%Bpw1+n=icmBmi(z>@0$FCJwlIne&+c zXT~W03kR9Bl0BRt@$wRo#$@LqVfBBpo@`^;-^>EY8TBz>fbzXnejXI z6Qf^lx(G&A9irP~S69t369?r-7Bx83{{6QVl$gSzr|bsGs0tddhdpJ3fOCv@Z;l_R z4V%heOh`rEkC%1Q_iAtnHixa12yvsK-~2ki`3QSk0DdI^!8MzO0=fzW^>S-F3Ls9xXF?rHO?b-&I!#jsAtzwh3F^dk+v~fh--?JYfFe5C3ycTH^K1$^Y$&~5%@3E=g_#@DtGs0nEPi5p zD7Jz?O>z}hf*j{Xo4b=rnnX3G-M7n!Z=r^Va#RnAZaT}8m*y!FN|jLh3^T?XpBaCe z*;H$u6g~cx1yZ%c_;Y_JA5CmPm?yE+X8W9x$<@^djZ#&wqOJfZAT4R=art$7gG)CM zeLS1>@;WH9SG`hqg2Cq1xxwr+glE#5UC$_Xin}>MwT6|?4a!*OiXUdbjp-Wguq=P< z9^XqrjA9Y~?+&s|ozz6*Hn>oSj%1Uz%v0xN;LA;H8c7 zAA2HWpTgElt3~&U&p}&L%HH)MH(GU7esg1BPUY7oK*Wh;DwQcP{f!RJ=;b>7JWs-> z5$~OKz#t!QtNgAec+CS#85I;S)flzUgC2fTEm?UKRJfJwhl?D_D2ektLK)cYQ()we zHX6*`Xi9Zfe=px^pKZc&j`h6VM(?1*?0gs%97*cyg*q9a+8;^4tmkf+8xqC>6ZcOS>jC>6v1*i6nIjM=+pil~ zD^_xIJECmx&qcVwCw3_pnL`jFAE7%Q1_G=VNQ9TDMM8TMZ?z3WZtQBst0h8&g-hy9 zq!IB06CjLQ`i!@~*B&JSE-7uuH2DM4gr~F05j$;`2JQMT9qQ3iZ#T30C5F|;HZmLvPJ!|221A-@Ke5S#SsyZl zQaFh5V5>5w(40gyn9mdsBS7OSe+|Stvk#Jkk&CvY9odEu@W+o?Ui_=UVg3@frS*Ck zJq&n_ibld(*Td9d$R4t7?of29%y~;{P4LGaXSda zGYGGTPj27E1o?k>F|IVadcm)7f5YpBTP;FU1bZwB_sNY6QT4kUM1CT8&41~85MJ2d zckTMig9i4Rvn9b0(B;?Qg7b7p1f(3lpPbNUD{u;|w4`A2+jRyn=f5=-Hb|Hct(E4W zC^q2Rog7-WwjG>>BN4?~DPO3O_ZKWwt1$ky9RS!Tjpkq45O_o$<@ZdIJPb=%PlkfD zG;v^8YBl3PQ|~9GYN#*iL=u;ex8j})u#DRvzyi#`f9_@j zejMQZ!lS5f9IJdfV01Y851#%P4$?^$c(jZAo=IMNNDFQr-WNEs-;&=v-npN%;BV-j z+)uK=mRaDs*RYo_&wTpGt7Wcp<4^JrXfPeSq4210A9=g`X8yGf3MMc1`1nLTydf_H zl;Y+0tN;_Nrt=kaqJJ8--z#(+i?OwL#bXAU&r^6F;CKFccr}%}ddDAB;Tc%uVvw5s z?I!>T#d8OPXPoG&>P-=eKWPId{Mu;tB7?&Q56#Y8Cj*{cz_WDd|CPj6I!zqRjgN0Z z{0;j$+kz*dKUP-*l|g0OGv@zc!CtSuENZHu3(z(C?OZZ2vhmlN%CDjU=={iQ_xpx& z_Rv*#zrAZQ`CrxP0(HcHu)Ayi6gq4~F%<&j#I#G}av+qyRVI!iw$ivxp~pOmDEN)d;~J~GCrPp@EC|--;!KL zlV~v)gGyQ%WWXQ*0~MFEp`}#iQAyJgjErp}!uFe8%icMpoia$t!5t|>)^B}B&w8^o*Rs{yepqHI-Z%*= zwf14DDY88#jTqj4-Mz3;nNJHn;Pi?fuRRTBP z&+QqL{7OZvz*ol*N0eW*YgYoZhm};F=tkk_fqqmYf*iAx4^bd&}&m1F_JZoG5p}MdS}8e zBy#pn!#=>2b5+r-9D`k3cRpARmX5E?AWR)%mFJ3PPydq4o9dFo>$i`<#vc#%SbP^g z@>^|g1=enAeIfSyBCcmB_R1g@Tp;>T;gbOR+{1g*k9L^6i0}NS>n4vLCGpE-kKw>R z;upqd?}qL})D%so8Ae;*O88o$29iFBB8;Hd^(DPHQp^oR-_%gMcCQ<5Z|cy|dWTZu zc~$wkNy9mlsiomYLmS;Ms`}K8x!1Ug%lkvh2ApTh1`mR29x<~ZFAaWMs zN`;}w0Z*FWyjFSzZT*u|#weCA!!6&g=>6!O(w_`Xvjvii65*G_>^#wV`9fG;y&cYi zJGQ}*efn#6WGkJQ9JxXiv89!nEE!PE4_0EfvD&;6IidTmYqxWM(bhmx!x6IZy`3zx zW5Oqsg(%k{zcvoxm#XYa94U z*xRG-kt&UgW7$^UOj1Tsy0*|=e#UY!_n3AUnQo{RtyCFbZXmN~RT1;07aT6{^-kad zH;fwjjix18_S+CS&wZsalDcENJHUfx6wqvG{NS@d+-vW2hay3`(kO4DL{xa-x^Z@t zuo%asd79@E+Rz8?)|-N#-FM9%=&kB3F{740RXFcDUeu){b(_oSx;)i*@XC2H??%LS z4C2}w;-#U9cGvl9G$$50)jzuA2OKgSSR1_dy#gmU%i+S=ak6T|w61#gqJhOM-7ht_ zej*v=&U}AuD}VR*FlqU@rX=YT?L>e8G54>fZ|nmBu%C$M52OH7m?=M;RFb{{eO!QL&*3|3+-T@eG#z~E{1!9rs=jh{FE*7nZcRdmpN&h z21e?SPM8n>lc^Uz6rcaXf-Tc$uBqr^6V z<-bFE0#D0EbcGiSUyfAf(L%|?6`kZ!P6Fzv8_UMDr@ezTbkf^f{9)u$CpLx}{3rj! z)xB9TqiYWx6j3s@l0p~xd_?a{>Z%1@XbGSBOHzH-_i5?skki_UjQ)ulk!ML~Nkv3* zS(Y$)qzFy8zg>(G7_ta<87kvB>#Cla-NQi?zJgsN!Y{Z}?oUV@>Ayza-v49jZ?GyL zXO|By<`Q ztQc&`!_DL4FW5wZQKM+<7i!L}80+q_UXp0ITgW5xM$xUigxS8Fme^V--$Vwk5q-6M zE_KY(iTnTvalz4UrighP3AlKIGD_^Jm;q;gz`mr?m+)(T5i}8_&McXwb1W2o>YaD5 z(@_POC0OXIOC7!4i0~y!%7Bj{$F+-sW$?ZT9wvDB?deUpb7-6MU!gc zrm5Qw4O1VfCyo3_WYGpOE9|e!ma;NdMZuldd!0A;J`S18&vc5n71?T-`F!Z`wN@J> z{gYAD*995h@4c$E9x6@9xg$QRgHdoSod;(y4unk{ z?2vyrou@d@sc$j#%u7~s3{>A*$44#8y3dZ)-&uW>D6%yzfx^dwt!BSEGygw~x>Edu z=9qm$*e2Sv;RZ`f{;p}LkoUDu&PG1WSspTuIAW6}a z2}tN7aU(77zlmHbHs@Na-Om`Tl|zLi?Rm>i8!s@=eIp0^sfnqBD_ZCq%Y3}qs5xXz zP)urZ)~~hHsYjbtUa|Oeh^GL^(qr*q@_vH244$7mJZK!c9(J&XJxFmOImMh9d&#%K zlqK^#0%=bi8-9MjCo4dov@Ax0$Tn`07JIFDv@OLUHzh0-B?G5HB9JLvyKf4cxKiUe z$}dM(+}|0H0a$C2>AXWe8(QL?1O!48?iGM>O}Lp(|06dG!5BC*U#KY&AnH0UMiAFz zxr5h?87cSg>wI9$d_Ded^Qg0O@I3PXtp#nhqC<#dRb~IQaYn7aV?yb;+cIRftVY2l z%vx6m!nF9ffvdV=;@cW)#xQKDFI>vbX`u?pFo~W5g3S>DT~JX0wAS2v{qwD1A5{xt zj3Nl-(0eV~XG4cwgEYyK%cUZ=q`p?!f0Ts_zTfTtIN`Q^4c-@vYRm@Kscaz_)mHP70^L;BI2IR@Cm?9yLz6;X7Mx|`Vx>HC^^HnooJW(K-bUchFP^d})P%v!z zdt%S?00nc;x}d)%7XI@IVB(~wfJ0izhE6UCJfep!4BHCBnMLtImtD<2ZNhOZ@8^wM z@S_y$7L2znD5`!A3&INj5AOqP){EZ(lH+Vb0?9FxjHG`@L+~*_xFi2DckgffZH0c% zi04VeA3>SpOvA~V=pz3=Ie~;G3O5YGRUr3G3aG&oxL%O3L2&4QSSoO%S&GGBx=r{n zg=?ww-loAA=pU%yXI=)+tqwXL|2Oit`+Rg3euD=5zhP; z7zO~lU$VG-5$^9i;oZ;jeSBOENOWlZOmsk34}O`q`Co#XbOGy7P%{@qu>2}hGbMxG zhaT?#(0>yfTjyOcGGhEGVlOm_g!Yqx?B(g2Q&Gn zS_Ng4o(_~L)vYcm3o~JA&pByhf3%bBknCNOZVF5P%@Dx;`fpqWgJjpYjZsN=BQgwM zy6%S;3mW(Ka@9KW$%4YVqd)%DGkte*L{FSf*_fBEDQT}`(PSNg%yASzd@xfM@u;Bm zdHB{dx~ZvQLXs2KXc?jCw%B9sfwxswzmG4V=a7$|ol^>+vFP!-XyWNsbebnzpTvs6 z(5tC5e3RF5G*4#@#K#r=ruvmyEL4N%Lu5sXf^9r6I?oBkH%kNU)#5}-;l^}0@y6BQ z;y*MLedOypRM}DWXmXds)#VE{uN%bYyM)_7{;|v2w8I0U_S+3ln2hCiVP=s(`>goQH^BO#NoKkp!ilepPA47|CZ_FEu`URBHc{aBFtm7=S`yM5=8Q1RPI;21r6$h{-W=O5^?*> z!$62NKFdfg1rc>ec@D_8S-eQc4oO(Pvi;yvcJ5&uq5nAdsPFd5mY0DEnoJd&QLtLJY*y{VTbl&rb z-7#&{PSWMLF?PspTW{o9vb&n6fDU_%4a!C;CY zbS>i`G(Q<0g`r{@)>Fp<^iY+&t?|(ChaDm6pJYLj_6OeN)4?a))DW6Cu!tzozar=RpTMdi%}Ff8v+>nlc!nIhTD@`2d@;63sAi zCxTFk&zsCAlhyVkQ-lTUr1m|4C~3OT2v zie!;_h2Y%dhv@S@TbcSUi$PhKRZ+&wy7Zys2wxTVH*wI3x{Lb@4r_}a{^W55oe%f0 zd3kCC$%QR{QAR^S>+Izova+gKMnpjSnsZ>LXY8Ywxrght7Hedew+nLZ<4hrrcUrd{ zw)Y=}TplPZ}blV;76xH_6Y;3 z_M7Bd!%_mR!q=Ulb8{~)A=5i+spRPLA|LDvn zFYy-Ri%?_ja6~}b3pAdGz+f~>MXh$C}aJ5(L>+-)iN{@MO8#x9_Px0RJ z|IxiW28v-LyCE|W#$6_&k@}%;bY@&^^5zIXtIJ7PArOzx~qAjhJ2j#`+ASAoAU(7tdHc63fmwe2tc6zew+ zC2aa#UT4QPtbcUsX{Z=PAVmf{4(H&{UvuUZk$Uu?9X+9{?bu*qt>x>MJCl+Sd(I@Y zq(5P^4Jp_Hw;`YN!S5-fsl;V?TS6jl#?$2PMTM{%K{U>ThE}%^bp==XRNu!5-!V+3 zV~Gw@zRy}oT5W2AnuQ~7&}4SJU+j8irZ+hmB*`TcGd!_w3Qc@{zlLZyzNkRU{lT`yURax$4FOv7Tek z$c6-4a5PeYL+u_#MO|$&<0it^tUt@_<7b#erCTRBK0>APRyL{J@>6_$x4%Xt=6ax| z6{tq^=~{;I)TU3?M0=v0R5*r$*;*00X=z|z*I~|sm8y|apVlq*<1#&WLVqGB8i^wW z`K`|uP=NjC*Kh)Ji;sTg8kvnyY4a+SG&FUFd-w8V%p96MYtHDE=JpwQ#7Sst8o3RW zW~+3^UF)1oknYG39g#XLhS_XtM03*2wlr{815JF#+yemgh0965yp9M?^s9(zAdgZV zwD|mPD{+tLs1h$!(U{J-k6vD};m}TJQlnQeTmbGo{>`D}ZJA#8&f1*`vq7!W*fabj zCq5~#!GF6YKOTbxUUyTKYEsb_S_TwhTo`mpMKeN77>E(Qg(+4F@5)D~xI#!nLiT&( zu?%gmiwwLr7aiN{1rEG8*7Bt;IweNs;!}nvuHheU5Mh`m@wuCPXXGQ-*R)xeeEyQM z`TC*QAf-3ZA6PlW`yJ&Z!^md93xLkRs+XHw3hFkSt5p%He)gYx0Eg>D#Q$)(FbbNS zvx6;HQHy3Y^Y9pDx0Q*zDn!+XKd(bzQFvPkjh?t zj)A>7LUL9f&b2${NluIFdbsRw352x9O^vDzfp~xR#F3u*we@W1t6EfN@}t*yY3|<4 z@VWY;NS;S5vsj9VMKKV<8duUgqQOI(sliLp``%MZ&U&+J6urXYp9k}rU&#>E+l8Al z{0E}zir_~Bx}P>ja=g_d-1dGSu0MR$qa3(EOd#@nicCl+D{396I6OJY#gG3k55Sha z1kt$AAcck{n#6to!$il$22ymGl!HnebDwoua73bj?Cuq?1wH0}SjzweaQJac(J7LY zmuJ53r@;<2+tXd_$F4!CF_XA}6j{LUBf4ypxi$Imq(WiY5D@Fo`@ul`w9@onRSUn0 z6MxqxoD?Viu0Z%%;RsWyODXaH0eb6_2@~lp2e#sO`G@$st|nyrZC4={B@{XFugV4d zb9GvQ{-w*P-ByMooJn*()_~ni6=id&m5eo0W*acls-g1L#Th(O)8;C zstpivLl}f?U_*a6Kz0Bfria?s&W0whlZSD)dPD&o?AnFf#!LEJ_jlGdOCsm z?N0}Rx~JbYFh8=u0$nYcPQ5>POF3Fj<@CS4<0a+B6*^HYbCJf+$%ukHvwXURt>}w? zF1NU&gjQ~ZNshb5o{;y#&XLTxK9s0fx-7W$S1A0rX!MaTB39LK&q_ytB=9C}PJukX zUYp}Q)vVQ9tGSoO5aVr?!&t`Xc+>GcTZMkT$aDtnaYH9(6vH1J^EYbs09N>Aw-G4}|{x#27y7nH@_U?Us}HzWO(i^10o1=f@J756QNRn6RO zG~P?kFZ9fPQ!G4MsZeQ{AwMkE4~PAgj?ZXd(%Hk~~ByMXDRs$e*;3yI5w?W9c}$b*}+ z_xCK0kaPC0{;XsIZoviPx?zW7B%OZyv8)u}xp}t~+!$RsLW7b^XomB*w~j{BbQB zb5OaUY@r!*)dD6~kwIqRyR~4rmG32?C!bFZ#GnFCG*|JRXYG;1t04lPwx|0T;YTs7 z=^U}&m%OS17#%Rtxq#1Ycp1?77C22@2@re_j0%`HL2g*QRh#YuN|s)J!iGRMYq6eM ztlC61p~aruXv7u@GlLIx>o-RPPUKA~z@x6t!!S_X`aEd&oSR)DqZn{ZR)L(trj6(g z5d=;Qx7q~pw_|t}c(kx2@G(D+{QS)3@$UG(UjGR!dDZsb z$aL+eSXq~L!8Y1iH=qflKp^~h|9%F-4c@LtW4M;`hbS;poMMOjq7^_lL?QTZ^jmOK zduj>HTH6{q*+dRryF}Q^DtjR+_n(6dzTKF=nQusqnPWA1TRT4Ags!;o&rz;SGzUIQ z0QnVDU~ISYkcK=vz)fQRx{1BJj<9d?VtRsf4CuTvwk?RYcaq119<$~p`77}p`S_EC!b^U>q|*;vs2Of(w2hKJ`s&>SBjJy&7}w8#Ko z+JA;7uLCcAxYzqfNE?Wx5+nd^1NYrd#suVi2*~kW{uK)cpy=m}KjQY!@cuCA@3=i3 z-jA^Z7>AGayU8PPlekFS%I*X-I4WVr;%Eu>&^#*i>>qsazeMnJ)j*X>-WN$@vp(q z{Y^F*{$&?Azt>HOZ%4-$h5XDeC9WPrVrwg~&E-*gsx3InIg#9G#hYegm zJ2~!$HR~;{*rVRAGXe20RsjCk-$UATf^lgD!8Vo(&lmjQvSGlxIux}N0v-g2GH8UftnUYZ~3lA95k*qQFgBQfJD8T#&P4lYp$@kY#|w_nGnq^bJOD;d?gt zfXvcydT5%+FRFDpUKQnmHs}bvLJuyO760mh7OXV)vW-b)ey{J|#ng47gw%S8mCrbM z`Bh}qu1P#|wI<8uC98T`gu##^CFU6uF}62TGs%WvIdY%=G#G|EoH+o5pav6=>aQew zxVq(qZx(ow2XZv#gj1&jNsAqRG}Xc^3qqi_W|hRxu3y!&f0}`}#q#{+vKUPw`L^-^ zmDV&AOR?IeOPB6Q)EpXWXNWgGBBDizLA&HoB+gvu)$(a2#Z#w;s8jaaY#!E1T+%{K zdiSeuhI{Egh;lVCS~1GFibgD?uN}R}!_mVwQI*xz^R>8%bJ8LoA#)~cv@8S6aDSkt zyK^G2_Ca)GSoHUZL@u z*9&qMcKpbR_K>f6U%uFOc&8Xhoj4q;q`;RcTxb#8n@J}DPP7P%Sd0x(jheOY(7q!= zGa5#TZ|4{|51x#~K9kOw*ezR+vB*DgJ_AM*B3NZ55p{rX*n11CI~%4#k5`F+a2 zO@~Oij~Srk(JlS*`C#bM{ab%G}GB~*om$S(to$6j|+?_!KlaQiKpU_K4#tql*Oc`1*tBv0YX_>pmTrIG8oqFz+F+=fDzOBXeii#4X5CACJa31)lI}-H$Y*y)Ok`bWpir3W z0LZ?N7g09MOs{^%$J*LB-y*j&Scf^ge8`GvNBX1tyaA_zV!u}fWn`77?RLrQvc9RB zD8F!eZyovExnZa0);B>Fw->A4ymwpsy*z;93ZSE^4T~NN^!zf%(b9e^PV5xC76|)7 z&mmGY1Pg&9jwt_u?j>4s;|nL@o+;24J|sMqmRzS(tp>jc8hs?QMS=UQX;q6MWkPj` zG9M*k1QWb^r#_;8w9#P(eoa3EFKbNpgg)dGIi7t<)=$3eWc}Yx1#}t6p)3p7(85%- zD=!Z+(ZY}kK)>Z5WKw;V%V>%hN-u9zc^%`E@adp&H+)AWbD58lIurX8cgk;hF6g7j zG^okh5=5=jFv~;rp+=O0wF9owNr_oK#K4=gFfW{%oB7_Z7>O7}m&V#ARV-ve?zp6C zkm7m&$J}mI4TG1FhI#sPn4%tux0`CgG)okD6Qi6x8TEq$$4kHGJ-%tWcpEfc#=11O@+_7Ew(L*pH6G@vMOI#e&4iZ6HLu zV*JcLGDB)x%TkHI(o#&JjTz(`CcJlHi^{UoN^x>O9@el7wDA3N1@zp=&zEYY3}O%o zqH_{L;1mwAEg)b=KT&w6$eVWS=@Bd;e8f2+=uWm+`aI~;B|n_$GQEka$=`}{w` zqz%iCQZax{UJP0xd~y`@Af!DPKA?p9JTzZDG(UchDvA00Sz!?DRBf7-Kuon>^%lchPAE^QM ziv=rmh=PWsT%ZCQ=$FN}79GdZiTti=*;{zwUaK;~UL0i{WNwddMMvCnaxZ{`A1#43qw$?MFzf7@14dr_uN&I-$U-Ly047p#J`^{uuLN z8LEUutdtZ)Y+vGVuSj_|i~r&;@%6#GM|#fu=r4Op0xYBV1LWz=zR75uUgS-M=d9*s z-{-zaeXvk=!B?!GDt1tQ+j;KJs9j(1cLv^(X!2@pYR?_*g~^3+JI2gcEAl^pm!bR$ z$OCSZ#cVm4RYo)9-8+iLIzqR+Wn=mBC6=sIv-H}W`nH!oE%7B8>gpkl*SwD=W?V$e zx+i|bVx^+J;-wK>2K*Ysvw!pPSTEvv*W)7X5cy#6E(@i-k=)3`QQHRvw_CxX7^|$T zIFQrgs2yX*MqpQ-l(&;;NjcBRQPQ{SCCQK-*U$K#zmxboUdQ6c;!0z;O}WN%ul~IC z_OxJztmmMXh5)Bl1yuW*^_l6*v2*G)DF52BiHyd~L1 zZ&HDL(Tf0LoidH)7$Ed_oct#ZOpd~yLx7$p6JpAjeG!6m0pt;2l=1j=RjT?YmWva* z*<8)N@p?Tsve}5R_tg-&IaaHsF)u`F_rKH!w|tX|Hn2&M^zDb)Z_ddD4ipt>yLkUC zt<=SU(V||Lw4-&qrfT)sW79A2bV#EvBdu=BvBcNay@;t;~;+6=c5kbcK_nEm&0=(6U z>WA8c9|d1*BB!>RB>zlSFu?t-n^{A|L;hQL-yPP}*7S>d4poZMRGKIdDS}Av8dOxI z2na|OP*8f2Vkl7|A{|7eNHHLS2!vh*lqx6?x^!uVUPBA*t{w2G=RMDTzI(steQ)8f zu#>&_Dzj$In%~TC2BW59t61g#l6yGO8}ZYP1GO3PkntD15{ghx5A~!fd+85cRuvv= z5+IE|K9rkynT=|TWpKylp12RINX3@IW^l16uvn0)+v__^Na;DwQJ(dUoo{o|%%hJT zmOwnCm02C|Zr=gbVJarhuE5f3U#J{E7OjI5YCZ^Hgd)J3ui*JKuY7VI z7NpnA{m~}k7Zh+c+as>gQ8A!p#t-M2*=J@#F0Uf@Z?+2??tH)$C*GXOQ9ikw59st5 z8_rT|$n(bhBdgN5HY$*1+5y%d6l(GdU>9}!H!0jHY; z=+3o9;Pv7EGvu(GLMJ#|f50-BN32P;Yur20A}kn=Yk0?1dy$YJG1{7G>7()5y~n+ z(4hEpDPSK`j}V86h9Cd2{MvQPB+REq@4#f5Y{?aEPd3Z9=a)2A(WwmxzWl&g9lD;y zGZK9AD^(rjI>IlO^+af{7W%zqX=9S1QNdZi(lu=2Q@1IjFuQkZZGFV7A~dG=hN!sp z3OZnhy3Qu*1`kjn5N`BKSEZt`RC&g{PD`g+MEET9RO;^+iumS?pYE+X*V6SuY5JMp zrR9e`%B!#ZBLW5<%Vtbyb$exBaz5a4>rSFiOp+Y>fxulY+O_W{cSOnrdZ-&5-TL&C z_CTm#NBpCY5h3#I1zy{I+=$MuYp4i#v6gUdobvO4JO0rkXshndX^!hu4Dagw9TS_{ zAKY>am6_1E&{@B{U-4qg83*kwDOrKLCAXra&VI3Q9X`dwM(7D*kZGZh ze*3O%(xhfTyRb@&ycUBK*%yb4?f#7vWV5cd?Rsgtf#k0<&A(pzF<-@**ov(Nka}RZ zRg@YsQ8;jRu41{Sv=mdJ-@dUqJ~dlxgez!n2pQaL?eC8?LJoEsbIrC#$NcG}g;sNn zyrUM$dKF)(+nvUr&XATo{l!J_y5NiGi$@}Aon1|tPHBfTx|}d70@?w zhltRp21&N}xSUK&9Ef`JEJUt2_ueU<78ZdRr<%>BSK8KUy7o;+MQn1u_GZO7vj13z z0-X5s)fMg91Hy$&gr2;XhaH)ZlRh`Y^%?^Az2D9OpPG`h52g{rT z+JQy@|FJS>w*LG4*D!Zq{{r5gze7UjIs(Sp8))*~PDSNcUy_#bL)8lV-J4moe1;H? zWHm!gybaMgEKQ>lN3nd+^m)vO7HLu6i8Oz-`e2r!$s%d?J;tnt6FSa} zgfs8u_1hcMqcVBr3)=XsB*HQ|Xc~nBBb2*bxM|a}6%~*OYge%gtC10LQgSy6ZPRUO zGZwF0%G1`y%y_u;S%cT?ffo=An-K0!=}A{U#9}*wsZF!-wY8$FPwrYP%=kW`4EPRYvyG)%?g?bm5*o)TWQ8pyH7cy{JtyJ-7> zzkm!*3)!Xq(wjB6%d@Fct|PO z4`NP)!MisyZfG7M*3iee2W!x+U17&eUW?jvN0HP&z)3ox`}w( zafmeS~(w3&}Jig8|YQohIDrBTYKkUW~IM$UKobmsKT^CazF+e{2vmTg`fUiBm3<536PML1u)~%m+g~ znFKb8mteVpF#>VBd$Vbcre#m}3JlX&`t)#W`c5`a15N*AjRPF;f*8}JZkw7f|GAD z5SlFNf<(lCmGu{@xg8sO8qbx?Kw#sh@Vs83MKlW_a0fD{_IBpEmz}HQrR4BA0+4E| zy-0v&5c%r0NPE4BkYCU97+We2x&R_*hzth5SS-J;gP*(8Zw>fqxBNN^zZxO?wD*$k ze%VO>*2W*!!=B;yFGkic;!KBdtSb6k-A+Ws_P|nt)9`ED=Za0!b_6_=6&PlJ8G8qI zV<{5oC2|=A;F-}9g9QEWe-_{B+XSuc`3rs*{-y0cq5pyZ^qCP74R1+5G_8HHkO#Ik zTpE%eGx5{-*(UlKvRf9i2>hwCh7{03K>tNpT2e+XDEOsNd?RdbA?H_ttr}*n2iTZ* zSzDSzdNbZ~j!HZ9%$V~1g~$O`vhB^H{+MHM2v{bSj6t#tUU)L69B9F7x9p0M&a1d0hZCR{}?&zNX?QXF&db4)TiuGBX7Q z+rl?bLZ<+HNCf8qJs8rf&sK$+vkO3lMEvf5*09m%n?GSZxoD8t^xG{l&SLM*Wd#BvmF>Y$21fu*@5Ws~+4o!1%ngfQW656b z48K&XOVl1s9trX=$c!sAcF5W0E-b`U@J}_)kFO@-PvXs>@J}cY>c?=T^D{Fb<{DS@ z=L5{&U^i@yk%hAJrfzE|6qFU<3O_*DA02Ki(QvaNNL@XSL}zx0b9p>sBh&WfLeCws z-=vg1>xNv@Q0Oig0bAUQV>9|&BWIj$=?Z==c)fo91RkHU{t>H1UbZcC@Y490KjBL{ z&);XOlkqfOwNdFLb3-OOtz6P4ao^i5m=fm}5qTP#nN+Jh8|v`!j)*Xw6Tvzgh&yib zwd&7hS~y7iK77ad>i+;ve`)IW;_blA#z5__Ya;lC&ugq3A}>er!3(7}%p$!}sne$4 z{js0>3G09%+eiM(8A*iXN+<5otg4=GMdsf{#)kA4-$fQIXRkef9@SI1|OY zPtnR~oeI0_TPY}`Msp;?sIT%DEk|qV#0VJxX8vuKYbdu)4fvXyuLtxhYCV=y zQnp3<7o}sFIk+m3=c1$xW~%ROhR`CEr~WQiG0qo@^Bp?XS!eo~y{U0z;fnVwb-sCJ zz|)?hjMI@mI)^b z)qpxGcH{XVRwu|n3jj5OnjBoVzzzBP>YDO@c73dS0>-UT>fHeF+I9DrD|8CEYXj1$ z$l0S60?idA4hKe39v_9z0S0^SYBksC6e_m12cL?(m7|gV% zGaOx>VVRd-AM+{qFZGQ@9N72ukMJ%-5OnZU6M#HL1>RjJYy-F-D6qeD36!F!MhQ0t zl%Hj1AM`^&^>2%w=vu$CSn~PT4uPv0am6C|!y)D4c^*zJeb+~R z-iwcb|7-<4ycXJ2Z*Ol1?>6iIz6%Q-KHDI|qcRe?4!AfYMkBX}bB))b!!QLg`e$=> zWQv$RIw?)^AuYB1KnYcM7-jCwFzn8-&{neBK@$7JA=^!JQSYwQI$z#%X@e06bl-7~ z6FQA2$zt3kxKFrP znMXAtV;V)83G6Bmn``x8F%bKw^`o9cbnrPwEe8&mK^gWX^$EPhhqBt%BwmQJb*=Ce zh)FaB9A%P$SSsp3FJxvo#%NsVbe{wRq45k+z@cBke*7vC3rkkeZ0HiiGw(35pcBlA zqW1hoGuNL&i6|by$TJUu3h1JbF5~jRDlsgp*lhosxPv~&nrPk06GLGv`Ln*wJ3y) zpmRh)RTKcnto=E3h$$>zU0v6L^I@@eubH29myG(w(yN{~l-(E37^NqFE`IIO-tBF3 zc8M`+`$2Tm;du4uZ80KD!dAUfY&FplPFlG4bab5KMSvf@WrnLbAndp7yCZ{GKZ z#K3$gOKZSbv*$lvP7S^rnRmHgl#drUR&Kv=c~M0=U10M-_UHpQJK8Z@o|P1yB^0)> z(5G(ptoB#beT-?KVkfH3u`zMjv?wk`NwX-R-TBh^zT?Ao9{PadSC`iJ5aOiQvu_Wc zjeAgU1$2Z|MJ477-{`AUCy#rw#c*O@`?9;D?Ek{Gts3m-ayBFf~R<1$^v4|tVeITgl*hO$ea`xKnfTTKfJa~{ez z$W1LeVp}@V!T_zI&3+n)OIfM}tIzwq3FjNJ4Fk?;l?n#7t*TnmH(Qd}=sxwC=+Em> z?H`?2)CF$iFyBgx*e8s$ZHLdm%vF+9FzW5F^Mab9Is{{KSKGY??@j^G0l`fzDEU0z zY{r`750mzlbe`wy_}x<-I-!zD-sVSf`=)B*iq0+ntq5Jw!sli9*odQ}Qha=ZPkOH+L~9yR z+Zh#Gg%t$;3OLwQ;^jSK0JZD3>Jw1A=q)RJ+)m{p7Y6sj{s2%pg9hUj^B~r=YG+|? zb4X_HFkCQhaP2d49V!R{l-jTS)R^;YOgG2fu@5}FDvB&5vhQOg&h_0 z;`>HBEErBeczuYDz>oGis2o_bAQx_Bm^(e9kd?&1msWo5xS<<09buVnr-Zk@W_yy?XFI0|Cny(FY4|!*1Sr@; zIs9lOF3wecgL%7BheP(bj{zs(4!B0-uATa*yYdVfm%d|_F~2$`yt8!#SPPQf5!ljY zuMrF={X|Z|$xI{;Hm0rV`aWbAX;?jeh%oiTKmZ3!I!ALTwO|V|PUUH`dbM>+*Oond%18FiCU>VV56q_^78c7m3S+vktiN$)!Y~UB*l9poaV_m2NlZbSzwmELB@G zjiM|{>iI>xZgx`t@`8i=Tq}tJ3eC;WR))S{V`ttr(z-n(Sgof6F{1r+27eq;y$h*I zwNDPvnY-x=#OY{E+mK^+<`SQP#Y+JxvGf%D%dRD`&Bb$RDl`!dZe1Lk1T zv?BVLfBZqn*_kwRWBu^}zgN4KSN&nYB3|z1x?0nvkhgr>@Ym6})BUJ*T+_*I`cqkk z&r3>~e7=Me`0V3){kQV(%ok}shu$zJ$x%KlpuaHLThI&#MJ^8g(#fpO8S>1G47uUJ zp2+**q4SBRtW*4o69VW}pM4b8PJXjK-tQTxz$__^Zvit{$QQu7r=ExKV{Pq5O8X z(S!tk^x4lDJ|NJvxoYO)RhJFNc)d3|>`fcO=7cip z-I4Q=7v$3GS3;Sv=eW@!aw=1M$!^;0W%uk(S**tR2*x%qUnv&3;o4CQ7pfyPfI|dq zn(t#T0YGr!#fMydt82Vie6e;XXT?Hyxw41%%`Vz#5SRPr1 zcYEst9kHB3?l|#7F87W$P?z4&Au@Vezg3yl8KApXkhJI!DnISj>n2gYAnPvepI&_<;JX6U+W&eu zA{Ms#VZ8&L_3wEw;QqHjE-)Jdv**xWxd&o#1Cr3c%y=XLgcp*0$d3}W-eu|j(E}$? zAmrf^nuNrYJoa%E*Jt_}be1BfauIeNQtIl2`MtSE25Z zY58n_92xDc4^)199M?%UtR!|%`W{wec+5=AaNH@k3jgW;inzxUbrw+cR^`1WR0j;| zD*B+TzN6M;uqf?*L7BB4|7U}0qq3vc&Y6seDOMFR4?9Wxs90J|>Dt~F*>0;L8!UFaftCWk^ zFh^8EkE};5-t&m*Hb-yEtml;aB!G3jcdh_hD-Us7az+hs@@Tb*t#tMg=SpR7u7DJ!@84a@|C>dC z{}M#-;lJ~UsK#9mIns2})%Fw^5KEw38q9qLGFCz5W1cvlm&5VfBJr+u7V=BcYmdGE zbg<~~>{Cfuy8!uaEaD&VsQlsnvHx@%y~l~!R#i=s=|iiOYMABjB8gJbBi|<9uk=_= zpd`H|xfsozSkMY18a~SQ152}#Bgv%UMO2g199eN&T9uZ52_>3C7y1Go?W~cyk6D`y zF<08tt1b_GTOyZ>1!ac#=n$b`e}vq`OyqI~AoT{+syYrl3?Q{E>olMSl_cLvJ2!qF z?3N(;%tRm1fI83-zy{AMFdW-!YUv>|Eq>0B~Y20ADhLY9Wl|a+ksG1tQ0-seIT40df8R@dlNB-*u3J zVwa4xAQAy|Ng)nKThlMvr_UkphjP!Iwl4hxT_L#LVf%H5>b?z}W0vYbok+1W<t|XtS9rwpHLKiZPiS=Ltc~pt`g8Pg2RA_eQ1Wrk3%6b)pTL@s z8>7Da3QmN?MRf`nXnj|CN)Rpms%HJA-=b-7AWB|K=@|Fa*d--+$gmi4k(3mFX;RrJ zpo+qCBOGmXgLZdj*GVva@!q|@T!~TrE-6s}MrUk=S`kyejO4AP)u%@#+!0H!GcCMi z)gOqn%}CiG^Rp4zx=ZEOM&mVYiOrc7l2wcN5L{MQkKB5V<`BOlZaZ;IYa%;^=~D3%w(+QZ?*IpY;mTUUL~Hyv15wW` z?G(_C7BzW~40>gso-@!AGKD=K`)aHT6Te3$-Q#QTPDhw(b>n`b)978NHeAuJ%q>=2 zvJl2ueq3kcn0_3Vto4f1=#sXq)JOyi;vG&!o~2B?+wRqocfCR$Rk|ryvdVgL(O`x9 z?ia#|g019p!VnF*W-cWC_MTn=hfWNR_Ng zOYF8Zr~V|pvH0%2`mumc^A!fO(dRBwz1>ZNF)4T387GgkqVr4i&yRDJ#1`xm?o%Co z+hG_|MpU{qS?^pud-v~s+){Mzwzq$rkJSbfR-s#l{cKSg8^7?r2WDmMmzravB{pPYkT~6S0xz)PUrbu!^diViHnz_8eP%Q;X3c9PPWE(V(|?Qr)H z)SuLB`UjTIT_bnl#>h@-l?a_{JMd7k@5MHSMEF2oCM}rBDf0Q=OZ4`%Du#Apv88dC zaMv&(X7O;Tm=zP^fkRKOP|xkcr?QRx+A{Bw6joZBzY$PgvapruKv-MC>*0FKh#Ao_ z`seHkj+0iNpHT!SRlD@9hMWGUsXS*qrW%I1()?YlS`yXDZD_{chppt%CxF~gO+{8^{W_iyc`dtUB?T$NaQCeI~_;Q#Z9PcZv7b{vl?&P%af8er-3JD zL%5%{iBlZ6)tKRHc{$YyBrDks{iN&j+TzoiKD6=u@byO%#$nhycQ6Hv6lDrK!}zWy zJLw16_fAbd^JK^6xdad>-f5k#pY$nTeVwX#l=5wAv%|3tzB*nOwNUAPO9$Vn=md&& z-H-+?D;cNSH?_6X=VY4U*1F@%6Aho}8QDJzrX{xV!FU6*W8(|H^2Dz>yzogoqd6Ao z{WcOq@BYf=(ZHr7yG)aokA^&@RMuSh@x#Il{R4Z^g zM$6@#Gfa*C4jE9f!s+#4Q0k3U<<^|DB*%0}9QWI&&^CU7NO#t>@ zjQ=pg*NgH?_hF0HI0IvUHh3AKZFr2k-)=cCq3ulSmVoiMrfg}n>-~5J2W`W$xg$+i zj&L@qB4{+~pKG4KcE`Ped(0d!a+2p%f~cBs*EzGM+1mY+U)s&fC3+bV8^=CXFCEou zJsP~sext>1CSkMa@(1eq-VbDVcNKt!p#&cR1sz^EpE#w`HT9<1ExmB zENZK<#?gutWho2k4|-Gx_4wqzc*=|v{q|BLuRmJ^j%j+P9(Av#v8+6oDp5)+O2etb z-{jlCLLc8RLznNJ`C=cO4NVr2mHF%y)D6&TxQGNj7vUA+hJMJx=t%45#h> zj|6_1?p-f}Oy4=;HC-Rbhftqu;baUBcHocbKZ8E}FL*V+oWeKDZ=`R)p!-OypGF#c sbyID@5>7s$R&1-+KH%02B`TyZ`_I literal 34071 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 KsdTk#fBY9W=`;@j diff --git a/microsoft-edge/webview2/index.md b/microsoft-edge/webview2/index.md index 616aa65cd0..f3d2c49717 100644 --- a/microsoft-edge/webview2/index.md +++ b/microsoft-edge/webview2/index.md @@ -105,7 +105,7 @@ The WebView2 control, WebView2 SDK, and WebView2 Runtime have the following role #### Relationship between the WebView2 control, SDK, and Runtime -![Diagram: Relationship between the WebView2 control, SDK, and Runtime](./index-images/wv2-control-sdk-runtime.png) +![Diagram: Relationship between the WebView2 control, SDK, and Runtime](./index-images/control-sdk-runtime.png) Control: * WebView2 control - in the app layout; hosts the Runtime. @@ -162,7 +162,7 @@ The SDK includes the JavaScript API? The JavaScript API is the [WebView2Script * Native-side code calls platform APIs and WebView2 APIs * Web-side JavaScript code calls WebView2Script APIs & exposed native-side APIs -![Design architecture of a WebView2 app](./index-images/wv2-app-design.png) +![Design architecture of a WebView2 app](./index-images/app-design.png) @@ -233,9 +233,9 @@ There are several ways to distribute the WebView2 Runtime with your app: | Name of distribution approach | Description | Notes | |---|---|---| -| Link to the Evergreen bootstrapper | In your app's installer, link to the Evergreen Runtime bootstrapper. Have your app's installer use this link to programmatically download and install the Evergreen bootstrapper onto the user's machine. Then invoke the bootstrapper to install the appropriate Runtime for the user's device. | For users who have an online connection. The Evergreen bootstrapper is a tiny installer that installs the correct Runtime for the user's CPU, using an internet connection. | -| Package the Evergreen bootstrapper | Download the Evergreen bootstrapper to your Dev machine. Package and distribute the Evergreen bootstrapper with your app installer. Then your app installer invokes the bootstrapper to install the Runtime on the user's machine. | For users who don't have a reliable connection to the bootstrapper CDN site. | -| Package the Evergreen standalone installer | Download the Evergreen standalone installer to your Dev machine, and package it with your app. Package the Evergreen standalone installer with your app's installer. Your app's installer then invokes the Evergreen standalone installer to install the Runtime on the user's device. | For offline users. A large, standalone Evergreen Runtime installer for offline users, that includes the Evergreen Runtime. | +| Link to the Evergreen Runtime bootstrapper | In your app's installer, link to the Evergreen Runtime bootstrapper. Have your app's installer use this link to programmatically download and install the Evergreen bootstrapper onto the user's machine. Then invoke the bootstrapper to install the appropriate Runtime for the user's device. | For users who have an online connection. The Evergreen bootstrapper is a tiny installer that installs the correct Runtime for the user's CPU, using an internet connection. | +| Package the Evergreen Runtime bootstrapper | Download the Evergreen bootstrapper to your Dev machine. Package and distribute the Evergreen bootstrapper with your app installer. Then your app installer invokes the bootstrapper to install the Runtime on the user's machine. | For users who don't have a reliable connection to the bootstrapper CDN site. | +| Package the Evergreen Runtime standalone installer | Download the Evergreen standalone installer to your Dev machine, and package it with your app. Package the Evergreen standalone installer with your app's installer. Your app's installer then invokes the Evergreen standalone installer to install the Runtime on the user's device. | For offline users. A large, standalone Evergreen Runtime installer for offline users, that includes the Evergreen Runtime. | | Package a fixed-version Runtime | Download a version-specific, CPU-specific Runtime to your Dev machine. Package and distribute the fixed-version Runtime with your app's installer. Your app's installer installs the specific fixed-version Runtime on the user's machine. | Specialty case, for when you need specific version of the APIs; avoids testing whether latest APIs are available. | The above approaches are listed in the same sequence as in the [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section) section of the **Microsoft Edge WebView2** page, from lightweight to heavyweight approaches. Favor the lightweight approaches; use a heavyweight approach if required by a specialized scenario. From edcf400546d2d3e5a166e27b14b46bc317a33035 Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Wed, 8 Mar 2023 20:12:17 -0800 Subject: [PATCH 07/31] native-side/web-side code --- .../webview2/index-images/full-diagram.png | Bin 34612 -> 36744 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/microsoft-edge/webview2/index-images/full-diagram.png b/microsoft-edge/webview2/index-images/full-diagram.png index a9c17f826ab28e29300e3a7bc82af38e77515e02..ae1022651f2533482712549b9cc102287d108b13 100644 GIT binary patch literal 36744 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 sbyID@5>7s$R&1-+KH%02B`TyZ`_I From d76e62ca5f7207fb86f478b6c2d6c95ffcff6af6 Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Thu, 9 Mar 2023 19:05:11 -0800 Subject: [PATCH 08/31] Reorg sections --- microsoft-edge/toc.yml | 10 +- microsoft-edge/webview2/how-to/javascript.md | 19 ++- microsoft-edge/webview2/index.md | 160 ++++++++++--------- 3 files changed, 101 insertions(+), 88 deletions(-) diff --git a/microsoft-edge/toc.yml b/microsoft-edge/toc.yml index ab631fd7ec..c4f53f9256 100644 --- a/microsoft-edge/toc.yml +++ b/microsoft-edge/toc.yml @@ -1146,11 +1146,11 @@ - name: Win32 sample app href: webview2/samples/webview2apissample.md - displayName: WebView2APISample, SampleApps, Win32 sample app # repo dir names, top-of-page title + displayName: WebView2APISample, SampleApps # repo dir names - name: Win32 sample app with Visual Composition href: webview2/samples/webview2samplewincomp.md - displayName: WebView2SampleWinComp, Win32 sample app with Visual Composition # repo dir name, top-of-page title + displayName: WebView2SampleWinComp # repo dir name - name: Win32 sample WebView2Browser href: webview2/samples/webview2browser.md @@ -1158,7 +1158,7 @@ - name: WinUI 2 (UWP) sample app href: webview2/samples/webview2_sample_uwp.md - displayName: webview2_sample_uwp, WinUI 2 (UWP) sample app # repo dir name, top-of-page title + displayName: webview2_sample_uwp # repo dir name # pending, July 26 2022 # - name: WinUI 3 sample app @@ -1167,11 +1167,11 @@ - name: WPF sample app href: webview2/samples/webview2wpfbrowser.md - displayName: WebView2WpfBrowser, WPF sample app # repo dir name, top-of-page title + displayName: WebView2WpfBrowser # repo dir name - name: WPF sample app with CDP href: webview2/samples/wv2cdpextensionwpfsample.md - displayName: WV2CDPExtensionWPFSample, WPF sample app with CDP # repo dir name, top-of-page title + displayName: WV2CDPExtensionWPFSample, WPF sample app with CDP extension # repo dir name, top-of-page title - name: WinForms sample app href: webview2/samples/webview2windowsformsbrowser.md diff --git a/microsoft-edge/webview2/how-to/javascript.md b/microsoft-edge/webview2/how-to/javascript.md index 98814144d8..968d0a120b 100644 --- a/microsoft-edge/webview2/how-to/javascript.md +++ b/microsoft-edge/webview2/how-to/javascript.md @@ -23,7 +23,7 @@ This article assumes that you already have a working project. If you don't have ## Basic WebView2 functions -Use the following functions to begin embedding JavaScript in your WebView2 app. +Use the following functions to embed JavaScript in the native-side code of your WebView2 app: | API | Description | | --- | --- | @@ -34,27 +34,27 @@ Use the following functions to begin embedding JavaScript in your WebView2 app. ## Scenario: ExecuteScript JSON-encoded results -Because the result of `ExecuteScriptAsync` is JSON-encoded, if the result of evaluating the JavaScript is a string, you will receive a JSON-encoded string and not the value of the string. +Because the result of `ExecuteScriptAsync` is JSON-encoded, if the result of evaluating the JavaScript is a string, your native-side code will receive a JSON-encoded string, not the value of the string. -For example, the following code executes script that results in a string. The resulting string includes a quote at the start, a quote at the end, and escaping slashes: +For example, the following native-side code executes script that results in a string. The resulting string includes a quote at the start, a quote at the end, and escaping slashes: ```csharp string result = await coreWebView2.ExecuteScriptAsync(@"'example'"); Debug.Assert(result == "\"example\""); ``` -The script returns a string that `ExecuteScript` JSON-encodes for you. If you call `JSON.stringify` from your script, then the result is doubly encoded as a JSON string the value of which is a JSON string. +The script returns a string that `ExecuteScript` JSON-encodes for you. If you call `JSON.stringify` from your script (in your web-side code), then the result is doubly encoded, as a JSON string the value of which is a JSON string. -Only the properties that are directly in the result are included in the JSON-encoded object; inherited properties aren't included in the JSON-encoded object. Most DOM objects inherit all properties, so you'll need to explicitly copy their values into another object to return. For example: +Only the properties that are directly in the result are included in the JSON-encoded object; inherited properties aren't included in the JSON-encoded object. Most DOM objects inherit all properties, so your web-side code must explicitly copy the properties' values into another object and return that object to your native-side code. For example: Script | Result --- | --- `performance.memory` | `{}` `(() => { const {totalJSHeapSize, usedJSHeapSize} = performance.memory; return {totalJSHeapSize, usedJSHeapSize}; })();` | `{"totalJSHeapSize":4434368,"usedJSHeapSize":2832912}` -When we return just `performance.memory` we don't see any of its properties in the result because all properties are inherited. If instead, we copy particular property values from `performance.memory` into our own new object to return, then we see those properties in the result. +When we return just `performance.memory`, we don't see any of its properties in the result, because all properties are inherited. If instead, the web-side code copies particular property values from `performance.memory` into a new object and returns that object, then the native-side code sees those properties in the result. -When executing script via `ExecuteScriptAsync` that script is run in the global context. It helps to have your script in an anonymous function so that any variables you define aren't polluting the global context. +When executing script via `ExecuteScriptAsync`, that script is run in the global context. It helps to have your script in an anonymous function, so that any variables you define aren't polluting the global context. For example: @@ -67,11 +67,14 @@ For example: ## Scenario: Running a dedicated script file In this section, you access a dedicated JavaScript file from your WebView2 control. + + > [!NOTE] > Although writing JavaScript inline may be efficient for quick JavaScript commands, you lose JavaScript color themes and line formatting that makes it difficult to write large sections of code in Visual Studio. -To solve the problem, create a separate JavaScript file with your code, and then pass a reference to that file using the `ExecuteScriptAsync` parameters. +To solve the problem, create a separate JavaScript file that contains your code, and then pass a reference to that file by using the `ExecuteScriptAsync` parameters. 1. Create a `.js` file in your project, and add the JavaScript code that you want to run. For example, create a file called `script.js`. diff --git a/microsoft-edge/webview2/index.md b/microsoft-edge/webview2/index.md index f3d2c49717..e7e936c8a1 100644 --- a/microsoft-edge/webview2/index.md +++ b/microsoft-edge/webview2/index.md @@ -21,7 +21,7 @@ To start building a WebView2 app, see [Get started with WebView2](get-started/ge -## Full diagram of WebView2 +## High-level view of app development that includes WebView2 control instances Developing a WebView2 app has the following high-level areas: * Dev machine @@ -33,14 +33,12 @@ Developing a WebView2 app has the following high-level areas: -## Abbreviated terminology for WebView2 components - -The WebView2 documentation uses the following shorthand terms. +## Top-level WebView2 components | Shorthand term | Complete term | |---|---| | _App_ | Any app, for any framework or platform, that includes an instance of the WebView2 control. An app can have areas that use a WebView2 control instance, and other areas that don't use the control. | -| _SDK_ | The WebView2 SDK. | +| _SDK_ | The WebView2 SDK. When part of your app uses WebView2, that code can call these APIs in conjunction with instances of the WebView2 control. The Release SDK ships to users, and contains only stable APIs. The Prerelease SDK is only used by Devs, and contains some experimental APIs. | | _Control_ | An instance of the WebView2 control. In an app, typically appears as a rectangular area than contains web content. | | _Runtime_ | The WebView2 Runtime, which is a browser engine. Installed on user machines, as well as Dev and test machines. | | _Preview channel_ | A preview channel of Microsoft Edge, either Beta (near-stable), Dev, or Canary (the very latest build; daily). For Dev and test machines only, not user machines. | @@ -102,9 +100,6 @@ The WebView2 control, WebView2 SDK, and WebView2 Runtime have the following role | WebView2 Runtime | On Dev's test machine and on user machines. Or, instead of using the Runtime, Dev can use a preview channel of Microsoft Edge for local testing, when using the Prerelease SDK. | - -#### Relationship between the WebView2 control, SDK, and Runtime - ![Diagram: Relationship between the WebView2 control, SDK, and Runtime](./index-images/control-sdk-runtime.png) Control: @@ -121,8 +116,6 @@ Runtime: * Runtime - -#### WebView2 control, Runtime, and SDK ![WebView2 control, Runtime, and SDK](./index-images/control-runtime-sdk.png) @@ -156,25 +149,29 @@ The SDK includes the JavaScript API? The JavaScript API is the [WebView2Script ## Design architecture of a WebView2 app -* Host app -* Native-side code calls platform APIs and WebVieww2 APIs -* WebView2 control instance -* Native-side code calls platform APIs and WebView2 APIs -* Web-side JavaScript code calls WebView2Script APIs & exposed native-side APIs +A host app contains the following categories of code and components: +* Native-side code calls platform APIs and WebView2 APIs +* WebView2 control instance +* Native-side code calls platform APIs and WebView2 APIs +* Web-side JavaScript code calls WebView2Script APIs & exposed native-side APIs ![Design architecture of a WebView2 app](./index-images/app-design.png) + +Two-way code: +* Call web-side code from native-side code +* Call native-side code from web-side code - -## Development machine vs. user machine - -How the WebView2 SDK is laid out in relation to how the WebView2 RunTime is laid out. - -There are a few differences for the Runtime and for the SDK across the frameworks (platforms, languages); for example, for WinRT. + +Categories of code: +* Native-side app code that isn't WebView2-related. +* Native-side app code that's WebView2-related. +* Web-side code that isn't WebView2-related. +* Web-side code that's WebView2-related. -## App on the Development machine and user machine +## Development machine vs. user machine Here are the differences between the Dev machine and User machine, for which components are used. @@ -190,40 +187,6 @@ Here are the differences between the Dev machine and User machine, for which com | Control | Placed on layout designer in Visual Studio. | Areas (regions) of the app containing web content. | - -## Prerelease SDK and preview channel, or Release SDK and Runtime - -Here's the relation between: -* Prerelease version of wv2 SDK vs. Release version of wv2 SDK. -* Preview channel of Microsoft Edge vs. the WebView2 Runtime. - - - -#### For a prerelease version of your app - -To develop the prerelease version of your app: -* On your Dev machine, in the Visual Studio project, install a **Prerelease** version of the `Microsoft.Web.WebView2` SDK NuGet package. Write code that uses the **experimental** APIs (and stable APIs). -* On your Dev machine, install and use a preview channel of Microsoft Edge. - -To distribute your prerelease app to your test machine: -* On your test machine, install a preview channel of Microsoft Edge. - - - -#### For a release version of your app - -To develop the release version of your app: -* On your Dev machine, in the Visual Studio project, install a **Release** version of the `Microsoft.Web.WebView2` SDK NuGet package. Write code that uses only the **stable** APIs. -* On your Dev machine, use the WebView2 Runtime (part of the SDK package). - -To distribute your release app to users, do any of the following: -* Use one of several approaches to install the Runtime on the user's machine. - - -See also: -* [Understand the different WebView2 SDK versions](./concepts/versioning.md) - Either use a prerelease SDK with a preview channel of Microsoft Edge, or use a release SDK with the WebView2 Runtime. - - ## Ways to distribute, install, and update the Runtime on the user's machine @@ -255,25 +218,7 @@ The WebView2 control acts as an intermediary for communication between the host -## Prerelease SDK with preview browser channel, or Release SDK with Runtime - -| Version | Renderer platform | Description | -|:---|:---|:---| -| Prerelease SDK | A preview channel of Microsoft Edge (Beta, Dev, or Canary) | For experimenting and testing your app against upcoming changes, on your Dev machines. | -| Release SDK | The WebView2 Runtime | For shipping your app to end users. | - -* A Prerelease version of the WebView2 SDK uses a preview channel of Microsoft Edge (Beta, Dev, or Canary). -* A Release version of the WebView2 SDK uses the WebView2 Runtime. - - -See also: -* [Understanding the options at the Runtime download page](./concepts/distribution.md#understanding-the-options-at-the-runtime-download-page) in _Distribute your app and the WebView2 Runtime_. -* [Prerelease and release SDKs for WebView2](./concepts/versioning.md) -* [Distribute your app and the WebView2 Runtime](./concepts/distribution.md) - - - -## Supported platforms +## Frameworks and coding languages supported The following programming environments are supported: @@ -285,6 +230,10 @@ The following programming environments are supported: * [WinUI 2.0](/windows/apps/winui/winui2/) * [WinUI 3.0](/windows/apps/winui/winui3/) + + +## Windows versions supported + WebView2 apps can run on the following versions of Windows: * Windows 11 @@ -313,6 +262,67 @@ See also: * [Microsoft Edge and WebView2 ending support for Windows 7 and Windows 8/8.1](https://blogs.windows.com/msedgedev/2022/12/09/microsoft-edge-and-webview2-ending-support-for-windows-7-and-windows-8-8-1/) + +## Prerelease SDK with preview browser channel, or Release SDK with Runtime + +| Version | Renderer platform | Description | +|:---|:---|:---| +| Prerelease SDK | A preview channel of Microsoft Edge (Beta, Dev, or Canary) | For experimenting and testing your app against upcoming changes, on your Dev machines. | +| Release SDK | The WebView2 Runtime | For shipping your app to end users. | + +* A Prerelease version of the WebView2 SDK uses a preview channel of Microsoft Edge (Beta, Dev, or Canary). +* A Release version of the WebView2 SDK uses the WebView2 Runtime. + + +See also: +* [Understanding the options at the Runtime download page](./concepts/distribution.md#understanding-the-options-at-the-runtime-download-page) in _Distribute your app and the WebView2 Runtime_. +* [Prerelease and release SDKs for WebView2](./concepts/versioning.md) +* [Distribute your app and the WebView2 Runtime](./concepts/distribution.md) + + + +## Using a Prerelease SDK and experimental APIs with a Preview channel of Microsoft Edge + +To develop the prerelease version of your app using experimental APIs, or to test your app against upcoming SDK changes: + +* On your Dev machine, in the Visual Studio project, install a **Prerelease** version of the `Microsoft.Web.WebView2` SDK NuGet package. Write code that uses the **experimental** APIs (and stable APIs). +* On your Dev machine, install and use a preview channel of Microsoft Edge. + +To distribute your prerelease app to your test machine: +* On your test machine, install a preview channel of Microsoft Edge. + +See also: +* [Understand the different WebView2 SDK versions](./concepts/versioning.md) - Either use a prerelease SDK with a preview channel of Microsoft Edge, or use a release SDK with the WebView2 Runtime. + + + +## Using a Release SDK and stable APIs with the Runtime + +To develop the release version of your app: +* On your Dev machine, in the Visual Studio project, install a **Release** version of the `Microsoft.Web.WebView2` SDK NuGet package. Write code that uses only the **stable** APIs. +* On your Dev machine, use the WebView2 Runtime (part of the SDK package). + +The WebView2 Runtime is like a browser engine for use as a component in your app. + +There are several ways to distribute your app and the Runtime to users. See [Ways to distribute, install, and update the Runtime on the user's machine](#ways-to-distribute-install-and-update-the-runtime-on-the-users-machine) above. + + +See also: +* [Understand the different WebView2 SDK versions](./concepts/versioning.md) - Either use a prerelease SDK with a preview channel of Microsoft Edge, or use a release SDK with the WebView2 Runtime. + + + +## How the WebView2 SDK is laid out in relation to how the WebView2 RunTime is laid out + +todo: what's the intention here? + + + +## Differences in the Runtime and the SDK across the frameworks + +todo + + ## Resources From 84617dfe9878dc319f66d5e8b3860ec45fc00415 Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Fri, 10 Mar 2023 14:17:55 -0800 Subject: [PATCH 09/31] Move diagram down, detail upper right --- .../webview2/index-images/full-diagram.png | Bin 36744 -> 39460 bytes microsoft-edge/webview2/index.md | 50 +++++++++--------- 2 files changed, 25 insertions(+), 25 deletions(-) diff --git a/microsoft-edge/webview2/index-images/full-diagram.png b/microsoft-edge/webview2/index-images/full-diagram.png index ae1022651f2533482712549b9cc102287d108b13..33e7912e8717d0de340e8da2412834a34d9b1ec6 100644 GIT binary patch literal 39460 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 -## High-level view of app development that includes WebView2 control instances - -Developing a WebView2 app has the following high-level areas: -* Dev machine -* Distribute the app and Runtime -* User machine -* Resources - -![Full diagram of WebView2](./index-images/full-diagram.png) - - - -## Top-level WebView2 components - -| Shorthand term | Complete term | -|---|---| -| _App_ | Any app, for any framework or platform, that includes an instance of the WebView2 control. An app can have areas that use a WebView2 control instance, and other areas that don't use the control. | -| _SDK_ | The WebView2 SDK. When part of your app uses WebView2, that code can call these APIs in conjunction with instances of the WebView2 control. The Release SDK ships to users, and contains only stable APIs. The Prerelease SDK is only used by Devs, and contains some experimental APIs. | -| _Control_ | An instance of the WebView2 control. In an app, typically appears as a rectangular area than contains web content. | -| _Runtime_ | The WebView2 Runtime, which is a browser engine. Installed on user machines, as well as Dev and test machines. | -| _Preview channel_ | A preview channel of Microsoft Edge, either Beta (near-stable), Dev, or Canary (the very latest build; daily). For Dev and test machines only, not user machines. | - - ## Hybrid app approach @@ -88,6 +64,30 @@ Hybrid apps, in the middle of this spectrum, allow you to enjoy the best of both * **Incremental adoption**. Add web components piece-by-piece to your app. + +## High-level view of app development that includes WebView2 control instances + +Developing a WebView2 app has the following high-level areas: +* Dev machine +* Distribute the app and Runtime +* User machine +* Resources + +![Full diagram of WebView2](./index-images/full-diagram.png) + + + +## Top-level WebView2 components + +| Shorthand term | Complete term | +|---|---| +| _App_ | Any app, for any framework or platform, that includes an instance of the WebView2 control. An app can have areas that use a WebView2 control instance, and other areas that don't use the control. | +| _SDK_ | The WebView2 SDK. When part of your app uses WebView2, that code can call these APIs in conjunction with instances of the WebView2 control. The Release SDK ships to users, and contains only stable APIs. The Prerelease SDK is only used by Devs, and contains some experimental APIs. | +| _Control_ | An instance of the WebView2 control. In an app, typically appears as a rectangular area than contains web content. | +| _Runtime_ | The WebView2 Runtime, which is a browser engine. Installed on user machines, as well as Dev and test machines. | +| _Preview channel_ | A preview channel of Microsoft Edge, either Beta (near-stable), Dev, or Canary (the very latest build; daily). For Dev and test machines only, not user machines. | + + ## The WebView2 control, SDK, and Runtime @@ -312,7 +312,7 @@ See also: -## How the WebView2 SDK is laid out in relation to how the WebView2 RunTime is laid out +## How the WebView2 SDK is laid out in relation to how the WebView2 Runtime is laid out todo: what's the intention here? From 93be2bffbe9b243f0b85a42f5efa86711bf8c2d2 Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Fri, 10 Mar 2023 14:38:18 -0800 Subject: [PATCH 10/31] linkfix --- microsoft-edge/webview2/code-samples-links.md | 2 +- microsoft-edge/webview2/index.md | 26 ++++++++++++------- 2 files changed, 17 insertions(+), 11 deletions(-) diff --git a/microsoft-edge/webview2/code-samples-links.md b/microsoft-edge/webview2/code-samples-links.md index 308f1198ff..36ecf3d2f0 100644 --- a/microsoft-edge/webview2/code-samples-links.md +++ b/microsoft-edge/webview2/code-samples-links.md @@ -10,7 +10,7 @@ ms.date: 08/29/2022 --- # WebView2 Sample apps -This page is specifically about the code-rich platform sample apps within the Samples repo. For the finished Getting Started article projects (minimal code) which are also at the Samples repo, see [Getting Started tutorials](https://learn.microsoft.com/en-us/microsoft-edge/webview2/get-started/get-started). +This page is specifically about the code-rich platform sample apps within the Samples repo. For the finished Getting Started article projects (minimal code) which are also at the Samples repo, see [Getting Started tutorials](./get-started/get-started.md). Sample apps that use WebView2 are available in the [WebView2Samples repo](https://github.com/MicrosoftEdge/WebView2Samples/tree/main/SampleApps), for various frameworks or platforms. diff --git a/microsoft-edge/webview2/index.md b/microsoft-edge/webview2/index.md index 6caa372f4b..64b4f8d071 100644 --- a/microsoft-edge/webview2/index.md +++ b/microsoft-edge/webview2/index.md @@ -116,7 +116,6 @@ Runtime: * Runtime - ![WebView2 control, Runtime, and SDK](./index-images/control-runtime-sdk.png) This diagram has the following top-level items: @@ -124,14 +123,15 @@ This diagram has the following top-level items: * Runtime * SDK - +Control: * WebView2 control - eg. add as an XML element +Runtime: * WebView2 Runtime (a browser used as a component) - Required; runs the WebView2 control * WebView2 Runtime - runs the WebView2 control * Evergreen Runtime, or Fixed-version Runtime (a browser used as a component of an app) * Evergreen Runtime, or Fixed-version Runtime - + WebView2 SDK * Supported platforms: .NET, WinRT, Win32 * Preview channel of Microsoft Edge @@ -141,9 +141,12 @@ APIs * Prerelease SDK with experimental APIs (to test locally) * JavaScript API (to support communication between web-side code & the host application) -You periodically download the latest SDK from NuGet. NuGet links are in [Release Notes for the WebView2 SDK](./release-notes). +You periodically download the latest SDK from NuGet. NuGet links are in [Release Notes for the WebView2 SDK](./release-notes.md). + +The SDK includes the JavaScript API, which is in the `WebView2Script` package. -The SDK includes the JavaScript API? The JavaScript API is the [WebView2Script package](https://learn.microsoft.com/microsoft-edge/webview2/reference/javascript/). +See also: +* [WebView2 API Reference](./webview2-api-reference.md) @@ -218,7 +221,11 @@ The WebView2 control acts as an intermediary for communication between the host -## Frameworks and coding languages supported +## Supported platforms + + + +#### Frameworks and coding languages supported The following programming environments are supported: @@ -231,8 +238,8 @@ The following programming environments are supported: * [WinUI 3.0](/windows/apps/winui/winui3/) - -## Windows versions supported + +#### Windows versions supported WebView2 apps can run on the following versions of Windows: @@ -246,8 +253,7 @@ WebView2 apps can run on the following versions of Windows: * Windows Server 2016 - -#### Windows 7 and 8 +###### Windows versions supported with limitations WebView2 Runtime version 109 is the final version that supports the following versions of Windows. WebView2 Runtime and SDK version 110.0.1519.0 and higher don't support these operating systems. From 1e4ecca56c5cf46659b9a2ff78f69fb240f03b1e Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Fri, 10 Mar 2023 14:47:24 -0800 Subject: [PATCH 11/31] linkfix2 --- .../concepts/windowed-vs-visual-hosting.md | 2 +- .../webview2/index-images/full-diagram.png | Bin 39460 -> 39498 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/microsoft-edge/webview2/concepts/windowed-vs-visual-hosting.md b/microsoft-edge/webview2/concepts/windowed-vs-visual-hosting.md index d2dad11e87..2ffa9d8772 100644 --- a/microsoft-edge/webview2/concepts/windowed-vs-visual-hosting.md +++ b/microsoft-edge/webview2/concepts/windowed-vs-visual-hosting.md @@ -53,7 +53,7 @@ Key compatibility limitations include the operating system and rendering in fram Windows 7 and Windows 8 can only do windowed hosting, not visual hosting. -See [Windows 7 and 8](../index.md#windows-7-and-8) in _Introduction to Microsoft Edge WebView2_. +See [Windows versions supported with limitations](../index.md#windows-versions-supported-with-limitations) in _Introduction to Microsoft Edge WebView2_. diff --git a/microsoft-edge/webview2/index-images/full-diagram.png b/microsoft-edge/webview2/index-images/full-diagram.png index 33e7912e8717d0de340e8da2412834a34d9b1ec6..37553291c553668a7b243f0d30ae3858df420d7f 100644 GIT binary patch delta 32311 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 Xz7l`l%dfSJa!vc9{)K$l?Fat@*ntZ2 delta 32032 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 iF;K4=@PMIfBeQA} Date: Fri, 10 Mar 2023 16:44:27 -0800 Subject: [PATCH 12/31] Applied h2/h4/h6 pattern in wv2 docs --- microsoft-edge/webview2/get-started/win32.md | 13 +- microsoft-edge/webview2/get-started/wpf.md | 14 +- .../how-to/chromium-devtools-protocol.md | 3 +- .../how-to/communicate-btwn-web-native.md | 10 +- .../webview2/how-to/context-menus.md | 46 +- .../how-to/debug-visual-studio-code.md | 13 +- .../webview2/how-to/debug-visual-studio.md | 4 +- .../webview2/how-to/machine-setup.md | 16 +- .../webview2/how-to/publish-uwp-app-store.md | 13 +- .../webview2/how-to/set-preview-channel.md | 41 +- microsoft-edge/webview2/how-to/webdriver.md | 20 +- .../webview2/how-to/webresourcerequested.md | 70 +-- microsoft-edge/webview2/release-notes.md | 403 +++++++++++------- microsoft-edge/webview2/roadmap.md | 18 +- .../webview2/samples/webview2apissample.md | 38 +- .../webview2/samples/webview2browser.md | 33 +- 16 files changed, 481 insertions(+), 274 deletions(-) diff --git a/microsoft-edge/webview2/get-started/win32.md b/microsoft-edge/webview2/get-started/win32.md index 833a40e992..b2795db963 100644 --- a/microsoft-edge/webview2/get-started/win32.md +++ b/microsoft-edge/webview2/get-started/win32.md @@ -25,6 +25,7 @@ This tutorial starts by opening an existing Win32 app project that has WebView2 This tutorial does not have you create a new project; you don't use a project template in Visual Studio to create a new project. Instead, you start with the completed project that's in the repo. + #### Completed project The completed tutorial project is available in the **WebView2Samples** repo: @@ -98,7 +99,8 @@ If Visual Studio Installer prompts you to install a Workload: The Installer closes. -### Retarget Projects + +#### Retarget Projects The Visual Studio **Review Solution Actions** dialog might appear, prompting you whether you want to **Retarget Projects**: @@ -127,7 +129,8 @@ The above screenshot shows some WebView2 code (`#include "WebView2.h"`), that's -### Set the solution to use the Win10 SDK and Visual Studio toolset + +#### Set the solution to use the Win10 SDK and Visual Studio toolset This step is only needed for older versions of Visual Studio, so it's likely you can skip it. But you can take a look at this UI in any case: @@ -430,7 +433,8 @@ Now to do the above, in the callback, you'll: 1. Select **File** > **Save All** (`Ctrl`+`Shift`+`S`) to save the project. -### Build your Bing sample app + +#### Build your Bing sample app 1. Press **F5** to build and run the project. @@ -514,7 +518,8 @@ The injected JavaScript is run with specific timing: -### If code must be run in order, use callbacks + +#### If code must be run in order, use callbacks The script injection APIs (and some other WebView2 APIs) are asynchronous. So, if code must be run in a specific order, you should use callbacks. diff --git a/microsoft-edge/webview2/get-started/wpf.md b/microsoft-edge/webview2/get-started/wpf.md index 79d9095b50..e9ff9871ae 100644 --- a/microsoft-edge/webview2/get-started/wpf.md +++ b/microsoft-edge/webview2/get-started/wpf.md @@ -15,6 +15,7 @@ This article covers how to set up your development tools and create an initial W In this tutorial, you use the **WPF Application** or **WPF App (.NET Framework)** project template to create a WPF app, and then install the WebView2 SDK for the project to add WebView2. + #### Completed project A completed version of this tutorial project is available in the **WebView2Samples** repo: @@ -386,7 +387,9 @@ During webpage navigation, the WebView2 control raises events. The app that host The above diagram shows the event sequence. Navigation events start with a new document. -### Success path + + +#### Success path A successful path includes the full sequence of events: 1. Navigation starting. @@ -398,7 +401,8 @@ A successful path includes the full sequence of events: For more information, see [Navigation events for WebView2 apps](../concepts/navigation-events.md). -### Failure path + +#### Failure path If theres a failure, the failure path proceeds directly from navigation starting, to navigation completed, skipping the intervening events. @@ -409,12 +413,14 @@ When an error occurs, the following events are raised, and may depend on navigat * `HistoryChanged` -### Redirection + +#### Redirection If an HTTP redirect occurs, there are multiple `NavigationStarting` events in a row. -### Example demonstrating navigation events + +#### Example demonstrating navigation events To demonstrate how to use the events, register a handler for `NavigationStarting` that cancels any non-HTTPS requests, as follows. diff --git a/microsoft-edge/webview2/how-to/chromium-devtools-protocol.md b/microsoft-edge/webview2/how-to/chromium-devtools-protocol.md index f49556d409..89b453a7d3 100644 --- a/microsoft-edge/webview2/how-to/chromium-devtools-protocol.md +++ b/microsoft-edge/webview2/how-to/chromium-devtools-protocol.md @@ -28,7 +28,8 @@ To use the Chrome DevTools Protocol API in a WebView2 app, do either of the foll [Microsoft.Web.WebView2.DevToolsProtocolExtension (Preview)](https://www.nuget.org/packages/Microsoft.Web.WebView2.DevToolsProtocolExtension) is a NuGet package created by the WebView2 team that provides easy access to Chrome DevTools Protocol features. The following examples describe how to use the geolocation functionality in Chrome DevTools Protocol in your WebView2 control. To use other Chrome DevTools Protocol features, you can follow a similar pattern. -### Don't use the preview package in production apps + +#### Don't use the preview package in production apps The [Microsoft.Web.WebView2.DevToolsProtocolExtension](https://www.nuget.org/packages/Microsoft.Web.WebView2.DevToolsProtocolExtension) NuGet package is currently in technical preview. While in preview, refrain from using this NuGet package in production apps. diff --git a/microsoft-edge/webview2/how-to/communicate-btwn-web-native.md b/microsoft-edge/webview2/how-to/communicate-btwn-web-native.md index ba0b0f0ff9..0b21bdb482 100644 --- a/microsoft-edge/webview2/how-to/communicate-btwn-web-native.md +++ b/microsoft-edge/webview2/how-to/communicate-btwn-web-native.md @@ -31,7 +31,9 @@ For detailed steps about cloning the repo, see [WebView2 samples](../code-sample WebView2 controls let you exchange simple messages between web and native sides of an application. You can use data types such as `JSON` or `String` to send messages between the host application and WebView2. -### Send Messages from the host app to WebView2 + + +#### Send Messages from the host app to WebView2 This example shows how the sample app changes the color of text in the front end, based on a message from the host app. @@ -124,7 +126,8 @@ To see messaging in action: That completes the example showing how WebView2 communicates through simple messages. -### Receive message strings via postMessage + +#### Receive message strings via postMessage This example follows the `Receiving Messages` section of the webpage, to change the text of the title bar. The host app receives a message from WebView2 with the new title bar text. @@ -191,7 +194,8 @@ The C++ file handles the title text and communicates it to the host app as a str }).Get(), &m_webMessageReceivedToken)); ``` -### Round-trip messages + +#### Round-trip messages This example follows the `

Round trip

` section of the WebMessage sample page, [ScenarioWebMessage.html](https://github.com/MicrosoftEdge/WebView2Samples/blob/a12bfcc2bc8a1155529c35c7bd4645036f492ca0/SampleApps/WebView2APISample/assets/ScenarioWebMessage.html). This example shows a round-trip message from WebView2 to the host app and back. The host app receives a request from WebView2 and returns the bounds of the active window. diff --git a/microsoft-edge/webview2/how-to/context-menus.md b/microsoft-edge/webview2/how-to/context-menus.md index e48218695a..d1652d8335 100644 --- a/microsoft-edge/webview2/how-to/context-menus.md +++ b/microsoft-edge/webview2/how-to/context-menus.md @@ -46,7 +46,7 @@ When the user selects a command from your custom context menu, your app needs to You can add default menu items and/or custom menu items to a custom context menu. -# [C#](#tab/csharp) +##### [C#](#tab/csharp) To display a custom context menu that contains your desired menu items, use the data provided in the `CoreWebView2ContextMenuRequestedEventArgs` of the `CoreWebView2` [ContextMenuRequested Event](/dotnet/api/microsoft.web.webview2.core.corewebview2.contextmenurequested). For this case, you specify `Handled` to be `true`, and request a deferral. @@ -89,7 +89,7 @@ The `MenuItems` property of `CoreWebView2ContextMenuRequestedEventArgs` provides * `Submenu` -# [C++](#tab/cpp) +##### [C++](#tab/cpp) To display a custom context menu that contains your desired menu items, use the data provided in [ICoreWebView2ContextMenuRequestedEventArgs](/microsoft-edge/webview2/reference/win32/icorewebview2contextmenurequestedeventargs). For this case, you specify `Handled` to be `true`, and request a deferral. @@ -140,7 +140,7 @@ Iterate through a list of `ICoreWebView2ContextMenuItem` items, adding an `ICore The following sample presents the WebView2 context menu in the Win32/WPF context menu format. -# [C#](#tab/csharp) +##### [C#](#tab/csharp) ```csharp webView.CoreWebView2.ContextMenuRequested += delegate (object sender, @@ -195,7 +195,7 @@ IList menuList, ItemsControl cm) } ``` -# [C++](#tab/cpp) +##### [C++](#tab/cpp) ```cpp m_webView2_4 = m_webView.try_query(); @@ -373,12 +373,13 @@ You can: * Add custom menu items to a default context menu, as shown below in "Adding custom menu items to a default context menu". -### Adding custom menu items to a default context menu + +#### Adding custom menu items to a default context menu To add custom menu items to the default context menu, use the following API items. -# [C#](#tab/csharp) +##### [C#](#tab/csharp) * **[CoreWebView2 Class](/dotnet/api/microsoft.web.webview2.core.corewebview2)** * [ContextMenuRequested Event](/dotnet/api/microsoft.web.webview2.core.corewebview2.contextmenurequested) @@ -400,7 +401,7 @@ To add custom menu items to the default context menu, use the following API item * [CreateContextMenuItem Method](/dotnet/api/microsoft.web.webview2.core.corewebview2environment.createcontextmenuitem) -# [C++](#tab/cpp) +##### [C++](#tab/cpp) * **[ICoreWebView2_11](/microsoft-edge/webview2/reference/win32/icorewebview2_11)** * [add_ContextMenuRequested](/microsoft-edge/webview2/reference/win32/icorewebview2_11#add_contextmenurequested) @@ -431,7 +432,7 @@ To add custom menu items to the default context menu, use the following API item The following example adds a **Display Page Uri** command to the WebView2 context menu. -# [C#](#tab/csharp) +##### [C#](#tab/csharp) ```csharp webView.CoreWebView2.ContextMenuRequested += delegate (object sender, @@ -454,7 +455,7 @@ webView.CoreWebView2.ContextMenuRequested += delegate (object sender, ``` -# [C++](#tab/cpp) +##### [C++](#tab/cpp) ```cpp m_webView2_4 = m_webView.try_query(); @@ -512,7 +513,7 @@ webview2_4->add_ContextMenuRequested( You can remove default or custom menu items from the default context menu. -# [C#](#tab/csharp) +##### [C#](#tab/csharp) * **[CoreWebView2ContextMenuItem Class](/dotnet/api/microsoft.web.webview2.core.corewebview2contextmenuitem)** * [Name Property](/dotnet/api/microsoft.web.webview2.core.corewebview2contextmenuitem.name) @@ -527,7 +528,7 @@ You can remove default or custom menu items from the default context menu. * `Image` -# [C++](#tab/cpp) +##### [C++](#tab/cpp) * [COREWEBVIEW2_CONTEXT_MENU_TARGET_KIND enum](/microsoft-edge/webview2/reference/win32/icorewebview2#corewebview2_context_menu_target_kind) * `COREWEBVIEW2_CONTEXT_MENU_TARGET_KIND_IMAGE` @@ -561,7 +562,7 @@ You can remove default or custom menu items from the default context menu. The following example removes the **Save image as** command from the WebView2 context menu. -# [C#](#tab/csharp) +##### [C#](#tab/csharp) ```csharp webView.CoreWebView2.ContextMenuRequested += delegate (object sender, @@ -584,7 +585,7 @@ webView.CoreWebView2.ContextMenuRequested += delegate (object sender, ``` -# [C++](#tab/cpp) +##### [C++](#tab/cpp) ```cpp m_webView2_4 = m_webView.try_query(); @@ -661,7 +662,7 @@ When the user selects a custom menu item on a context menu, the WebView2 control When your host app indicates to WebView2 that a user selected a menu item on a context menu, WebView2 then runs the selected command. -# [C#](#tab/csharp) +##### [C#](#tab/csharp) * **[CoreWebView2 Class](/dotnet/api/microsoft.web.webview2.core.corewebview2)** * [ContextMenuRequested Event](/dotnet/api/microsoft.web.webview2.core.corewebview2.contextmenurequested) @@ -670,7 +671,7 @@ When your host app indicates to WebView2 that a user selected a menu item on a c * [AreDefaultContextMenusEnabled Property](/dotnet/api/microsoft.web.webview2.core.corewebview2settings.aredefaultcontextmenusenabled) -# [C++](#tab/cpp) +##### [C++](#tab/cpp) * **[ICoreWebView2_11](/microsoft-edge/webview2/reference/win32/icorewebview2_11)** * [add_ContextMenuRequested](/microsoft-edge/webview2/reference/win32/icorewebview2_11#add_contextmenurequested) @@ -705,7 +706,7 @@ If the user selects a custom menu item, the `CustomMenuItemSelected` event is ra When the user selects a WebView2 context menu command (a default menu item that's in a custom context menu), the host app can optionally report that selection to WebView2 so that WebView2 will invoke the command. -# [C#](#tab/csharp) +##### [C#](#tab/csharp) * **[CoreWebView2ContextMenuItemKind Enum](/dotnet/api/microsoft.web.webview2.core.corewebview2contextmenuitemkind)** * `CheckBox` @@ -715,7 +716,7 @@ When the user selects a WebView2 context menu command (a default menu item that' * `Submenu` -# [C++](#tab/cpp) +##### [C++](#tab/cpp) * [COREWEBVIEW2_CONTEXT_MENU_ITEM_KIND enum](/microsoft-edge/webview2/reference/win32/icorewebview2#corewebview2_context_menu_item_kind) * `COREWEBVIEW2_CONTEXT_MENU_ITEM_KIND_CHECK_BOX` @@ -726,8 +727,9 @@ When the user selects a WebView2 context menu command (a default menu item that' --- + -### Custom menu items +#### Custom menu items If your host app reports a custom menu item as the selected menu item, then the `CustomMenuItemSelected` event will be fired for the custom menu item. @@ -738,13 +740,13 @@ If your host app reports a custom menu item as the selected menu item, then the The `AreDefaultContextMenusEnabled` property controls whether any context menu can be opened. If the WebView2 `AreDefaultContextMenusEnabled` setting is set to `False`, that disables context menus, and the `ContextMenuRequested` event won't be raised, such as when the user right-clicks. -# [C#](#tab/csharp) +##### [C#](#tab/csharp) * **[CoreWebView2Settings Class](/dotnet/api/microsoft.web.webview2.core.corewebview2settings)** * [AreDefaultContextMenusEnabled Property](/dotnet/api/microsoft.web.webview2.core.corewebview2settings.aredefaultcontextmenusenabled) -# [C++](#tab/cpp) +##### [C++](#tab/cpp) * **[ICoreWebView2Settings](/microsoft-edge/webview2/reference/win32/icorewebview2settings)** * [get_AreDefaultContextMenusEnabled](/microsoft-edge/webview2/reference/win32/icorewebview2settings#get_aredefaultcontextmenusenabled) @@ -759,7 +761,7 @@ The `AreDefaultContextMenusEnabled` property controls whether any context menu c -# [C#](#tab/csharp) +##### [C#](#tab/csharp) * **[WebView2 Class](/dotnet/api/microsoft.web.webview2.wpf.webview2)** * [ContextMenu Property](/dotnet/api/microsoft.web.webview2.wpf.webview2.contextmenu) @@ -818,7 +820,7 @@ The `AreDefaultContextMenusEnabled` property controls whether any context menu c -# [C++](#tab/cpp) +##### [C++](#tab/cpp) * **[ICoreWebView2](/microsoft-edge/webview2/reference/win32/icorewebview2)** * **[ICoreWebView2_4](/microsoft-edge/webview2/reference/win32/icorewebview2_4)** diff --git a/microsoft-edge/webview2/how-to/debug-visual-studio-code.md b/microsoft-edge/webview2/how-to/debug-visual-studio-code.md index f93c3c485f..90be440b39 100644 --- a/microsoft-edge/webview2/how-to/debug-visual-studio-code.md +++ b/microsoft-edge/webview2/how-to/debug-visual-studio-code.md @@ -38,7 +38,9 @@ The following code demonstrates launching the app from Visual Studio Code (rathe "webRoot": "${workspaceFolder}/path/to/your/assets" ``` -### Command-line URL parameter passed in + + +#### Command-line URL parameter passed in Visual Studio Code source path mapping now requires an URL, so your app now receives a `url` command-line parameter when it starts. You can safely ignore the `url` parameter, if needed. @@ -88,7 +90,8 @@ Open `launch.json` and complete the following actions to use targeted WebView2 d When debugging your app, you might need to step through the code from the beginning of the rendering process. If you are rendering webpages on sites and you don't have access to the source code, you can use the `?=value` option, because webpages ignore unrecognized parameters. -### Cannot debug two WebView2 controls at the same time + +#### Cannot debug two WebView2 controls at the same time After the first match is found in the URL, the debugger stops. You cannot debug two WebView2 controls at the same time, because the CDP port is shared by all WebView2 controls, and uses a single port number. @@ -215,14 +218,16 @@ If you're debugging Office Add-ins, open the add-in source code in a separate in You might encounter these scenarios when using the debugger. -### Doesn't stop at breakpoint + +#### Doesn't stop at breakpoint If the debugger doesn't stop at the breakpoint, and you have debug output: To solve the issue, confirm that the file with the breakpoint is the same file that's used by the WebView2 control. The debugger doesn't perform source path mapping. -### Can't attach to running process + +#### Can't attach to running process If you can't attach to a running process, and you get a timeout error: diff --git a/microsoft-edge/webview2/how-to/debug-visual-studio.md b/microsoft-edge/webview2/how-to/debug-visual-studio.md index 23ee3bdfa8..6f41cf3c39 100644 --- a/microsoft-edge/webview2/how-to/debug-visual-studio.md +++ b/microsoft-edge/webview2/how-to/debug-visual-studio.md @@ -93,7 +93,9 @@ After doing the above setup, debug your WebView2 app, as follows. ## Troubleshooting -### Virtual source path mapping not supported in Visual Studio 2019 + + +#### Virtual source path mapping not supported in Visual Studio 2019 If you use the WebView2 [SetVirtualHostNameToFolderMapping](/dotnet/api/microsoft.web.webview2.core.corewebview2.setvirtualhostnametofoldermapping) method, the debugger in Visual Studio 2019 doesn't understand the virtual source path mapping, so breakpoints don't work correctly. diff --git a/microsoft-edge/webview2/how-to/machine-setup.md b/microsoft-edge/webview2/how-to/machine-setup.md index 7583ec7645..67287c5474 100644 --- a/microsoft-edge/webview2/how-to/machine-setup.md +++ b/microsoft-edge/webview2/how-to/machine-setup.md @@ -94,12 +94,15 @@ You can download the repo as a `.zip` file, or clone the repo. To clone the `WebView2Samples` repo (or the `WebView2Browser` repo), you must first install git. You can download the repo, as described above, or clone it. -### Install git + + +#### Install git 1. If you want to clone the `WebView2Samples` repo (instead of downloading it), and if git isn't not already installed, [download git](https://git-scm.com/downloads) and install it. -### Obtain the URL for cloning the WebView2Samples repo + +#### Obtain the URL for cloning the WebView2Samples repo 1. Open the [WebView2Samples repo](https://github.com/MicrosoftEdge/WebView2Samples) in a new window or tab. @@ -115,7 +118,8 @@ To clone the `WebView2Samples` repo (or the `WebView2Browser` repo), you must fi Next, clone the GitHub repo to your local drive. To do that, follow the appropriate steps below, for the tool you want to use. -### Cloning the repo by using Visual Studio + +#### Cloning the repo by using Visual Studio If you want to use Visual Studio to clone the GitHub repo to your local drive: @@ -130,7 +134,8 @@ If you want to use Visual Studio to clone the GitHub repo to your local drive: You've cloned the repo to your local drive. Skip to the next major section below. -### Cloning the repo by using GitHub Desktop + +#### Cloning the repo by using GitHub Desktop If you want to use GitHub Desktop to clone the GitHub repo to your local drive: @@ -147,7 +152,8 @@ If you want to use GitHub Desktop to clone the GitHub repo to your local drive: You've cloned the repo to your local drive. Skip to the next major section below. -### Cloning the repo by using Git Bash shell or a command prompt + +#### Cloning the repo by using Git Bash shell or a command prompt If you instead want to clone the repo by using a Git Bash shell or command prompt: diff --git a/microsoft-edge/webview2/how-to/publish-uwp-app-store.md b/microsoft-edge/webview2/how-to/publish-uwp-app-store.md index 9b683be1e9..60e570f94f 100644 --- a/microsoft-edge/webview2/how-to/publish-uwp-app-store.md +++ b/microsoft-edge/webview2/how-to/publish-uwp-app-store.md @@ -89,34 +89,35 @@ Once you're satisfied that your packaged app works, run the Windows App Certific 1. After a few minutes, the Windows App Certification Kit (WACK) shows a results page. If the app failed, click the link to review the results. -### Resolving tests + +#### Resolving tests The results page of the Windows App Certification Kit (WACK) app shows any tests that need to be resolved. -#### Restricted name-space +###### Restricted name-space If your app failed the **Restricted name-space** check, edit the `package.appxmanifest` file and remove the `restrictedcapabilities` line and any capabilities that use `rescap`. WebView2 shouldn't require any restricted capabilities, to operate. If your app needs restricted capabilities, you'll need to either ask for a store exception through [Partner Center](https://partner.microsoft.com), or only distribute the app through non-Store avenues. -#### Branding +###### Branding If your app failed the **Branding** checks, update all the Visual Assets in the manifest as described above. -#### App Capabilities +###### App Capabilities If your app failed the **App Capabilities** tests, turn off any unneeded capabilities. If you need a special use capability you will need to get Microsoft Store approval or use non-Store distribution methods. -#### General metadata correctness +###### General metadata correctness If your app failed the **General metadata correctness** tests with an error in `IPopup4`, update the **microsoft.UI.xaml** NuGet package to version **Microsoft.UI.Xaml.2.8.0-prerelease.220118001** or higher. There was a bug in the manifests, prior to that version. -#### Supported API +###### Supported API In this test, WACK checks the Windows APIs that your host app is calling, to make sure they're supported. diff --git a/microsoft-edge/webview2/how-to/set-preview-channel.md b/microsoft-edge/webview2/how-to/set-preview-channel.md index 43583044cf..65055f5bfa 100644 --- a/microsoft-edge/webview2/how-to/set-preview-channel.md +++ b/microsoft-edge/webview2/how-to/set-preview-channel.md @@ -51,7 +51,9 @@ There are several ways to make your WebView2 app use a specified preview channel These approaches are described below. -### Browser executable folder + + +#### Browser executable folder One approach is to use a browser executable folder. In this approach, you specify a folder that contains runtime binaries. This folder can be any of the following locations: * The installed location of the WebView2 Runtime. @@ -60,7 +62,9 @@ One approach is to use a browser executable folder. In this approach, you speci If you set the browser executable folder to a specific preview channel of Microsoft Edge, you will need to update the location when that preview channel updates to a newer version. This is because the location includes the version number as part of its path. Therefore, we recommend using this approach for local testing only. -### Default channel-search order + + +#### Default channel-search order This section applies to using a group policy, registry override, or environment variable. @@ -80,7 +84,9 @@ If you set the release channel preference to `1` by using a group policy, regist If you want to make your application use a specific runtime by calling a function, complete the following steps. -### Win32\/C++ + + +#### Win32\/C++ We'll use the [WebView2APISample](https://github.com/MicrosoftEdge/WebView2Samples/tree/main/SampleApps/WebView2APISample) to demonstrate this procedure. @@ -112,7 +118,9 @@ We'll use the [WebView2APISample](https://github.com/MicrosoftEdge/WebView2Sampl .Get()); ``` -### WinForms + + +#### WinForms WinForms uses an approach similar to the Win32/C++ approach described above. @@ -138,7 +146,9 @@ WinForms uses an approach similar to the Win32/C++ approach described above. } ``` -### WPF + + +#### WPF WPF uses an approach similar to the Win32/C++ approach described above. @@ -154,7 +164,9 @@ When specifying a preview channel by using a registry override, there are two op These two approaches are described below. -### Registry override: browser executable folder + + +#### Registry override: browser executable folder To make your application use a Microsoft Edge preview channel by using a registry override that sets the browser executable folder: @@ -168,13 +180,17 @@ To make your application use a Microsoft Edge preview channel by using a registr Replace `C:\Users\myname\AppData\Local\Microsoft\Edge SxS\Application\88.0.680.0` by the path to the desired Microsoft Edge preview channel. + + #### Resuming using the default, WebView2 Evergreen Runtime To undo the above setting, run the following command: `REG DELETE HKLM\Software\Policies\Microsoft\Edge\WebView2\BrowserExecutableFolder /f` -### Registry override: release channel preference + + +#### Registry override: release channel preference To make your application use a Microsoft Edge preview channel by using a registry override that changes the release channel preference by changing the order of searching for a channel: @@ -186,7 +202,8 @@ To make your application use a Microsoft Edge preview channel by using a registr Replace `WebView2APISample.exe` with the filename of your own app executable or the Application User Model ID. Using a wildcard (*) as the value name will apply the override to _all_ WebView2 apps on the machine and can result in unexpected behavior. -#### Resuming using the default, WebView2 Evergreen Runtime + +###### Resuming using the default, WebView2 Evergreen Runtime To delete the `ReleaseChannelPreference` registry override, run the command: @@ -216,7 +233,9 @@ To make your application use a Microsoft Edge preview channel by using an enviro ![Adding a new environment variable, as a user variable](media/env-vars-new-user-variable.png) -### Which app is affected + + +#### Which app is affected The above approach sets the environment variable for all WebView2 apps, not just the app you're testing. To set this environment variable for only the WebView2 app which you are testing, if you're running your app from the command prompt, set the environment variable `WEBVIEW2_RELEASE_CHANNEL_PREFERENCE=1`. That sets the environment variable just for the current `cmd.exe` command-prompt process and for any new child processes from that `cmd.exe` instance. Then the environment variable only applies to the WebView2 app that you're testing. @@ -227,7 +246,9 @@ If you use the `WEBVIEW2_RELEASE_CHANNEL_PREFERENCE` environment variable, you c | `1` | Reverses the search order, to use [preview channels](https://www.microsoftedgeinsider.com/download) first, before the WebView2 Runtime. | | `0` or another value other than `1` | Uses the [default channel-search order](#default-channel-search-order), which is to use the WebView2 Runtime before the preview channels. | -### Applying the new environment variable to running processes + + +#### Applying the new environment variable to running processes After setting an environment variable, the environment variable is applied to any new processes that are created. The environment variable doesn't apply to processes which are already running. To ensure that all processes use the new environment variable, you may need to restart Visual Studio, or log out of Windows and then log in again. diff --git a/microsoft-edge/webview2/how-to/webdriver.md b/microsoft-edge/webview2/how-to/webdriver.md index 98a3ec71d6..74a206db29 100644 --- a/microsoft-edge/webview2/how-to/webdriver.md +++ b/microsoft-edge/webview2/how-to/webdriver.md @@ -104,14 +104,18 @@ Microsoft Edge WebDriver launches your WebView2 app and automatically attaches t * The "attach" approach: In other scenarios, it's appropriate to attach Microsoft Edge WebDriver to a running WebView2 instance. You launch your app outside of Microsoft Edge WebDriver, and then attach Microsoft Edge WebDriver to a running WebView2 instance. This "attach" approach is for a WebView2 app that's not compatible with the "launch" approach. -### Approach 1: Letting Microsoft Edge WebDriver launch your WebView2 app + + +#### Approach 1: Letting Microsoft Edge WebDriver launch your WebView2 app If you have a simple app that creates a single WebView2 instance and that instance is active immediately upon launch, then you can use the "launch" approach; use [Step 4a: Letting Microsoft Edge WebDriver launch your WebView2 app](#step-4a-letting-microsoft-edge-webdriver-launch-your-webview2-app). In this scenario, there's one WebView2 instance, and it's available upon launch, without needing to navigate through any native UI. -### Approach 2: Attaching Microsoft Edge WebDriver to a running WebView2 app + + +#### Approach 2: Attaching Microsoft Edge WebDriver to a running WebView2 app If you have any situation that doesn't fit the "launch" scenario above, you should attach Microsoft Edge WebDriver to a running WebView2 instance (instead of letting Microsoft Edge WebDriver handle the WebView2 launch); use [Step 4b: Attaching Microsoft Edge WebDriver to a running WebView2 app](#step-4b-attaching-microsoft-edge-webdriver-to-a-running-webview2-app). @@ -202,7 +206,9 @@ Microsoft Edge WebDriver doesn't handle native UI automation, but here are some In addition to ensuring the WebView2 instance is activated, you need to set its `--remote-debugging-port` command-line parameter. We'll do this in the steps below. Microsoft Edge WebDriver will use this remote debugging port to connect to your WebView2 instance. -### Launching the WebView2 app with remote debugging enabled + + +#### Launching the WebView2 app with remote debugging enabled The next step happens when you're coding your app. You need to provide this extra command-line parameter when you're instantiating your WebView2 control. Enable remote debugging, as follows. @@ -212,7 +218,9 @@ The next step happens when you're coding your app. You need to provide this ext At this point, your app is running and its `--remote-debugging-port` command-line parameter has been set. Next, we'll attach Microsoft Edge WebDriver to the launched WebView2 app. -### Attaching Microsoft Edge WebDriver to the launched WebView2 app + + +#### Attaching Microsoft Edge WebDriver to the launched WebView2 app 1. Use the `EdgeOptions.DebuggerAddress` property to tell Microsoft Edge WebDriver to connect to the remote debugging port that you specified previously, instead of launching a new application: @@ -229,7 +237,9 @@ For more info about the `DebuggerAddress` property of the `EdgeOptions` object, Congratulations! You've successfully automated a WebView2 project and driven WebView2 by using Selenium and Microsoft Edge WebDriver, by attaching Microsoft Edge WebDriver to a running WebView2 app. -### UWP projects and debugging + + +#### UWP projects and debugging To configure the debug settings on launch, you must use the registry to enable debugging for all WebView2 processes on startup. Because of the way that UWP projects are launched, the WebDriver2 control is unable to automatically configure the debug settings on launch. Note that setting this registry key enables debugging support for all launched WebView2 processes while this environment variable is configured. diff --git a/microsoft-edge/webview2/how-to/webresourcerequested.md b/microsoft-edge/webview2/how-to/webresourcerequested.md index 7c5c6a5286..2a2d761b0f 100644 --- a/microsoft-edge/webview2/how-to/webresourcerequested.md +++ b/microsoft-edge/webview2/how-to/webresourcerequested.md @@ -49,7 +49,9 @@ Instead of using the WebResourceRequested APIs, it's preferable to use these oth **Note:** For URLs with virtual hostnames, using the `WebResourceRequested` event isn't supported. This is because the `WebResourceRequested` event isn't fired for the [SetVirtualHostNameToFolderMapping method](/microsoft-edge/webview2/reference/win32/icorewebview2_3#setvirtualhostnametofoldermapping). -### How your host app, the WebView2 control, and the HTTP server interact + + +#### How your host app, the WebView2 control, and the HTTP server interact The WebView2 control sits in between your host app and the HTTP server. When your host app navigates to a URI, the WebView2 control sends a request to the HTTP server. The HTTP server then sends a response to the WebView2 control. @@ -69,23 +71,27 @@ Intercepting the request allows you to customize the header content, URL, or the The host app can change the properties of a request by using this API: -# [.NET](#tab/dotnet) +##### [.NET](#tab/dotnet) * [CoreWebView2WebResourceRequest Class](/dotnet/api/microsoft.web.webview2.core.corewebview2webresourcerequest) -# [Win32](#tab/win32) +##### [Win32](#tab/win32) * [ICoreWebView2WebResourceRequest](/microsoft-edge/webview2/reference/win32/icorewebview2webresourcerequest) --- -### What you can do with headers + + +#### What you can do with headers A HTTP header provides important information and metadata about a request or response. Changing [headers](https://developer.mozilla.org/docs/Glossary/HTTP_header) enables you to perform powerful actions on the network. A [request header](https://developer.mozilla.org/docs/Glossary/Request_header) can be used to indicate the format of the response (such as the `Accept-*` headers), set authentication tokens, read and write cookies (sensitive information), modify the user agent, and so on. A [response header](https://developer.mozilla.org/docs/Glossary/Response_header) can be used to provide more context of the response. -### Filtering the WebResourceRequested event based on URL and resource type + + +#### Filtering the WebResourceRequested event based on URL and resource type In order to receive `WebResourceRequested` events, specify filters for the requests that the host app is interested in, based on URL and resource type. @@ -93,11 +99,11 @@ For example, suppose the host app is trying to replace images. In this case, th Another example is if the host app is only interested in all requests that are under a site like `https://example.com`. Then the app can specify a URL filter as `https://example.com/*` to get events that are associated with that site. -# [.NET](#tab/dotnet) +##### [.NET](#tab/dotnet) * [CoreWebView2.AddWebResourceRequestedFilter Method](/dotnet/api/microsoft.web.webview2.core.corewebview2.addwebresourcerequestedfilter) -# [Win32](#tab/win32) +##### [Win32](#tab/win32) * [AddWebResourceRequestedFilter method](/microsoft-edge/webview2/reference/win32/icorewebview2#addwebresourcerequestedfilter) @@ -107,7 +113,9 @@ Another example is if the host app is only interested in all requests that are u For details about how the URL filter works, see [CoreWebView2.AddWebResourceRequestedFilter Method > Remarks](/dotnet/api/microsoft.web.webview2.core.corewebview2.addwebresourcerequestedfilter#remarks) -### Why would you want to intercept requests that are sent from WebView2? + + +#### Why would you want to intercept requests that are sent from WebView2? Intercepting requests sent from WebView2 enables you to further configure your request. The host app might want to provide optional content as part of the request that the WebView2 control won't know on its own. Some scenarios include: * You're logging into a page and the app has credentials so the app can provide authentication header without the user having to enter those credentials. @@ -115,7 +123,8 @@ Intercepting requests sent from WebView2 enables you to further configure your r * You want to upload local file content to the request server via a POST request. -### Sequence for modifying requests + +#### Sequence for modifying requests ![Diagram of sequence for modifying requests](webresourcerequested-images/sequence-for-modifying-requests.png) @@ -134,8 +143,8 @@ Intercepting requests sent from WebView2 enables you to further configure your r 1. The host app listens for the `WebResourceResponseReceived` event and handles it. - -### Example: Intercepting a request, to monitor or modify it + +#### Example: Intercepting a request, to monitor or modify it @@ -143,7 +152,7 @@ Intercepting requests sent from WebView2 enables you to further configure your r In the following example, the host app _intercepts_ the document request that is sent from the WebView2 control to the `http://www.example.com` HTTP server, adds a custom header value and sends the request. -# [.NET](#tab/dotnet) +##### [.NET](#tab/dotnet) ```csharp // Add a filter to select all resource types under http://www.example.com @@ -162,7 +171,7 @@ webView.CoreWebView2.WebResourceRequested += delegate ( } ``` -# [Win32](#tab/win32) +##### [Win32](#tab/win32) ```cpp // Add a filter to select all resource types under http://www.example.com @@ -203,7 +212,8 @@ m_webView->add_WebResourceRequested( By default, the HTTP server sends responses to the WebView2 control. Your host app can _override_ a response that's sent from the HTTP server to the WebView2 control, and send a custom response to the WebView2 control instead of the original response. -### Sequence for overriding responses + +#### Sequence for overriding responses ![Diagram of sequence for overriding responses](webresourcerequested-images/sequence-for-overriding-responses.png) @@ -219,9 +229,10 @@ By default, the HTTP server sends responses to the WebView2 control. Your host -### Example: Overriding a response, to proactively replace it + +#### Example: Overriding a response, to proactively replace it -# [.NET](#tab/dotnet) +##### [.NET](#tab/dotnet) ```csharp // Add a filter to select all image resources @@ -238,7 +249,7 @@ webView.CoreWebView2.WebResourceRequested += delegate ( }; ``` -# [Win32](#tab/win32) +##### [Win32](#tab/win32) ```cpp // Add a filter to select all image resources @@ -283,18 +294,19 @@ m_webView->add_WebResourceRequested( The `NavigateWithWebResourceRequest` method allows your host app to navigate the WebView2 control using a custom `WebResourceRequest`. You can use this API to create a GET or POST request that has custom headers and content. Then the WebView2 control will navigate by using this custom request. -# [.NET](#tab/dotnet) +##### [.NET](#tab/dotnet) * [CoreWebView2.NavigateWithWebResourceRequest(CoreWebView2WebResourceRequest) Method](/dotnet/api/microsoft.web.webview2.core.corewebview2.navigatewithwebresourcerequest) -# [Win32](#tab/win32) +##### [Win32](#tab/win32) * [interface ICoreWebView2_2::NavigateWithWebResourceRequest method](/microsoft-edge/webview2/reference/win32/icorewebview2_2#navigatewithwebresourcerequest) --- - -### Example: Constructing a custom request and navigating using that request + + +#### Example: Constructing a custom request and navigating using that request @@ -306,7 +318,7 @@ from https://github.com/MicrosoftEdge/WebView2Feedback/blob/main/specs/NavigateW -# [.NET](#tab/dotnet) +##### [.NET](#tab/dotnet) ```csharp // This code posts text input=Hello to the POST form page in W3Schools. @@ -330,7 +342,7 @@ webView.CoreWebView2.NavigateWithWebResourceRequest(webResourceRequest); -# [Win32](#tab/win32) +##### [Win32](#tab/win32) ```cpp // This code posts text input=Hello to the POST form page in W3Schools. @@ -366,7 +378,8 @@ webview->NavigateWithWebResourceRequest(webResourceRequest.get()); You can monitor the requests and responses via the `WebResourceResponseReceived` event, to read any header value. -### Example: Monitoring the requests and responses via the WebResourceResponseReceived event + +#### Example: Monitoring the requests and responses via the WebResourceResponseReceived event This example shows how to read the authorization header value by monitoring the requests and responses via the `WebResourceResponseReceived` event. @@ -376,7 +389,7 @@ The following code demonstrates how the `WebResourceResponseReceived` event can -# [.NET](#tab/dotnet) +##### [.NET](#tab/dotnet) ```csharp WebView.WebResourceResponseReceived += WebView_WebResourceResponseReceived; @@ -422,7 +435,7 @@ private async void WebView_WebResourceResponseReceived(object sender, CoreWebVie -# [Win32](#tab/win32) +##### [Win32](#tab/win32) COM example, uses `ICoreWebView2WebResourceRequest`. @@ -471,8 +484,7 @@ m_webView->add_WebResourceResponseReceived( -# [.NET](#tab/dotnet) - +##### [.NET](#tab/dotnet) **Request:** @@ -513,7 +525,7 @@ m_webView->add_WebResourceResponseReceived( -# [Win32](#tab/win32) +##### [Win32](#tab/win32) **Request:** diff --git a/microsoft-edge/webview2/release-notes.md b/microsoft-edge/webview2/release-notes.md index 3e9adf146d..bb7aea3861 100644 --- a/microsoft-edge/webview2/release-notes.md +++ b/microsoft-edge/webview2/release-notes.md @@ -25,6 +25,7 @@ WebView2 changes may require an update to the Runtime, SDK, or both. Most new AP WebView2 shares code and binaries with the Microsoft Edge browser, and is released around the same time. As a result, WebView2 Runtime releases generally also include Microsoft Edge updates. For Microsoft Edge updates, see [Release notes for Microsoft Edge Stable Channel](/deployedge/microsoft-edge-relnote-stable-channel) and [Release notes for Microsoft Edge Beta Channel](/deployedge/microsoft-edge-relnote-beta-channel). + #### Recommended browser channel and Runtime Make sure to re-compile your WebView2 app after updating the WebView2 SDK NuGet package. The WebView2 team recommends the following: @@ -36,6 +37,7 @@ Make sure to re-compile your WebView2 app after updating the WebView2 SDK NuGet For more information, see [Matching the Runtime version with the SDK version](concepts/versioning.md#matching-the-runtime-version-with-the-sdk-version). + #### Minimum version of the browser or Runtime to load WebView2 To load WebView2, the minimum version of Microsoft Edge or the WebView2 Runtime is 86.0.616.0. The minimum version to load WebView2 only changes when a breaking change occurs in the web platform. @@ -52,9 +54,13 @@ Release Date: February 15, 2023 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 110.1587.40 or higher. -### General -#### Promotions + +#### General + + + +###### Promotions The following items are now stable. @@ -97,9 +103,13 @@ Release Date: February 15, 2023 For full API compatibility, this version of the WebView2 SDK requires Microsoft Edge version 112.0.1671.0 or higher. -### General -#### Experimental features + +#### General + + + +###### Experimental features * Added support for the Experimental File API: @@ -134,11 +144,13 @@ The above interface is currently being used for: --- - -#### Promotions + +###### Promotions The following APIs are promoted to stable in this prerelease SDK. + + * The SharedBuffer API: ##### [.NET/C#](#tab/dotnetcsharp) @@ -187,6 +199,8 @@ The following APIs are promoted to stable in this prerelease SDK. --- + + * The Permission API: ##### [.NET/C#](#tab/dotnetcsharp) @@ -226,6 +240,8 @@ The following APIs are promoted to stable in this prerelease SDK. --- + + * The ScriptLocale API: ##### [.NET/C#](#tab/dotnetcsharp) @@ -256,7 +272,9 @@ Previous name in 1619-prerelease: --- -#### Bug fixes + + +###### Bug fixes * Fixed a bug where WebView2 was not closing properly when a `BeforeUnload` event was received. (Runtime) ([Issue #2677](https://github.com/MicrosoftEdge/WebView2Feedback/issues/2677)) * In the `DownloadStarting` event, the `ResultFilePath` previously wasn't showing the correct download location for UWP applications when the `DownloadStarting` event handler was attached. This has been fixed; the correct `ResultFilePath` is now shown. @@ -279,12 +297,18 @@ Release Date: January 17, 2023 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 109.0.1518.46 or higher. -### General -#### Promotions + +#### General + + + +###### Promotions The following items are now stable: + + * The Print API: ##### [.NET/C#](#tab/dotnetcsharp) @@ -337,6 +361,8 @@ The following items are now stable: --- + + * The Custom Crash Reporting API: ##### [.NET/C#](#tab/dotnetcsharp) @@ -356,6 +382,7 @@ The following items are now stable: --- + ## 1.0.1619-prerelease @@ -365,10 +392,15 @@ Release Date: January 19, 2023 For full API compatibility, this version of the WebView2 SDK requires Microsoft Edge version 111.0.1619.0 or higher. -### General -#### Experimental features + +#### General + + +###### Experimental features + + * Added support for the Permission management API: ##### [.NET/C#](#tab/dotnetcsharp) @@ -432,6 +464,7 @@ For full API compatibility, this version of the WebView2 SDK requires Microsoft --- + * Added support for API to disable back and forward navigation: ##### [.NET/C#](#tab/dotnetcsharp) @@ -448,10 +481,14 @@ For full API compatibility, this version of the WebView2 SDK requires Microsoft --- -#### Promotions + + +###### Promotions The following APIs are promoted to stable in this prerelease SDK: + + * The Custom Scheme Registration API: ##### [.NET/C#](#tab/dotnetcsharp) @@ -479,6 +516,8 @@ The following APIs are promoted to stable in this prerelease SDK: --- + + * The Tracking Prevention API: ##### [.NET/C#](#tab/dotnetcsharp) @@ -504,7 +543,8 @@ The following APIs are promoted to stable in this prerelease SDK: --- -#### Bug fixes + +###### Bug fixes * Disabled **Open link as Profile** in the WebView2 context menu. * Fixed post data missing in form submit with Ctrl-click. ([Issue #2652](https://github.com/MicrosoftEdge/WebView2Feedback/issues/2652)) @@ -515,6 +555,7 @@ The following APIs are promoted to stable in this prerelease SDK: * Removed read-aloud icon in address bar in a WebView2 popup window. * Fixed unexpected items in the context menu of popup windows in WebView2. + ## 1.0.1462.37 @@ -524,11 +565,11 @@ Release Date: December 12, 2022 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 108.0.1462.37 or higher. -### General - -This WebView2 SDK release has the same [bug fixes](#bug-fixes-1466-prerelease) that are in WebView2 SDK 1.0.1466-prerelease. + +#### General +This WebView2 SDK release has the same [bug fixes](#bug-fixes-1466-prerelease) that are in WebView2 SDK 1.0.1466-prerelease. @@ -540,9 +581,12 @@ Release Date: December 12, 2022 For full API compatibility, this version of the WebView2 SDK requires Microsoft Edge version 110.0.1549.0 or higher. -### General -#### Experimental features + +#### General + + +###### Experimental features * Added support for the Locale Region API: @@ -582,7 +626,9 @@ For full API compatibility, this version of the WebView2 SDK requires Microsoft --- -#### Promotions + + +###### Promotions The following APIs are promoted to stable in this prerelease SDK: @@ -657,7 +703,9 @@ The following APIs are promoted to stable in this prerelease SDK: --- -#### Bug fixes + + +###### Bug fixes * Fixed some nullptr issues where now some public APIs which take nullptr as input parameters do not crash the WebView2. * Disabled "Open link as Profile" in the WebView2 context menu. @@ -669,6 +717,7 @@ The following APIs are promoted to stable in this prerelease SDK: * Remove read aloud icon in address bar in a WebView2 popup window. * Fixed an issue where context menu shows unexpected items in WebView2 popup window. + ## 1.0.1418.22 @@ -678,7 +727,9 @@ Release Date: October 31, 2022 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 107.0.1418.22 or higher. -### General + + +#### General This WebView2 SDK release has the same [bug fixes](#bug-fixes-1414-prerelease) that are in WebView2 SDK 1.0.1414-prerelease. @@ -692,9 +743,13 @@ Release Date: October 31, 2022 For full API compatibility, this version of the WebView2 SDK requires Microsoft Edge version 109.0.1466.0 or higher. -### General -#### Experimental features + +#### General + + + +###### Experimental features * Added support for creating a shared memory based buffer with a specified size: @@ -777,7 +832,9 @@ For full API compatibility, this version of the WebView2 SDK requires Microsoft --- -#### Bug fixes + + +###### Bug fixes * Fixed a bug in which the custom header title in print settings could be wrong. ([Issue #2093](https://github.com/MicrosoftEdge/WebView2Feedback/issues/2093)) * Display `AllowedCertificateAuthorities` in `add_ClientCertificateRequested` event as a `Base64` string. (Runtime) ([Issue #2346](https://github.com/MicrosoftEdge/WebView2Feedback/issues/2346)) @@ -796,9 +853,13 @@ Release Date: October 11, 2022 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 106.0.1370.28 or higher. -### General -#### Promotions + +#### General + + + +###### Promotions The following items are now stable: @@ -835,9 +896,13 @@ Release Date: October 11, 2022 For full API compatibility, this version of the WebView2 SDK requires Microsoft Edge version 107.0.1414.0 or higher. -### General -#### Experimental features + +#### General + + + +###### Experimental features * Added support for the Print API: @@ -927,7 +992,9 @@ For full API compatibility, this version of the WebView2 SDK requires Microsoft --- -#### Bug fixes + + +###### Bug fixes * Removed three-dot menu with a broken link from the downloads page. (Runtime) ([Issue #2753](https://github.com/MicrosoftEdge/WebView2Feedback/issues/2753)) * Fixed a bug in the WebView2 WinRT JS Projection tool (wv2winrt) where C++20 projects failed to compile. ([Issue #2768](https://github.com/MicrosoftEdge/WebView2Feedback/issues/2768)) @@ -944,7 +1011,9 @@ Release Date: September 6, 2022 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 105.0.1343.22 or higher. -### General + + +#### General This WebView2 SDK release has the same bug fixes that are in WebView2 SDK 1.0.1369-prerelease. See **Bug fixes** in the following section. @@ -958,9 +1027,13 @@ Release Date: September 6, 2022 For full API compatibility, this version of the WebView2 SDK requires Microsoft Edge version 106.0.1369.0 or higher. -### General -#### Promotions + +#### General + + + +###### Promotions The following items are now stable: @@ -987,7 +1060,9 @@ The following items are now stable: --- -#### Bug fixes + + +###### Bug fixes * Fixed a bug where WPF apps would crash when windows with WebView2 were closed. ([Issue #640](https://github.com/MicrosoftEdge/WebView2Feedback/issues/640)) @@ -1009,9 +1084,9 @@ Release Date: August 8, 2022 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 104.0.1293.44 or higher. -### General +#### General -#### Promotions +###### Promotions The following items are now stable: @@ -1044,9 +1119,9 @@ Release Date: August 8, 2022 For full API compatibility, this version of the WebView2 SDK requires Microsoft Edge version 105.0.1340.0 or higher. -### General +#### General -#### Experimental features +###### Experimental features * Added support for `WebResourceRequested` for workers which allows setting filters in order to receive `WebResourceRequested` events for service workers, shared workers, and different origin iframes. @@ -1089,7 +1164,7 @@ For full API compatibility, this version of the WebView2 SDK requires Microsoft --- -#### Bug fixes +###### Bug fixes * Added the ability for developers to explicitly specify the path from which to load the WebView2Loader.dll. ([Issue #767](https://github.com/MicrosoftEdge/WebView2Feedback/issues/767)) @@ -1123,9 +1198,9 @@ Release Date: July 4, 2022 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 103.0.1264.42 or higher. -### General +#### General -#### Promotions +###### Promotions The following items are now stable: @@ -1155,9 +1230,9 @@ Release Date: July 4, 2022 For full API compatibility, this version of the WebView2 SDK requires Microsoft Edge version 105.0.1305.0 or higher. -### General +#### General -#### Promotions +###### Promotions The following APIs are promoted to stable in this prerelease SDK: @@ -1180,7 +1255,7 @@ The following APIs are promoted to stable in this prerelease SDK: --- -#### Bug fixes +###### Bug fixes * Fixed an issue where `PrintToPdfAsync` may hang for long time. ([Issue #1974](https://github.com/MicrosoftEdge/WebView2Feedback/issues/1974)) @@ -1212,9 +1287,9 @@ For full API compatibility, this version of the WebView2 SDK requires WebView2 R There is no corresponding prerelease package. -### General +#### General -#### Promotions +###### Promotions The following items are now stable: @@ -1227,7 +1302,7 @@ The following items are now stable: * The [HttpStatusCode API](/microsoft-edge/webview2/reference/win32/icorewebview2navigationcompletedeventargs2?view=webview2-1.0.1245.22&preserve-view=true) which provides the HTTP status code for navigation requests in `NavigationCompleted` events. -#### Bug fixes +###### Bug fixes * Fixed an issue with the on-screen keyboard in which the keyboard doesn't reappear after it's closed by clicking the **X** button. Also fixed an issue in which the keyboard gets dismissed when users switch from one edit control to another within WebView2. ([Issue #460](https://github.com/MicrosoftEdge/WebView2Feedback/issues/460)) * Fixed an issue when using a proxy from `AddHostObjectToScript` in script. If you call `setHostProperty` and it failed, you could have received an internal error message structure rather than a JavaScript Error object. @@ -1246,9 +1321,9 @@ Release Date: May 9, 2022 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 101.0.1210.39 or higher. -### General +#### General -#### Promotions +###### Promotions The following items are now stable: @@ -1267,11 +1342,11 @@ Release Date: May 9, 2022 For full API compatibility, this version of the WebView2 SDK requires Microsoft Edge version 102.0.1248.0 or higher. -### General +#### General * Added support for WinRT Object projection into JavaScript by adding WinRT JS Projection tool (**wv2winrt**) in NuGet package. For instructions about using the WinRT JS Projection tool see [Call native-side WinRT code from web-side code](/microsoft-edge/webview2/how-to/winrt-from-js). -#### Promotions +###### Promotions The following APIs are promoted to stable in this prerelease SDK: @@ -1281,7 +1356,7 @@ The following APIs are promoted to stable in this prerelease SDK: * `clearBrowsingDataInTimeRange` * `clearBrowsingDataAll` -#### Bug fixes +###### Bug fixes * Fixed an unavoidable crash that occurred in the WPF control's `OnWindowPositionChanged` event. ([Issue #1531](https://github.com/MicrosoftEdge/WebView2Feedback/issues/1531)) @@ -1305,11 +1380,11 @@ Release Date: April 12, 2022 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 100.0.1185.39 or higher. -### General +#### General * Renamed `ICoreWebView2Certificate` to `ICoreWebView2ClientCertificate`. -#### Promotions +###### Promotions The following items are now stable: @@ -1340,15 +1415,15 @@ Release Date: April 12, 2022 For full API compatibility, this version of the WebView2 SDK requires Microsoft Edge version 102.0.1222.0 or higher. -### General +#### General -#### Experimental features +###### Experimental features * Added the [Server Certificate API](/microsoft-edge/webview2/reference/win32/icorewebview2experimental15?view=webview2-1.0.1222-prerelease&preserve-view=true) which provides an option to trust the server's TLS certificate at the application level and render the page without prompting the user about TLS or providing the ability to cancel the web request. * Added the [Favicon API](/microsoft-edge/webview2/reference/win32/icorewebview2experimental12?view=webview2-1.0.1222-prerelease&preserve-view=true) which provides a way to get the favicon when it changes or is set at a website. -#### Promotions +###### Promotions The following APIs are promoted to stable in this prerelease SDK: @@ -1358,7 +1433,7 @@ The following APIs are promoted to stable in this prerelease SDK: * [Default Download API](/microsoft-edge/webview2/reference/win32/icorewebview2profile?view=webview2-1.0.1222-prerelease&viewFallbackFrom=webview2-1.0.1185.39&preserve-view=true) which provides a way to customize the default download location. -#### Bug fixes +###### Bug fixes * Fixed `ZoomFactor` issue that incorrectly sets `ZoomFactor` value to the maximum value when it is out of bounds. @@ -1384,9 +1459,9 @@ Release Date: March 10, 2022 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 99.0.1150.38 or higher. -### General +#### General -#### Promotions +###### Promotions The following items are now stable: @@ -1402,13 +1477,13 @@ Release Date: March 10, 2022 For full API compatibility, this version of the WebView2 SDK requires Microsoft Edge version 100.0.1189.0 or higher. -### General +#### General -#### Experimental features +###### Experimental features * Added [ContextMenuRequested API](/microsoft-edge/webview2/reference/win32/icorewebview2_11?view=webview2-1.0.1189-prerelease&preserve-view=true) to enable host app to create or modify their own context menu. -#### Promotions +###### Promotions The following APIs are promoted to stable in this prerelease SDK: @@ -1421,7 +1496,7 @@ The following APIs are promoted to stable in this prerelease SDK: * The [HiddenPdfToolbarItems API](/microsoft-edge/webview2/reference/win32/icorewebview2settings7?view=webview2-1.0.1189-prerelease&preserve-view=true) is available to customize the PDF toolbar items. * The [ExclusiveUserDataFolderAccess API](/microsoft-edge/webview2/reference/win32/icorewebview2environmentoptions2?view=webview2-1.0.1189-prerelease&preserve-view=true) allows control of whether or not other processes can create WebView2 using the same user data folder. -#### Bug fixes +###### Bug fixes * Fixed a bug where WebView2 app gets stuck occasionally with UWP. * Fixed a bug where focus is not returned to the application after closing the **Find** bar for windowed mode. @@ -1438,9 +1513,9 @@ Release Date: February 6, 2022 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 98.0.1108.44 or higher. -### General +#### General -#### Promotions +###### Promotions The following items are now stable: @@ -1471,14 +1546,14 @@ Release Date: February 6, 2022 For full API compatibility, this version of the WebView2 SDK requires Microsoft Edge version 100.0.1158.0 or higher. -### General +#### General -#### Experimental features +###### Experimental features * Added [Status bar API](/microsoft-edge/webview2/reference/win32/icorewebview2experimental13?view=webview2-1.0.1158-prerelease&preserve-view=true) to provide info when webiew is showing status message, URL, or empty string. * Added [CDP API](/microsoft-edge/webview2/reference/win32/icorewebview2experimental14?view=webview2-1.0.1158-prerelease&preserve-view=true) to provide possibility for developers have multiple `DevToolsProtocol` targets in WebView2. -#### Promotions +###### Promotions The following APIs are promoted to stable in this prerelease SDK: @@ -1487,7 +1562,7 @@ The following APIs are promoted to stable in this prerelease SDK: * `add_PermissionRequested` * `remove_PermissionRequested` -#### Bug fixes +###### Bug fixes * Fixed an issue causing erroneous warnings in the Visual Studio Error List window. ([Issue #1722](https://github.com/MicrosoftEdge/WebView2Feedback/issues/1722)) * Fixed a bug where NewWindowRequested was not getting raised when opening PDF downloads. @@ -1504,9 +1579,9 @@ Release Date: January 13, 2022 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 97.0.1072.54 or higher. -### General +#### General -#### Promotions +###### Promotions The following items are now stable: @@ -1526,16 +1601,16 @@ Release Date: January 13, 2022 For full API compatibility, this version of the WebView2 SDK requires Microsoft Edge version 99.0.1133.0 or higher. -### General +#### General -#### Experimental features +###### Experimental features * Added support for [theming](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalprofile2?view=webview2-1.0.1133-prerelease&preserve-view=true) (overall color scheme - light, dark, system) of WebView2. * Added a way to set [default download path](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalprofile3?view=webview2-1.0.1133-prerelease&preserve-view=true). * Added support for [clearing browser data](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalprofile4?view=webview2-1.0.1133-prerelease&preserve-view=true). * Added [permission requested](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalframe3?view=webview2-1.0.1133-prerelease&preserve-view=true) support for iframes. -#### Promotions +###### Promotions The following APIs are promoted to stable in this prerelease SDK: @@ -1547,7 +1622,7 @@ The following APIs are promoted to stable in this prerelease SDK: * The ProcessInfo APIs provides more information about WebView2 [processes](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalprocessinfo?view=webview2-1.0.1133-prerelease&preserve-view=true) and [process collections](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalprocessinfocollection?view=webview2-1.0.1133-prerelease&preserve-view=true). * The [HTTP Authentication API](/microsoft-edge/webview2/reference/win32/icorewebview2experimental10?view=webview2-1.0.1133-prerelease&preserve-view=true). -#### Bug fixes +###### Bug fixes * Fixed a bug that prevented `Set-Cookies` header from showing up in the `WebResourceResponseReceived` event. * Resolved a bug where pop-ups and owned windows would jump to a different position before closing instead of closing @@ -1570,7 +1645,7 @@ Release Date: November 29, 2021 For full API compatibility, this version of the WebView2 SDK requires Microsoft Edge version 97.0.1083.0 or higher. -### Experimental features +#### Experimental features * Added the following [APIs for iframes](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalframe2?view=webview2-1.0.1083-prerelease&preserve-view=true) in WebView2: * `PostWebMessageAsJson` @@ -1580,7 +1655,7 @@ For full API compatibility, this version of the WebView2 SDK requires Microsoft * Added ProcessInfo APIs to provide more information about WebView2 [processes](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalprocessinfo?view=webview2-1.0.1083-prerelease&preserve-view=true) and [process collections](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalprocessinfocollection?view=webview2-1.0.1083-prerelease&preserve-view=true). -### Promotions +#### Promotions The following APIs are promoted to stable in this prerelease SDK: @@ -1590,7 +1665,7 @@ The following APIs are promoted to stable in this prerelease SDK: * Programmatically opening and closing the default download dialog. * Making changes in response to the dialog opening and closing. -### Bug fixes +#### Bug fixes * Fixed a focus issue after closing the file picker dialog. * Fixed a bug where WebView2 doesn't receive spatial input on initial launch. @@ -1609,11 +1684,11 @@ Release Date: November 29, 2021 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 96.0.1054.31 or higher. -### General +#### General * General reliability fixes. -### Bug fixes +#### Bug fixes * Turned off the Control-flow Enforcement Technology (CET) Shadow Stack feature for v96 WebView2 Runtime. * Fixed an issue that was causing slow startup times when launching in a .NET single-file application. ([Issue #1909](https://github.com/MicrosoftEdge/WebView2Feedback/issues/1909)) @@ -1630,11 +1705,11 @@ Release Date: October 29, 2021 For full API compatibility, this version of the WebView2 SDK requires Microsoft Edge version 97.0.1056.0 or higher. -### General +#### General * General reliability improvements. -#### Experimental features +###### Experimental features * The [Download Positioning and Anchoring API](/microsoft-edge/webview2/reference/win32/icorewebview2experimental11?view=webview2-1.0.1056-prerelease&preserve-view=true). This API enables: * Changing the position of the download dialog, relative to the WebView2 bounds. You can anchor the download dialog to the **Download** button, instead of the default position, which is the top-right corner. @@ -1642,7 +1717,7 @@ For full API compatibility, this version of the WebView2 SDK requires Microsoft * Making changes in response to the dialog opening and closing. * The [HTTP Authentication API](/microsoft-edge/webview2/reference/win32/icorewebview2experimental10?view=webview2-1.0.1056-prerelease&preserve-view=true). -#### Bug fixes +###### Bug fixes * The real process exit code is now provided as `ExitCode` in `ICoreWebView2ProcessFailedEventArgs2` for `COREWEBVIEW2_PROCESS_FAILED_KIND_BROWSER_PROCESS_EXITED` process failure. * The `--js-flags` switch is now honored in the `AdditionalBrowserArguments` that are provided in `CoreWebView2EnvironmentOptions`. @@ -1659,14 +1734,14 @@ Release Date: October 25, 2021 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 95.0.1020.30 or higher. -### General +#### General -#### Bug fixes +###### Bug fixes * Updated `EnsureCoreWebView2Async` to not throw exceptions when the WPF source property is set. ([Issue #1781](https://github.com/MicrosoftEdge/WebView2Feedback/issues/1781)) * Fixed a bug where WebView2 crashes after interacting with multiple windows that show a download UI. ([Issue #1723](https://github.com/MicrosoftEdge/WebView2Feedback/issues/1723)) -#### Promotions +###### Promotions The following items are now stable: * [PrintToPdf API](/microsoft-edge/webview2/reference/win32/icorewebview2_7?view=webview2-1.0.1020.30&preserve-view=true#printtopdf). @@ -1681,13 +1756,13 @@ Release Date: September 27, 2021 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 94.0.992.31 or higher. -### General +#### General -#### Bug fixes +###### Bug fixes * Fixed missing WebView2 DLLs (which led to initialization failure) when `PlatformTarget` isn't set in the user's .NET project. ([Issue #1061](https://github.com/MicrosoftEdge/WebViewFeedback/issues/1061)) -#### Promotions +###### Promotions The following items are now stable: * [OpenTaskManagerWindow API](/microsoft-edge/webview2/reference/win32/icorewebview2_6?view=webview2-1.0.992.28&preserve-view=true#summary). @@ -1705,14 +1780,14 @@ Release Date: September 20, 2021 For full API compatibility, this prerelease version of the WebView2 SDK requires Microsoft Edge version 95.0.1018.0 or higher. -### General +#### General -#### Experimental features +###### Experimental features * Added a [media API](/microsoft-edge/webview2/reference/win32/icorewebview2experimental9?view=webview2-1.0.1018-prerelease&preserve-view=true#summary) that enables developers to mute/unmute media within WebView2. * Added support for [multiple user profiles](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalenvironment8?view=webview2-1.0.1018-prerelease&preserve-view=true) with WebView2. -#### Bug fixes +###### Bug fixes * Fixed a bug where WebView2 stops rendering when the app is spanning monitors and the monitor scale changes. * Fixed a bug where closing the download UI crashes WebView2 when multiple download windows are open. ([Issue #1723](https://github.com/MicrosoftEdge/WebViewFeedback/issues/1723)) @@ -1728,12 +1803,12 @@ Release Date: September 14, 2021 For full API compatibility, this prerelease version of the WebView2 SDK requires Microsoft Edge version 95.0.1010.0 or higher. -### General +#### General * WebView2 performance improvements. * Reliability fixes. ([Issue #1605](https://github.com/MicrosoftEdge/WebViewFeedback/issues/1605) and [Issue #1678](https://github.com/MicrosoftEdge/WebViewFeedback/issues/1678)) * Added performance improvements during startup and when the host app is in the foreground. -#### Experimental features +###### Experimental features * Removed silent failures by using `EnsureCoreWebView2Async`, which throws an `ArgumentException` when called multiple times with incompatible parameters. * Changed default handling of the [UserDataFolder](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalenvironment5?view=webview2-1.0.1010-prerelease&preserve-view=true#get_userdatafolder) property in the environment object. @@ -1749,7 +1824,7 @@ For full API compatibility, this prerelease version of the WebView2 SDK requires * Added [AllowExternalDrop](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalcompositioncontroller3?view=webview2-1.0.1010-prerelease&preserve-view=true) property to allow the dragging and dropping of objects from outside a WebView2 control into it. * Added [ContextMenu APIs](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalcontextmenuitem?view=webview2-1.0.1010-prerelease&preserve-view=true) which allow customization of the WebView2 context menu. -#### Bug fixes +###### Bug fixes * Improved how host objects exceptions are caught in your JavaScript code. * Replaced WebView2 icon with a generic icon in DevTools windows. @@ -1761,7 +1836,7 @@ For full API compatibility, this prerelease version of the WebView2 SDK requires * Fixed a bug to apply `SetVirtualHostNameToFolderMapping` to pop-up windows. * Fixed bugs where an `IDispatch` objects were returned as `IUnknown`. -#### Promotions +###### Promotions The following APIs are promoted to stable in this prerelease SDK: * `IsSwipeNavigationEnabled` @@ -1778,9 +1853,9 @@ Release Date: September 8, 2021 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 93.0.961.44 or higher. -### General +#### General -#### Bug fixes +###### Bug fixes * Fixed a bug that caused `ERR_SSL_CLIENT_AUTH_CERT_NEEDED` errors. This is a Runtime change. * Fixed a bug that special browser keys like **Refresh**, **Home**, **Back**, and so on can't be turned off using `AreBrowserAcceleratorKeysEnabled`. This change is Runtime-specific. * Fixed a bug where the transparent background color isn't rendered. @@ -1788,7 +1863,7 @@ For full API compatibility, this version of the WebView2 SDK requires WebView2 R * Fixed a bug in WebView2 .NET controls where WebView2 windows were blank when created in the background. ([Issue #1077](https://github.com/MicrosoftEdge/WebViewFeedback/issues/1077)) * Fixed a bug where settings were not updated when the user navigated to or a new window displayed `about:blank` pages. This is a Runtime change. -#### Promotions +###### Promotions The following items are now stable: * [Client Certificate API](/microsoft-edge/webview2/reference/win32/icorewebview2_5?view=webview2-1.0.961.33&preserve-view=true#add_clientcertificaterequested). @@ -1803,20 +1878,20 @@ Release Date: July 26, 2021 For full API compatibility, this prerelease version of the WebView2 SDK requires Microsoft Edge version 93.0.967.0 or higher. -### General +#### General * WebView2 performance improvements. * Added partial Event Tracing for Windows (ETW) support. * Removed Microsoft branding from `edge://history`. * New default Download UI. -#### Experimental features +###### Experimental features * Added [OpenTaskManagerWindow](/microsoft-edge/webview2/reference/win32/icorewebview2experimental4?view=webview2-1.0.955-prerelease&preserve-view=true#opentaskmanagerwindow) to launch a WebView2 browser task manager. * Added [NewWindowRequestedEventArgs](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalnewwindowrequestedeventargs?view=webview2-1.0.955-prerelease&preserve-view=true#get_name). * Added support for virtual host name mapping to work with Service Workers. * Added [HiddenPdfToolbarItems](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalsettings6?view=webview2-1.0.955-prerelease&preserve-view=true#get_hiddenpdftoolbaritems) to customize the PDF toolbar items. -#### Bug fixes +###### Bug fixes * Fixed bug that broke the `edge://downloads` and `edge://history` pages. This change is Runtime-specific. * Fixed bugs to improve reliability in the WebView2Loader.dll. @@ -1829,12 +1904,12 @@ For full API compatibility, this prerelease version of the WebView2 SDK requires * Fixed bug preventing non-ASCII filenames from being used in `ResultFilePath` in `DownloadStartingEventArgs`. ([Issue #1428](https://github.com/MicrosoftEdge/WebViewFeedback/issues/1428)) * Fixed bug where the title bar on the default pop-up wasn't displayed completely. This change is Runtime-specific. ([Issue #1016](https://github.com/MicrosoftEdge/WebViewFeedback/issues/1016)) -#### Promotions +###### Promotions * [add_ClientCertificateRequested](/microsoft-edge/webview2/reference/win32/icorewebview2_5?view=webview2-1.0.955-prerelease&preserve-view=true#add_clientcertificaterequested) was promoted to stable. -### .NET +#### .NET -#### Bug fixes +###### Bug fixes * Fixed an issue in WebView2 .NET API reference documentation that caused only the first exception to be displayed. * .NET core libraries are now built in release mode. To debug, ensure you clear the **Just my code** checkbox. * Fixed a bug that crashed WebView2 on forms with child forms. The child form, with the find in page bar open, caused WebView2 to crash when the child form was closed. ([Issue #1097](https://github.com/MicrosoftEdge/WebViewFeedback/issues/1097)) @@ -1849,16 +1924,16 @@ Release Date: July 26, 2021 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 92.0.902.49 or higher. -### General +#### General -#### Bug fixes +###### Bug fixes * Fix bug that broke the `IsBuiltInErrorPageEnabled` property, which turned off the error page that's displayed when there's a navigation failure or render process failure. This change is Runtime-specific. ([Issue #634](https://github.com/MicrosoftEdge/WebViewFeedback/issues/634)) * Fixed an issue where WebView2 controls took focus away from the user's focus. * Fixed bug when `AddScriptToExecuteOnDocumentCreated` didn't work on child windows. ([Issue #935](https://github.com/MicrosoftEdge/WebViewFeedback/issues/935)) * Fixed a bug that caused inactive tabs to be automatically discarded. ([Issue #637](https://github.com/MicrosoftEdge/WebViewFeedback/issues/637)) * Fixed a bug when a navigation event was interrupted by another navigation event resulting in the Navigation ID of `NavigationCompleted` events to be incorrect. ([Issue #1142](https://github.com/MicrosoftEdge/WebViewFeedback/issues/1142)) -#### Promotions +###### Promotions The following items are now in stable: @@ -1878,17 +1953,17 @@ Release Date: June 1, 2021 For full API compatibility, this prerelease version of the WebView2 SDK requires Microsoft Edge version 92.0.902.0 or higher. -### General +#### General * Improved WebView2 startup performance and disk footprint. -#### Experimental features +###### Experimental features * Added [IsSwipeNavigationEnabled](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalsettings5?view=webview2-1.0.902-prerelease&preserve-view=true#get_isswipenavigationenabled) property to enable or disable the ability of the end user to use swiping gesture on touch input-enabled devices to navigate in WebView2. * Added [BrowserProcessExited](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalenvironment4?view=webview2-1.0.902-prerelease&preserve-view=true#add_browserprocessexited) event. * Added [add_ClientCertificateRequested API](/microsoft-edge/webview2/reference/win32/icorewebview2experimental3?view=webview2-1.0.902-prerelease&preserve-view=true#add_clientcertificaterequested). It allows showing a client certificate dialog prompt if desired and enables access to required metadata to replace default client certificate dialog prompt. -#### Bug fixes +###### Bug fixes * Fix a bug where mouse left click doesn't dismiss context menu. This change is Runtime-specific. * Fixed a bug where WebView2 creation fails when exe files for apps sharing the same user data folder have inconsistent version info. @@ -1904,7 +1979,7 @@ For full API compatibility, this prerelease version of the WebView2 SDK requires * Fixed a reliability bug that could crash the host app process when moving to a newer Edge WebView2 Runtime version. * **DEPRECATION**: Officially deprecated the `DefaultBackgroundColor` API for Windows 7. -#### Promotions +###### Promotions * [Download API](/microsoft-edge/webview2/reference/win32/icorewebview2_4?view=webview2-1.0.902-prerelease&preserve-view=true#add_downloadstarting) is now promoted to stable. * [PinchZoom API](/microsoft-edge/webview2/reference/win32/icorewebview2settings5?view=webview2-1.0.902-prerelease&preserve-view=true#get_ispinchzoomenabled) is now promoted to stable. @@ -1914,9 +1989,9 @@ For full API compatibility, this prerelease version of the WebView2 SDK requires > [!NOTE] > There is no current API to delete the locally stored general autofill and password autosave information. Please provide a control to delete the data, which will involve deleting the entire user data folder. -### .NET +#### .NET -#### Bug fixes +###### Bug fixes * Fixed a bug in WebView2 WinForm control where WebView2 window visibility isn't updated properly after parent window is disposed. ([Issue #1282](https://github.com/MicrosoftEdge/WebViewFeedback/issues/1282) and [Issue #828](https://github.com/MicrosoftEdge/WebViewFeedback/issues/828)). * Fixed a bug in WebView2 WPF control that Source property binding in WPF OneWay binding mode isn't working properly. ([Issue #619](https://github.com/MicrosoftEdge/WebViewFeedback/issues/619) and [Issue #608](https://github.com/MicrosoftEdge/WebViewFeedback/issues/608)). @@ -1931,9 +2006,9 @@ Release Date: May 31, 2021 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 91.0.864.35 or higher. -### General +#### General -#### Bug fixes +###### Bug fixes * Fixed a reliability bug that could crash the host app process when moving to a newer Edge WebView2 Runtime version. * Fixed a bug that prevented memory purge in some situations. This change is Runtime-specific. @@ -1941,13 +2016,13 @@ For full API compatibility, this version of the WebView2 SDK requires WebView2 R * Fixed a bug which caused WebResourceRequested event to be dropped for some requests with binary bodies. * Improve `NewWindowRequested` documentation. ([Issue #448](https://github.com/MicrosoftEdge/WebViewFeedback/issues/448)). -#### Promotions +###### Promotions * [UserAgent API](/microsoft-edge/webview2/reference/win32/icorewebview2settings2?view=webview2-1.0.864.35&preserve-view=true#get_useragent) is now stable. * [AreBrowserkeysenabled](/microsoft-edge/webview2/reference/win32/icorewebview2settings3?view=webview2-1.0.864.35&preserve-view=true#get_arebrowseracceleratorkeysenabled) is now stable. -### .NET +#### .NET -#### Bug fixes +###### Bug fixes * Fixed a bug in WebView2 .NET controls that first header is missing when iterating `CoreWebView2WebResourceRequest` headers collection. ([Issue #1123](https://github.com/MicrosoftEdge/WebViewFeedback/issues/1123)). @@ -1960,9 +2035,9 @@ Release Date: April 26, 2021 For full API compatibility, this prerelease version of the WebView2 SDK requires Microsoft Edge version 91.0.865.0 or higher. -### General +#### General -#### Experimental features +###### Experimental features * Added [IsPinchZoomEnabled](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalsettings4?view=webview2-1.0.865-prerelease&preserve-view=true#ispinchzoomenabled) setting. It allows you to turn on or off page scale zoom control in a setting. * Added Custom [add_DownloadStarting](/microsoft-edge/webview2/reference/win32/icorewebview2experimental2?view=webview2-1.0.865-prerelease&preserve-view=true#add_downloadstarting) API. It allows you to block downloads, save to a different path, and access the required metadata to build custom download UI. @@ -1970,7 +2045,7 @@ For full API compatibility, this prerelease version of the WebView2 SDK requires * Added sample code for [WPF sample app](https://github.com/MicrosoftEdge/WebView2Samples/tree/main/SampleApps/WebView2WpfBrowser) to use the API to turn off browser function keys. * Added the [UpdateRuntime](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalenvironment3?view=webview2-1.0.865-prerelease&preserve-view=true#updateruntime) API, to easily update the WebView2 Runtime. -#### Bug fixes +###### Bug fixes * Fixed handler for a `Chromium DevTools Protocol` message with `POST` binary data in WebView2. * Turned off the `OpenSaveAsAwareness` download UI, because it included links to `edge://settings`. ([Issue #1120](https://github.com/MicrosoftEdge/WebViewFeedback/issues/1120)). @@ -1979,14 +2054,14 @@ For full API compatibility, this prerelease version of the WebView2 SDK requires * Fixed bug for composition hosting where mouse input stopped working if any pen input was sent to WebView2. * Fixed bug that broke mouse input after any pen input. This change is Runtime-specific. -### .NET +#### .NET -#### Experimental features +###### Experimental features * Added WebView2 designer tool to WPF Toolbox. ([Issue #210](https://github.com/MicrosoftEdge/WebViewFeedback/issues/210)). * Added WebView2 UI element in .NET Designer Mode. -#### Bug fixes +###### Bug fixes * Improved COM Exception descriptions by wrapping each in a more detailed .NET exception. ([Issue #338](https://github.com/MicrosoftEdge/WebViewFeedback/issues/338)). This change is Runtime-specific. * Fixed bug caused when you select `Tab` to shift focus caused WebView2 control to crash in Microsoft Visual Studio Tools for Office. ([Issue #589](https://github.com/MicrosoftEdge/WebViewFeedback/issues/589) and [Issue #933](https://github.com/MicrosoftEdge/WebViewFeedback/issues/933)). This change is Runtime-specific. @@ -2005,9 +2080,9 @@ Release Date: April 21, 2021 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 90.0.818.41 or higher. -### General +#### General -#### Features +###### Features * Extended the `ProcessFailed` event. It now raises for non-renderer child processes and frame renderers. * Added `iframe` element support for `AddScriptToExecuteOnDocumentCreated`. @@ -2024,20 +2099,20 @@ Release Date: March 8, 2021 For full API compatibility, this prerelease version of the WebView2 SDK requires Microsoft Edge version 91.0.824.0 or higher. -### General +#### General -#### Features +###### Features * Extended the `ProcessFailed` event. It now raises for non-renderer child processes and frame renderers. * Added experimental [AreBrowserAcceleratorKeysEnabled](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalsettings2?view=webview2-1.0.824&preserve-view=true#get_arebrowseracceleratorkeysenabled) setting. You can prevent the browser from responding to keyboard shortcuts related to navigation, printing, saving, and other browser-specific functions. * Added `iframe` element support for `AddScriptToExecuteOnDocumentCreated`. -#### Promotion +###### Promotion * [UserAgent](/microsoft-edge/webview2/reference/win32/icorewebview2_2?view=webview2-1.0.721-prerelease&preserve-view=true#add_webresourceresponsereceived) API is now promoted to Stable. * Rasterization Scale APIs ([RasterizationScale](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalcontroller?view=webview2-1.0.721-prerelease&preserve-view=true#get_rasterizationscale) property, [RasterizationScaleChanged](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalcontroller?view=webview2-1.0.721-prerelease&preserve-view=true#add_rasterizationscalechanged) event, [BoundsMode property](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalcontroller?view=webview2-1.0.721-prerelease&preserve-view=true#get_boundsmode), and [ShouldDetectMonitorScaleChanges](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalcontroller?view=webview2-1.0.721-prerelease&preserve-view=true#get_shoulddetectmonitorscalechanges) property) are now promoted to Stable. -#### Bug fixes +###### Bug fixes * Expanded supported C++ and .NET project types such as MFC and ATL. ([Issue #506](https://github.com/MicrosoftEdge/WebViewFeedback/issues/506), [Issue #669](https://github.com/MicrosoftEdge/WebViewFeedback/issues/669), and [Issue #851](https://github.com/MicrosoftEdge/WebViewFeedback/issues/851)). * Fixed a bug that Evergreen WebView2 Runtime leaks Inbound firewall entry. @@ -2055,14 +2130,14 @@ Release Date: March 8, 2021 For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 89.0.774.44 or higher. -### General +#### General -#### Features +###### Features * Turned off various Microsoft Edge browser services in WebView2. * Visual Hosting APIs are now Generally Available. -#### Promotions +###### Promotions * The following experimental APIs are now promoted to Stable. * [DPI support](/microsoft-edge/webview2/reference/win32/icorewebview2_2?view=webview2-1.0.721-prerelease&preserve-view=true#add_webresourceresponsereceived) related APIs @@ -2071,7 +2146,7 @@ For full API compatibility, this version of the WebView2 SDK requires WebView2 R * [TrySuspend and Resume](/microsoft-edge/webview2/reference/win32/icorewebview2_3?view=webview2-1.0.790-prerelease&preserve-view=true#trysuspend) * [DefaultBackgroundColor](/microsoft-edge/webview2/reference/win32/icorewebview2controller2?view=webview2-1.0.790-prerelease&preserve-view=true#get_defaultbackgroundcolor) -#### Bug fixes +###### Bug fixes * Fixed a bug that limited WebView2 bounds to size of screen in Visual Hosting mode. @@ -2085,7 +2160,7 @@ Release Date: February 10, 2021 This prerelease version of the WebView2 SDK requires Microsoft Edge version 86.0.616.0 or higher. -### General +#### General > [!IMPORTANT] > **Breaking Change**: WebView2 prerelease package 1.0.781 is deprecated. Discontinue development with package 1.0.781. @@ -2093,7 +2168,7 @@ This prerelease version of the WebView2 SDK requires Microsoft Edge version 86.0 > [!IMPORTANT] > WebView2 prerelease package 0.9.430 is deprecated, and is removed with the next release. If your WebView2 app uses the package, the WebView2 team recommends that you move to a newer package. -#### Features +###### Features * Added [TrySuspend and Resume](/microsoft-edge/webview2/reference/win32/icorewebview2_3?view=webview2-1.0.790-prerelease&preserve-view=true#trysuspend) method to suspend and resume WebViews. * Added [SetVirtualHostNameToFolderMapping](/microsoft-edge/webview2/reference/win32/icorewebview2_3?view=webview2-1.0.790-prerelease&preserve-view=true#setvirtualhostnametofoldermapping) method that maps a virtual host name to a directory path. ([Issue #37](https://github.com/MicrosoftEdge/WebViewFeedback/issues/37), [Issue #161](https://github.com/MicrosoftEdge/WebViewFeedback/issues/161), and [Issue #212](https://github.com/MicrosoftEdge/WebViewFeedback/issues/212)). @@ -2102,7 +2177,7 @@ This prerelease version of the WebView2 SDK requires Microsoft Edge version 86.0 * Replaced the `CreateCookieWithCookie` method with the `CopyCookie` method. * Added visual hosting support using the [ICoreWebView2CompositionController](/microsoft-edge/webview2/reference/win32/icorewebview2compositioncontroller?view=webview2-1.0.790-prerelease&preserve-view=true) interface, which is created using the new `CreateCoreWebView2CompositionController` method from `ICoreWebView2Environment3`. -#### Bug fixes +###### Bug fixes * Turned off the Microsoft Edge Shopping feature in WebView2. * Turned off the context menu in the PDF viewer when `AreDefaultContextMenusEnabled` is `false`. ([Issue #605](https://github.com/MicrosoftEdge/WebViewFeedback/issues/605)). @@ -2117,15 +2192,15 @@ This prerelease version of the WebView2 SDK requires Microsoft Edge version 86.0 * Reduced high CPU usage issues. ([Issue #878](https://github.com/MicrosoftEdge/WebViewFeedback/issues/878)). * Fixed issues with deprecated 1.0.781-prerelease package. ([Issue #875](https://github.com/MicrosoftEdge/WebViewFeedback/issues/875) and [Issue #878](https://github.com/MicrosoftEdge/WebViewFeedback/issues/878)). -#### Promotions +###### Promotions * The following experimental APIs are now promoted to Stable: * Visual Hosting APIs * [SetVirtualHostNameToFolderMapping](/microsoft-edge/webview2/reference/win32/icorewebview2_3?view=webview2-1.0.790-prerelease&preserve-view=true#setvirtualhostnametofoldermapping) -### .NET +#### .NET -#### Bug fixes +###### Bug fixes * Fixed bug that crashed WebView2 apps that use the WPF SDK. The crash occurred when you selected `F4` to close a window. ([Issue #399](https://github.com/MicrosoftEdge/WebViewFeedback/issues/399)). * The WebView2 initialization screen is now transparent, instead of gray. ([Issue #196](https://github.com/MicrosoftEdge/WebViewFeedback/issues/196)). @@ -2140,9 +2215,9 @@ Release Date: January 25, 2021 This version of the WebView2 SDK requires WebView2 Runtime version 86.0.616.0 or higher. -### General +#### General -#### Promotions +###### Promotions * The following experimental APIs are now promoted to Stable: * [WebResourceResponseReceived API](/microsoft-edge/webview2/reference/win32/icorewebview2_2?view=webview2-1.0.721-prerelease&preserve-view=true#add_webresourceresponsereceived) @@ -2161,12 +2236,12 @@ Release Date: December 8, 2020 This prerelease version of the WebView2 SDK requires Microsoft Edge version 86.0.616.0 or higher. -### General +#### General > [!IMPORTANT] > **Breaking Change**: WebView2 prerelease package 1.0.707 and package 0.9.628 are deprecated. Discontinue development with package 1.0.707 and package0.9.628. -#### Features +###### Features * Added [WebView2 Group Policies](/deployedge/microsoft-edge-webview-policies). For best practices, see [group policies for WebView2](concepts/enterprise.md#group-policies-for-webview2). * > [!IMPORTANT] @@ -2189,15 +2264,15 @@ This prerelease version of the WebView2 SDK requires Microsoft Edge version 86.0 * [DOMContentLoaded API](/microsoft-edge/webview2/reference/win32/icorewebview2_2?view=webview2-1.0.721-prerelease&preserve-view=true#add_domcontentloaded) * [Environment property](/microsoft-edge/webview2/reference/win32/icorewebview2_2?view=webview2-1.0.721-prerelease&preserve-view=true#get_environment) -### .NET +#### .NET -#### Features +###### Features * Turned on WinForms designer in .NET Core 3.1+ and .NET 5. * Improved .NET cookie management. ([Issue #611](https://github.com/MicrosoftEdge/WebViewFeedback/issues/611)). * Replaced `CoreWebView2Ready` with [CoreWebView2InitializationCompleted](/dotnet/api/microsoft.web.webview2.core.corewebview2initializationcompletedeventargs). -#### Bug fixes +###### Bug fixes * Added [AcceleratorKeyPressed](/dotnet/api/microsoft.web.webview2.wpf.webview2.acceleratorkeypressed) event to support `AcceleratorKey` select in WebView2. ([Issue #288](https://github.com/MicrosoftEdge/WebViewFeedback/issues/288)). * Removed unnecessary files from being output to WebView2 folders. ([Issue #461](https://github.com/MicrosoftEdge/WebViewFeedback/issues/461)). @@ -2213,19 +2288,19 @@ Release Date: November 20, 2020 This version of the WebView2 SDK requires WebView2 Runtime version 86.0.616.0 or higher. -### General +#### General > [!IMPORTANT] > **Announcement**: .NET WPF/WinForms WebView2 SDKs are now Generally Available (GA). Starting with this release, Release SDKs are forward-compatible. For more details, see [GA announcement blog post](https://devblogs.microsoft.com/dotnet/announcing-general-availability-for-microsoft-edge-webview2-for-net-and-fixed-distribution-method). -#### Features +###### Features * .NET WPF/WinForms WebView2 is now Generally Available (GA). * Fixed Distribution (Bring-your-own) mode reached GA. -### .NET +#### .NET -#### Bug fixes +###### Bug fixes * `CoreWebView2NewWindowRequestedEventArgs.Handled` prevents new window from being opened. ([Issue #549](https://github.com/MicrosoftEdge/WebViewFeedback/issues/549) and [Issue #560](https://github.com/MicrosoftEdge/WebViewFeedback/issues/560)). @@ -2239,7 +2314,7 @@ Release Date: October 19, 2020 This prerelease version of the WebView2 SDK requires WebView2 Runtime version 86.0.616.0 or higher. -### General +#### General * Added [NavigateWithWebResourceRequest](/microsoft-edge/webview2/reference/win32/icorewebview2experimental?view=webview2-1.0.674-prerelease&preserve-view=true#navigatewithwebresourcerequest) method to provide post data or other request headers during navigation. * Added [DOMContentLoaded](/microsoft-edge/webview2/reference/win32/icorewebview2experimental?view=webview2-1.0.674-prerelease&preserve-view=true#add_domcontentloaded) event that runs when the initial HTML document is loaded and parsed. @@ -2251,7 +2326,7 @@ This prerelease version of the WebView2 SDK requires WebView2 Runtime version 86 * Added bug fixed for Input Method in Visual Hosting. * Removed include requirement for `version.lib` when using WebView2 static library. -### .NET +#### .NET * Updated [CoreWebView2](/dotnet/api/microsoft.web.webview2.core.corewebview2) class to expose the `CoreWebView2Environment` variable. * Changed implementations of custom EventArgs classes in `Microsoft.Web.WebView2.Core` namespace to subclasses of [System.EventArgs](/dotnet/api/system.eventargs) or [System.ComponentModel.CancelEventArgs](/dotnet/api/system.componentmodel.canceleventargs). ([Issue #250](https://github.com/MicrosoftEdge/WebViewFeedback/issues/250)) @@ -2273,7 +2348,7 @@ Release Date: October 19, 2020 This version of the WebView2 SDK requires WebView2 Runtime version 86.0.616.0 or higher. -### General +#### General > [!IMPORTANT] > **Announcement**: Win32 C/C++ WebView2 is now Generally Available (GA). Starting this release, Release SDKs are forward-compatible. See [GA announcement blog post](https://blogs.windows.com/msedgedev/edge-webview2-general-availability). @@ -2292,7 +2367,7 @@ Release Date: September 10, 2020 This version of the WebView2 SDK requires WebView2 Runtime version 86.0.616.0 or higher. -### General +#### General * > [!IMPORTANT] > **Announcement**: This SDK is the Release Candidate for WebView2 Win32 C/C++ GA. The GA version is expected to use the same API interface and functionality. @@ -2314,7 +2389,7 @@ Release Date: July 20, 2020 This version of the WebView2 SDK requires Microsoft Edge version 86.0.579.0 or higher. -### General +#### General * > [!IMPORTANT] > **Announcement**: Evergreen WebView2 Runtime and installer is released for preview. See [Distribute your app and the WebView2 Runtime](concepts/distribution.md). @@ -2337,7 +2412,7 @@ This version of the WebView2 SDK requires Microsoft Edge version 86.0.579.0 or h * Added experimental [IsSingleSignOnUsingOSPrimaryAccountEnabled](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalenvironmentoptions?view=webview2-0.9.538-prerelease&preserve-view=true#get_issinglesignonusingosprimaryaccountenabled) property on WebView2 environment options to turn on conditional access for WebView2. * Added experimental [WebResourceResponseReceived](/microsoft-edge/webview2/reference/win32/icorewebview2experimental?view=webview2-0.9.538-prerelease&preserve-view=true#add_webresourceresponsereceived) event that runs after the WebView2 receives and processes the response from a WebResource request. Authentication headers, if any, are included in the response object. -### .NET +#### .NET * Improved WPF focus handling. ([Issue #185](https://github.com/MicrosoftEdge/WebViewFeedback/issues/185)). * Added `ZoomFactor` property on WPF Webview2 Controller. @@ -2350,12 +2425,12 @@ This version of the WebView2 SDK requires Microsoft Edge version 86.0.579.0 or h This version of the WebView2 SDK requires Microsoft Edge version 85.0.538.0 or higher. -### General +#### General * Dropping support for WebView2 SDK Version [0.8.149](#08149). WebView2 recommends staying up to date with the latest version of WebView2. * Updated group policy to account for when the profile path of the Microsoft Edge browser is modified ([#179](https://github.com/MicrosoftEdge/WebViewFeedback/issues/179)). -### Win32 C/C++ +#### Win32 C/C++ * Added [ICoreWebView2ExperimentalNewWindowRequestedEventArgs::get_WindowFeatures](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalnewwindowrequestedeventargs?view=webview2-0.9.538-prerelease&preserve-view=true#get_windowfeatures), which fires when `window.open()` is run and associated with [ICoreWebView2ExperimentalWindowFeatures](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalwindowfeatures?view=webview2-0.9.538-prerelease&preserve-view=true) ([#70](https://github.com/MicrosoftEdge/WebViewFeedback/issues/70)). * > [!IMPORTANT] @@ -2368,7 +2443,7 @@ This version of the WebView2 SDK requires Microsoft Edge version 85.0.538.0 or h * Updated [AddHostObjectToScript](/microsoft-edge/webview2/reference/win32/icorewebview2?view=webview2-0.9.538&preserve-view=true#addhostobjecttoscript). The original host object serializer markers are now set to the proxy objects. Then host object serializer markers are serialized back as a host object when passed as a parameter in the JavaScript callback ([#148](https://github.com/MicrosoftEdge/WebViewFeedback/issues/148)). -### .NET (0.9.538 prerelease) +#### .NET (0.9.538 prerelease) * Released WinForms and WPF WebView2API Samples, which are comprehensive guides of the WebView2 SDK. See [Samples Repo](https://github.com/MicrosoftEdge/WebView2Samples). * Added support for visual hosting and window features [experimental APIs](concepts/versioning.md#experimental-apis). @@ -2502,7 +2577,7 @@ This version of the WebView2 SDK requires Microsoft Edge version 80.0.355.0 or h This version of the WebView2 SDK requires Microsoft Edge version 80.0.314.0 or higher. -### Changes +#### Changes * Added support for Windows 7, Windows 8, and Windows 8.1. See [Supported platforms](./index.md#supported-platforms) in _Introduction to Microsoft Edge WebView2_. * Added Visual Studio and Visual Studio Code debug support for WebView2. Now, debug your script in the WebView2 right from your IDE. See [How to debug when developing with WebView2 controls](how-to/debug.md). @@ -2524,7 +2599,7 @@ This version of the WebView2 SDK requires Microsoft Edge version 80.0.314.0 or h This version of the WebView2 SDK requires Microsoft Edge version 78.0.270.0 or higher. -### Changes +#### Changes * Added `DocumentTitleChanged` event to indicate document title change ([Issue #27](https://github.com/MicrosoftEdge/WebViewFeedback/issues/27)). @@ -2548,7 +2623,7 @@ This version of the WebView2 SDK requires Microsoft Edge version 78.0.270.0 or h This version of the WebView2 SDK requires Microsoft Edge version 77.0.230.0 or higher. -### Changes +#### Changes * Added `Stop` API to stop all navigation and pending resource fetches ([Issue #28](https://github.com/MicrosoftEdge/WebViewFeedback/issues/28)). * Added `.tlb` file to the NuGet package ([Issue #22](https://github.com/MicrosoftEdge/WebViewFeedback/issues/22)). diff --git a/microsoft-edge/webview2/roadmap.md b/microsoft-edge/webview2/roadmap.md index ad78529bad..8d416798cd 100644 --- a/microsoft-edge/webview2/roadmap.md +++ b/microsoft-edge/webview2/roadmap.md @@ -41,22 +41,30 @@ Fixed version distribution mode allows you to package the Microsoft Edge binarie The following technologies have reached General Availability (GA). -### Win32 C/C++ + + +#### Win32 C/C++ The Win32 C/C++ SDK has reached GA. -### .NET + + +#### .NET The .NET SDK has reached GA. -### Windows UI Library 2 + + +#### Windows UI Library 2 You can access WebView2 controls in your UWP applications using [Windows UI Library 2 (WinUI 2)](get-started/winui2.md). This has reached GA. -### Windows UI Library 3 + + +#### Windows UI Library 3 You can access WebView2 controls in your applications using [Windows UI Library 3 (WinUI 3)](/uwp/toolkits/winui3/index) with the Windows App SDK. This has reached GA. -#### Xbox, HoloLens, and XAML limitations +###### Xbox, HoloLens, and XAML limitations This version of WebView 2 will only work on PC-class devices, offering the full range of capability found in the WinUI 3 variant. Xbox, HoloLens, and XAML Island support requires additional work, and these devices and scenarios may be considered at a future point in time. diff --git a/microsoft-edge/webview2/samples/webview2apissample.md b/microsoft-edge/webview2/samples/webview2apissample.md index c58c91ea40..5f02b93389 100644 --- a/microsoft-edge/webview2/samples/webview2apissample.md +++ b/microsoft-edge/webview2/samples/webview2apissample.md @@ -265,34 +265,50 @@ Both of these parts of the Sample App are displayed in the image below: This section briefly explains some key files within the repository. The WebView2APISample is divided vertically into components, instead of horizontally into layers. Each component implements the whole workflow of a category of example features, from listening for menu commands, to calling WebView API methods to implement them. + + #### 1. App.cpp This is the top-level file that runs the Sample App. It reads command line options, sets up the process environment, and handles the app's threading model. + + #### 2. AppWindow.cpp This file implements the application window. In this file, we first set up all the Win32 controls. Second, we initialize the WebView Environment and the WebView. Third, we add some event handlers to the WebView and create all the components that handle various features of the application. The `AppWindow` class itself handles commands from the application's Window menu. + + #### 3. FileComponent.cpp This component handles commands from the File menu (except for Exit), as well as the `DocumentTitleChanged` event. + + #### 4. ScriptComponent.cpp This component handles commands from the Script menu, which involve interacting with the WebView by injecting JavaScript, posting WebMessages, adding native objects to the webpage, or using the DevTools protocol to communicate with the webpage. + + #### 5. ProcessComponent.cpp This component handles commands from the Process menu, which involve interaction with the browser's process. It also handles the ProcessFailed event, in case the browser process or one of its render process crashes or is unresponsive. + + #### 6. SettingsComponent.cpp This component handles commands from the Settings menu, and is also in charge of copying settings from an old WebView when a new one is created. Most code that interacts with the `ICoreWebView2Settings` interface can be found here. + + #### 7. ViewComponent.cpp This component handles commands from the View menu, and any functionality related to sizing and visibility of the WebView. When the app window is resized, minimized, or restored, `ViewComponent` will resize, hide, or show the WebView in response. It also responds to the `ZoomFactorChanged` event. + + #### 8. ScenarioWebMessage.cpp and ScenarioWebMessage.html This component is created when you select the Scenario/Web Messaging menu item. It implements an example application with a C++ part and an HTML+JavaScript part, which communicate with each other by asynchronously posting and receiving messages. @@ -301,6 +317,7 @@ This component is created when you select the Scenario/Web Messaging menu item. + #### 9. ScenarioAddHostObject.cpp and ScenarioAddHostObject.html This component is created when you select the Scenario/Host Objects menu item. It demonstrates communication between the native app and the HTML webpage by means of host object injection. The interface of the host object is declared in `HostObjectSample.idl`, and the object itself is implemented in `HostObjectSampleImpl.cpp`. @@ -312,8 +329,11 @@ This component is created when you select the Scenario/Host Objects menu item. I The section below briefly explains some of the key functions in the Sample App. -### AppWindow.cpp + +## AppWindow.cpp + + #### InitializeWebView() In the AppWindow file, we use the InitializeWebView() function to create the WebView2 environment by using [CreateCoreWebView2EnvironmentWithOptions](/microsoft-edge/webview2/reference/win32/webview2-idl#createcorewebview2environmentwithoptions). @@ -346,6 +366,8 @@ if (!SUCCEEDED(hr)) } ``` + + #### OnCreateEnvironmentCompleted() This callback function is passed to `CreateCoreWebView2EnvironmentWithOptions` in `InitializeWebView()`. It stored the environment pointer and then uses it to create a new WebView. @@ -366,10 +388,14 @@ HRESULT AppWindow::OnCreateEnvironmentCompleted( } ``` + + #### OnCreateCoreWebView2ControllerCompleted() This callback function is passed to `CreateCoreWebView2Controller` in `InitializeWebView()`. Here, we initialize the WebView-related state, register some event handlers, and create the app components. + + #### RegisterEventHandlers() This function is called within `CreateCoreWebView2Controller`. It sets up some of the event handlers used by the application, and adds them to the WebView. @@ -401,7 +427,9 @@ CHECK_FAILURE(m_webView->add_NewWindowRequested( nullptr)); ``` -### ScenarioWebMessage + + +## ScenarioWebMessage The `ScenarioWebMessage` files show how the Win32 Host can modify the WebView, how the WebView can modify the Win32Host, and how the WebView can modify itself by accessing information from the Win32 Host. This is done asynchronously. @@ -419,6 +447,8 @@ The WebView should display a simple webpage titled: "WebMessage sample page". Th To better understand ScenarioWebMessage functionality, you can either follow the instructions on the page or the steps detailed below. + + #### 1. Posting Messages (Win32 Host to WebView) The following steps show how the Win32 Host can modify a WebView. In this example, you will turn the text blue: @@ -463,6 +493,8 @@ window.chrome.webview.addEventListener('message', arg => { }); ``` + + #### 2. Receiving Messages (WebView to Win32 Host) The following steps show how the WebView can modify the Win32 Host App by changing the title of the Win32 App: @@ -513,6 +545,8 @@ CHECK_FAILURE(m_webview->add_WebMessageReceived( }).Get(), &m_webMessageReceivedToken)); ``` + + #### 3. Roundtrip (WebView to WebView) The following steps show how the WebView can get information from the Win32 Host and modify itself by displaying the size of the Win32 App. diff --git a/microsoft-edge/webview2/samples/webview2browser.md b/microsoft-edge/webview2/samples/webview2browser.md index 96915661f2..d7fc2fb332 100644 --- a/microsoft-edge/webview2/samples/webview2browser.md +++ b/microsoft-edge/webview2/samples/webview2browser.md @@ -63,6 +63,8 @@ The [WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2/) 1. Make the changes listed below, if you're using a Windows version below Windows 10. + + #### Using versions below Windows 10 If you want to build and run the browser in versions of Windows before Windows 10, make the following changes. This is required because of how DPI is handled in Windows 10 vs previous versions of Windows. @@ -202,8 +204,8 @@ The sections below describe how some of the features in WebView2Browser were imp **Contents:** * [The basics](#the-basics) - * [Set up the environment, create a WebView](#set-up-the-environment-create-a-webview) - * [Navigate to web page](#navigate-to-web-page) + * [Setting up the environment and creating a WebView](#setting-up-the-environment-and-creating-a-webview) + * [Navigating to a web page](#navigating-to-a-web-page) * [Updating the address bar](#updating-the-address-bar) * [Going back, going forward](#going-back-going-forward) * [Some interesting features](#some-interesting-features) @@ -217,7 +219,9 @@ The sections below describe how some of the features in WebView2Browser were imp ## The basics -### Set up the environment, create a WebView + + +#### Setting up the environment and creating a WebView WebView2 allows you to host web content in your Windows app. It exposes the globals [CreateCoreWebView2Environment](/microsoft-edge/webview2/reference/win32/webview2-idl#createcorewebview2environment) and [CreateCoreWebView2EnvironmentWithOptions](/microsoft-edge/webview2/reference/win32/webview2-idl#createcorewebview2environmentwithoptions) from which we can create the two separate environments for the browser's UI and content. @@ -316,9 +320,10 @@ HRESULT BrowserWindow::CreateBrowserControlsWebView() We're setting up a few things here. The [ICoreWebView2Settings](/microsoft-edge/webview2/reference/win32/icorewebview2settings) interface is used to disable DevTools in the WebView powering the browser controls. We're also adding a handler for received web messages. This handler will enable us to do something when the user interacts with the controls in this WebView. -#### Navigate to web page + +#### Navigating to a webpage -You can navigate to a web page by entering its URI in the address bar. When pressing Enter, the controls WebView will post a web message to the host app so it can navigate the active tab to the specified location. Code below shows how the host Win32 application will handle that message. +You can navigate to a webpage by entering its URI in the address bar. When pressing Enter, the controls WebView will post a web message to the host app so it can navigate the active tab to the specified location. Code below shows how the host Win32 application will handle that message. ```cpp case MG_NAVIGATE: @@ -356,6 +361,7 @@ You can navigate to a web page by entering its URI in the address bar. When pres WebView2Browser will check the URI against browser pages (i.e. favorites, settings, history) and navigate to the requested location or use the provided URI to search Bing as a fallback. + #### Updating the address bar The address bar is updated every time there is a change in the active tab's document source and along with other controls when switching tabs. Each WebView will fire an event when the state of the document changes, we can use this event to get the new source on updates and forward the change to the controls WebView (we'll also update the go back and go forward buttons). @@ -433,6 +439,7 @@ We have sent the `MG_UPDATE_URI` message along with the URI to the controls WebV ``` + #### Going back, going forward Each WebView will keep a history for the navigations it has performed so we only need to connect the browser UI with the corresponding methods. If the active tab's WebView can be navigated back/forward, the buttons will post a web message to the host application when clicked. @@ -477,7 +484,8 @@ The host application side: ``` -#### Reloading, stop navigation + +#### Reloading, stopping navigation We use the `NavigationStarting` event fired by a content WebView to update its associated tab loading state in the controls WebView. Similarly, when a WebView fires the `NavigationCompleted` event, we use that event to instruct the controls WebView to update the tab state. The active tab state in the controls WebView will determine whether to show the reload or the cancel button. Each of those will post a message back to the host application when clicked, so that the WebView for that tab can be reloaded or have its navigation canceled, accordingly. @@ -523,11 +531,12 @@ function reloadActiveTabContent() { ## Some interesting features + #### Communicating the WebViews -We need to communicate the WebViews that power the tabs and UI, so that user interactions in one tab's WebView have the desired effect in the other WebView. WebView2Browser makes use of set of very useful WebView2 APIs for this purpose, including [PostWebMessageAsJson](/microsoft-edge/webview2/reference/win32/icorewebview2#postwebmessageasjson), [add_WebMessageReceived](/microsoft-edge/webview2/reference/win32/icorewebview2#add_webmessagereceived) and [ICoreWebView2WebMessageReceivedEventHandler](/microsoft-edge/webview2/reference/win32/icorewebview2webmessagereceivedeventhandler). +We need to communicate the WebViews that power the tabs and UI, so that user interactions in one tab's WebView have the desired effect in the other WebView. To do this, WebView2Browser uses WebView2 APIs, including [PostWebMessageAsJson](/microsoft-edge/webview2/reference/win32/icorewebview2#postwebmessageasjson), [add_WebMessageReceived](/microsoft-edge/webview2/reference/win32/icorewebview2#add_webmessagereceived) and [ICoreWebView2WebMessageReceivedEventHandler](/microsoft-edge/webview2/reference/win32/icorewebview2webmessagereceivedeventhandler). -On the JavaScript side, we're making use of the `window.chrome.webview` object exposed to call the `postMessage` method and add an event lister for received messages. +On the JavaScript side, we use the exposed `window.chrome.webview` object to call the `postMessage` method and add an event lister for received messages. ```cpp HRESULT BrowserWindow::CreateBrowserControlsWebView() @@ -588,9 +597,11 @@ function reloadActiveTabContent() { } ``` + + #### Tab handling -A new tab will be created whenever the user clicks on the **new tab** button to the right of the open tabs. The control's WebView will post a message to the host application to create the WebView for that tab and create an object tracking its state. +A new tab is created whenever the user clicks the **New tab** button to the right of the open tabs. The control's WebView will post a message to the host application to create the WebView for that tab and create an object tracking its state. ```javascript function createNewTab(shouldBeActive) { @@ -740,6 +751,8 @@ HRESULT BrowserWindow::SwitchToTab(size_t tabId) } ``` + + #### Updating the security icon We use the [CallDevToolsProtocolMethod](/microsoft-edge/webview2/reference/win32/icorewebview2#calldevtoolsprotocolmethod) to enable listening for security events. Whenever a `securityStateChanged` event is fired, we will use the new state to update the security icon on the controls WebView. @@ -789,6 +802,8 @@ HRESULT BrowserWindow::HandleTabSecurityUpdate(size_t tabId, ICoreWebView2* webv break; ``` + + #### Populating the history WebView2Browser uses IndexedDB in the controls WebView to store history items, just an example of how WebView2 enables you to access standard web technologies as you would in the browser. The item for a navigation will be created as soon as the URI is updated. These items are then retrieved by the history UI in a tab making use of `window.chrome.postMessage`. From 37ed9d2d0be054d5bbc4812904dec5a244c5b4f4 Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Fri, 10 Mar 2023 16:50:50 -0800 Subject: [PATCH 13/31] Change tabs to h5 in wv2 docs --- .../webview2/concepts/basic-authentication.md | 12 ++++---- .../webview2/concepts/clear-browsing-data.md | 20 ++++++------- .../webview2/concepts/process-model.md | 4 +-- .../webview2/concepts/user-data-folder.md | 30 +++++++++---------- .../webview2/samples/webview2browser.md | 2 +- 5 files changed, 34 insertions(+), 34 deletions(-) diff --git a/microsoft-edge/webview2/concepts/basic-authentication.md b/microsoft-edge/webview2/concepts/basic-authentication.md index da5cc1378a..195f540d20 100644 --- a/microsoft-edge/webview2/concepts/basic-authentication.md +++ b/microsoft-edge/webview2/concepts/basic-authentication.md @@ -111,7 +111,7 @@ For more realistic code, see the subsequent section. -# [C#](#tab/csharp) +##### [C#](#tab/csharp) ```csharp // Prerequisite: Before using this code, make sure you read the section "Use HTTPS @@ -132,7 +132,7 @@ For more realistic code, see the subsequent section. -# [C++](#tab/cpp) +##### [C++](#tab/cpp) ```cpp // Prerequisite: Before using this code, make sure you read the section "Use HTTPS @@ -186,7 +186,7 @@ This example builds upon the above sample, by adding the following features: -# [C#](#tab/csharp) +##### [C#](#tab/csharp) ```csharp // Prerequisite: Before using this code, make sure you read the section "Use HTTPS @@ -263,7 +263,7 @@ webView.CoreWebView2.BasicAuthenticationRequested += delegate ( -# [C++](#tab/cpp) +##### [C++](#tab/cpp) ```cpp // Prerequisite: Before using this code, make sure you read the section "Use HTTPS @@ -423,7 +423,7 @@ Navigation `event args` has a property: the `NavigationId`. The `NavigationId` -# [C#](#tab/csharp) +##### [C#](#tab/csharp) * [CoreWebView2BasicAuthenticationRequestedEventArgs Class](/dotnet/api/microsoft.web.webview2.core.corewebview2basicauthenticationrequestedeventargs) * [CoreWebView2.BasicAuthenticationRequested Event](/dotnet/api/microsoft.web.webview2.core.corewebview2.basicauthenticationrequested) @@ -431,7 +431,7 @@ Navigation `event args` has a property: the `NavigationId`. The `NavigationId` -# [C++](#tab/cpp) +##### [C++](#tab/cpp) * [ICoreWebView2BasicAuthenticationRequestedEventArgs interface](/microsoft-edge/webview2/reference/win32/icorewebview2basicauthenticationrequestedeventargs) * [add_BasicAuthenticationRequested method](/microsoft-edge/webview2/reference/win32/icorewebview2_10#add_basicauthenticationrequested) diff --git a/microsoft-edge/webview2/concepts/clear-browsing-data.md b/microsoft-edge/webview2/concepts/clear-browsing-data.md index cd6347abf2..ed4f87b1aa 100644 --- a/microsoft-edge/webview2/concepts/clear-browsing-data.md +++ b/microsoft-edge/webview2/concepts/clear-browsing-data.md @@ -28,14 +28,14 @@ This method clears all the kinds of browsing data that are listed in the data ki -# [C#](#tab/csharp) +##### [C#](#tab/csharp) [CoreWebView2Profile.ClearBrowsingDataAsync() Method](/dotnet/api/microsoft.web.webview2.core.corewebview2profile.clearbrowsingdataasync#microsoft-web-webview2-core-corewebview2profile-clearbrowsingdataasync) -# [C++](#tab/cpp) +##### [C++](#tab/cpp) [ICoreWebView2Profile::ClearBrowsingDataAll() method](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalprofile4#clearbrowsingdataall) @@ -53,7 +53,7 @@ This method clears the specified kinds of browsing data, regardless of when the -# [C#](#tab/csharp) +##### [C#](#tab/csharp) [CoreWebView2Profile.ClearBrowsingDataAsync(dataKinds) Method](/dotnet/api/microsoft.web.webview2.core.corewebview2profile.clearbrowsingdataasync#microsoft-web-webview2-core-corewebview2profile-clearbrowsingdataasync(microsoft-web-webview2-core-corewebview2browsingdatakinds)) @@ -62,7 +62,7 @@ This method clears the specified kinds of browsing data, regardless of when the -# [C++](#tab/cpp) +##### [C++](#tab/cpp) [ICoreWebView2Profile::ClearBrowsingData(dataKinds) method](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalprofile4#clearbrowsingdata) @@ -81,7 +81,7 @@ This method clears the specified kinds of browsing data that was created between -# [C#](#tab/csharp) +##### [C#](#tab/csharp) [CoreWebView2Profile.ClearBrowsingDataAsync(dataKinds, startTime, endTime) Method](/dotnet/api/microsoft.web.webview2.core.corewebview2profile.clearbrowsingdataasync#microsoft-web-webview2-core-corewebview2profile-clearbrowsingdataasync(microsoft-web-webview2-core-corewebview2browsingdatakinds-system-datetime-system-datetime)) @@ -90,7 +90,7 @@ This method clears the specified kinds of browsing data that was created between -# [C++](#tab/cpp) +##### [C++](#tab/cpp) [ICoreWebView2Profile::ClearBrowsingDataInTimeRange(dataKinds, startTime, endTime) method](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalprofile4#clearbrowsingdataintimerange) @@ -115,7 +115,7 @@ The following parameter values are passed to the Clear Browsing Data API method: -# [C#](#tab/csharp) +##### [C#](#tab/csharp) ```csharp // Clears autofill data. @@ -147,7 +147,7 @@ private void ClearAutofillData() -# [C++](#tab/cpp) +##### [C++](#tab/cpp) ```cpp // Clears the autofill data from the last hour. @@ -200,7 +200,7 @@ void ClearAutofillData() -# [C#](#tab/csharp) +##### [C#](#tab/csharp) * [CoreWebView2.Profile Property](/dotnet/api/microsoft.web.webview2.core.corewebview2.profile) * [CoreWebView2Profile Class](/dotnet/api/microsoft.web.webview2.core.corewebview2profile) @@ -212,7 +212,7 @@ void ClearAutofillData() -# [C++](#tab/cpp) +##### [C++](#tab/cpp) * [ICoreWebView2Profile::ClearBrowsingDataAll() method](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalprofile4#clearbrowsingdataall) * [ICoreWebView2Profile::ClearBrowsingData(dataKinds) method](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalprofile4#clearbrowsingdata) diff --git a/microsoft-edge/webview2/concepts/process-model.md b/microsoft-edge/webview2/concepts/process-model.md index 940473a873..7f1fd4c8f1 100644 --- a/microsoft-edge/webview2/concepts/process-model.md +++ b/microsoft-edge/webview2/concepts/process-model.md @@ -72,14 +72,14 @@ To open the **Browser Task Manager**, call the `OpenTaskManagerWindow` method. -# [C#](#tab/csharp) +##### [C#](#tab/csharp) [OpenTaskManagerWindow](/dotnet/api/microsoft.web.webview2.core.corewebview2.opentaskmanagerwindow#microsoft-web-webview2-core-corewebview2-opentaskmanagerwindow) -# [C++](#tab/cpp) +##### [C++](#tab/cpp) [OpenTaskManagerWindow](/microsoft-edge/webview2/reference/win32/icorewebview2_6#opentaskmanagerwindow) diff --git a/microsoft-edge/webview2/concepts/user-data-folder.md b/microsoft-edge/webview2/concepts/user-data-folder.md index c3b925afa4..8e5c405f02 100644 --- a/microsoft-edge/webview2/concepts/user-data-folder.md +++ b/microsoft-edge/webview2/concepts/user-data-folder.md @@ -108,7 +108,7 @@ The default user data folder (UDF) location varies per platform. -# [Win32](#tab/win32) +##### [Win32](#tab/win32) -# [.NET (WPF/WinForms)](#tab/dotnet) +##### [.NET (WPF/WinForms)](#tab/dotnet) -# [ClickOnce](#tab/clickonce) +##### [ClickOnce](#tab/clickonce) -# [WinUI 2 (UWP)](#tab/uwp) +##### [WinUI 2 (UWP)](#tab/uwp) -# [WinUI 3](#tab/winui3) +##### [WinUI 3](#tab/winui3) -# [Win32](#tab/win32) +##### [Win32](#tab/win32) -# [.NET (WPF/WinForms)](#tab/dotnet) +##### [.NET (WPF/WinForms)](#tab/dotnet) -# [ClickOnce](#tab/clickonce) +##### [ClickOnce](#tab/clickonce) -# [WinUI 2 (UWP)](#tab/uwp) +##### [WinUI 2 (UWP)](#tab/uwp) -# [WinUI 3](#tab/winui3) +##### [WinUI 3](#tab/winui3) -# [Win32](#tab/win32) +##### [Win32](#tab/win32) Use the Win32 [ICoreWebView2Environment7.get_UserDataFolder property getter](/microsoft-edge/webview2/reference/win32/icorewebview2environment7#get_userdatafolder). That API Reference page contains example code showing how to read the `UserDataFolder` property. @@ -466,7 +466,7 @@ For examples of reading the `UserDataFolder` property, see the Win32 samples in -# [.NET (WPF/WinForms)](#tab/dotnet) +##### [.NET (WPF/WinForms)](#tab/dotnet) @@ -485,7 +485,7 @@ For examples of reading the `UserDataFolder` property, see the .NET (WPF/WinForm -# [ClickOnce](#tab/clickonce) +##### [ClickOnce](#tab/clickonce) Use the .NET [CoreWebView2Environment.UserDataFolder Property](/dotnet/api/microsoft.web.webview2.core.corewebview2environment.userdatafolder). @@ -502,7 +502,7 @@ For examples of reading the `UserDataFolder` property, see [WebView2Samples repo -# [WinUI 2 (UWP)](#tab/uwp) +##### [WinUI 2 (UWP)](#tab/uwp) Use the WinRT [CoreWebView2Environment.UserDataFolder Property](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2environment#userdatafolder). @@ -523,7 +523,7 @@ For examples of reading the `UserDataFolder` property, see the WinUI 2 (UWP) sam -# [WinUI 3](#tab/winui3) +##### [WinUI 3](#tab/winui3) Use the .NET [CoreWebView2Environment.UserDataFolder Property](/dotnet/api/microsoft.web.webview2.core.corewebview2environment.userdatafolder). diff --git a/microsoft-edge/webview2/samples/webview2browser.md b/microsoft-edge/webview2/samples/webview2browser.md index d7fc2fb332..26dcb4ebb7 100644 --- a/microsoft-edge/webview2/samples/webview2browser.md +++ b/microsoft-edge/webview2/samples/webview2browser.md @@ -205,7 +205,7 @@ The sections below describe how some of the features in WebView2Browser were imp * [The basics](#the-basics) * [Setting up the environment and creating a WebView](#setting-up-the-environment-and-creating-a-webview) - * [Navigating to a web page](#navigating-to-a-web-page) + * [Navigating to a webpage](#navigating-to-a-webpage) * [Updating the address bar](#updating-the-address-bar) * [Going back, going forward](#going-back-going-forward) * [Some interesting features](#some-interesting-features) From 5f948a2950a6405f08b1421b90d54143aa29a35c Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Thu, 30 Mar 2023 17:35:26 -0700 Subject: [PATCH 14/31] color diagrams --- .../webview2/index-images/app-design.png | Bin 30006 -> 23645 bytes .../index-images/control-sdk-runtime.png | Bin 22589 -> 22949 bytes .../index-images/dev-side-user-side.png | Bin 22281 -> 22268 bytes .../index-images/distribute-runtime.png | Bin 14009 -> 12339 bytes .../webview2/index-images/full-diagram.png | Bin 39498 -> 39575 bytes 5 files changed, 0 insertions(+), 0 deletions(-) diff --git a/microsoft-edge/webview2/index-images/app-design.png b/microsoft-edge/webview2/index-images/app-design.png index 1b10ee5808bb0019b9dd0aa3f504917710a99ba4..58afe82deb1d144ab71e0854400bd20c1061b2d7 100644 GIT binary patch literal 23645 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 literal 30006 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 diff --git a/microsoft-edge/webview2/index-images/control-sdk-runtime.png b/microsoft-edge/webview2/index-images/control-sdk-runtime.png index c9c1a6b781ac6811d7750006806d0bf1b578e8e7..bf56793ea7be19cb7aa0e3b3f12276d0cee708b4 100644 GIT binary patch literal 22949 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 literal 22589 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

Z`W%Pt`Sm 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 diff --git a/microsoft-edge/webview2/index-images/control-runtime-sdk.png b/microsoft-edge/webview2/index-images/control-runtime-sdk.png index 071cc22e282245b158bebaf9b91a2275561a1ee7..4106d7fcbedf0d90acb30a9f23bba6ca5bae357d 100644 GIT binary patch literal 31520 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 Jsbuxye*qk(4T}H( literal 24187 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 A{r~^~ diff --git a/microsoft-edge/webview2/index-images/full-diagram.png b/microsoft-edge/webview2/index-images/full-diagram.png index 45edc9dda104ef3aa2600cbb46683812f7a515b6..b6216fc0929b32f969d678170560191cad849436 100644 GIT binary patch literal 39647 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 - -Release SDK, includes: -* .NET/C# APIs (are these on the Control? on the Runtime?) +Release SDK: +* .NET/C# APIs * WinRT/C# * Win32/C++ +* WebView2Script package (JavaScript APIs) -Prerelease SDK, includes: -* .NET/C# APIs including experimental APIs (are these on the Control? on the Runtime?) -* WinRT/C# APIs including experimental APIs -* Win32/C++ APIs including experimental APIs +Prerelease SDK: +* .NET/C# APIs, including experimental APIs +* WinRT/C# APIs, including experimental APIs +* Win32/C++ APIs, including experimental APIs +* WebView2Script package (JavaScript APIs) Runtime (for release) or Browser (for Prerelease) -* WebView2Script package (JavaScript APIs for WebView2) - +* WebView2Script package (JavaScript APIs) -###### Draft 1 -This diagram has the following top-level items: -* Control -* Runtime -* SDK - -Control: -* WebView2 control - eg. add as an XML element +Runtime (for Release SDK) - WebView2Script package (JavaScript APIs) +Browser (for Prerelease SDK) - WebView2Script package (JavaScript APIs) -Runtime: -* WebView2 Runtime (a browser used as a component) - Required; runs the WebView2 control -* WebView2 Runtime - runs the WebView2 control -* Evergreen Runtime, or Fixed-version Runtime (a browser used as a component of an app) -* Evergreen Runtime, or Fixed-version Runtime - -WebView2 SDK -* Supported platforms: .NET, WinRT, Win32 -* Preview channel of Microsoft Edge - -APIs -* Release SDK (to ship) -* Prerelease SDK with experimental APIs (to test locally) -* JavaScript API (to support communication between web-side code & the host application) You periodically download the latest SDK from NuGet. NuGet links are in [Release Notes for the WebView2 SDK](./release-notes.md). @@ -197,18 +174,16 @@ A host app contains the following categories of code and components: ![Design architecture of a WebView2 app](./index-images/app-design.png) - +Categories of code: +* Native-side WebView2 code, calls WebView2 APIs and platform APIs. +* Web-side code (JavaScript), calls WebView2Script APIs & exposed native-side APIs. +* Native-side non-WebView2 code, calls platform APIs and native controls. +* Web-side non-WebView2 code. + Two-way code: * Call web-side code from native-side code * Call native-side code from web-side code - -Categories of code: -* Native-side app code that isn't WebView2-related. -* Native-side app code that's WebView2-related. -* Web-side code that isn't WebView2-related. -* Web-side code that's WebView2-related. - ## Development machine vs. user machine From 7ae96510b5b411bd03a5a70900e7ad5458da92ab Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Thu, 6 Apr 2023 14:16:44 -0700 Subject: [PATCH 18/31] Text of full diagram --- .../index-images/control-sdk-runtime.png | Bin 22949 -> 23311 bytes .../webview2 => index-images}/web-native.png | Bin .../what-webview.png | Bin microsoft-edge/webview2/index.md | 63 +++++++++++++++--- 4 files changed, 52 insertions(+), 11 deletions(-) rename microsoft-edge/webview2/{media/webview2 => index-images}/web-native.png (100%) rename microsoft-edge/webview2/{media/webview2 => index-images}/what-webview.png (100%) diff --git a/microsoft-edge/webview2/index-images/control-sdk-runtime.png b/microsoft-edge/webview2/index-images/control-sdk-runtime.png index bf56793ea7be19cb7aa0e3b3f12276d0cee708b4..d6f91a7997971a3161fa2ed33812b6639cfd351e 100644 GIT binary patch literal 23311 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 diff --git a/microsoft-edge/webview2/media/webview2/web-native.png b/microsoft-edge/webview2/index-images/web-native.png similarity index 100% rename from microsoft-edge/webview2/media/webview2/web-native.png rename to microsoft-edge/webview2/index-images/web-native.png diff --git a/microsoft-edge/webview2/media/webview2/what-webview.png b/microsoft-edge/webview2/index-images/what-webview.png similarity index 100% rename from microsoft-edge/webview2/media/webview2/what-webview.png rename to microsoft-edge/webview2/index-images/what-webview.png diff --git a/microsoft-edge/webview2/index.md b/microsoft-edge/webview2/index.md index 512504431b..a82ec09464 100644 --- a/microsoft-edge/webview2/index.md +++ b/microsoft-edge/webview2/index.md @@ -7,7 +7,7 @@ ms.topic: conceptual ms.prod: microsoft-edge ms.localizationpriority: high ms.technology: webview -ms.date: 03/08/2023 +ms.date: 04/06/2023 --- # Introduction to Microsoft Edge WebView2 @@ -15,7 +15,7 @@ The Microsoft Edge WebView2 control allows you to embed web technologies (HTML, With WebView2, you can embed web code in different parts of your native app, or build all of the native app within a single WebView2 instance. -![Diagram of an app with native UI areas in the left and top left, and WebView2 UI areas in the top right and bottom](media/webview2/what-webview.png) +![Diagram of an app with native UI areas in the left and top left, and WebView2 UI areas in the top right and bottom](./index-images/what-webview.png) To start building a WebView2 app, see [Get started with WebView2](get-started/get-started.md). @@ -31,7 +31,7 @@ Developers must often decide between building a web app or a native app. This d The following diagram shows the spectrum of apps, from maximum reach, to maximum power: -![The spectrum of apps, from maximum reach but less power, to an optimal hybrid blend, to maximum power but less reach](media/webview2/web-native.png) +![The spectrum of apps, from maximum reach but less power, to an optimal hybrid blend, to maximum power but less reach](./index-images/web-native.png) * Wide **reach** includes websites and Progressive Web Apps. @@ -75,10 +75,51 @@ Developing a WebView2 app has the following high-level areas: -#### Diagram: Full diagram of WebView2 (full-diagram.png) +#### Diagram: Full diagram of WebView2 ![Full diagram of WebView2](./index-images/full-diagram.png) +Main boxes in the full diagram of WebView2: +* Dev machine +* Distribute the Runtime +* User machine +* Resources + +Details of the Dev machine: +* Visual Studio project + * Layout designer + * WebView2 control instances + * Native control instances + * SDK + * Platform APIs + * `AddHostObjectToScript` + * JavaScript APIs (WebView2Script package) +* Runtime + +Details of Distribute the Runtime: +* Evergreen + * Link to the Evergreen Runtime bootstrapper + * Package the Evergreen Runtime bootstrapper + * Package the Evergreen Runtime standalone installer +* Package a fixed-version Runtime + +Details of the User machine: +* Host app + * WebView2 native-side code + * WebView2 web-side code + * WebView2 control instances + * Non-WebView2 native-side code + * Non-WebView2 web-side code + * Native control instances +* Runtime + +Resources include: +* Docs +* Support +* Samples repo +* Announcements repo +* Feedback repo + ## Top-level WebView2 components @@ -105,7 +146,7 @@ The WebView2 control, WebView2 SDK, and WebView2 Runtime have the following role -#### Diagram: Relationship between the WebView2 control, SDK, and Runtime (control-sdk-runtime.png) +#### Diagram: Relationship between the WebView2 control, SDK, and Runtime ![Diagram: Relationship between the WebView2 control, SDK, and Runtime](./index-images/control-sdk-runtime.png) @@ -124,7 +165,7 @@ Runtime: -#### Diagram: WebView2 control, Runtime, and SDK (control-runtime-sdk.png) +#### Diagram: WebView2 control, Runtime, and SDK ![WebView2 control, Runtime, and SDK](./index-images/control-runtime-sdk.png) @@ -170,7 +211,7 @@ A host app contains the following categories of code and components: -#### Diagram: Design architecture of a WebView2 app (app-design.png) +#### Diagram: Design architecture of a WebView2 app ![Design architecture of a WebView2 app](./index-images/app-design.png) @@ -192,7 +233,7 @@ Here are the differences between the Dev machine and User machine, for which com -#### Diagram: App on the Development machine and user machine (dev-side-user-side.png) +#### Diagram: App on the Development machine and user machine ![App on the Development machine and user machine](./index-images/dev-side-user-side.png) @@ -213,7 +254,7 @@ There are several ways to distribute the WebView2 Runtime with your app: -#### Diagram: Four approaches to distribute the WebView2 Runtime (distribute-runtime.png) +#### Diagram: Four approaches to distribute the WebView2 Runtime ![Diagram: Four approaches to distribute the WebView2 Runtime](./index-images/distribute-runtime.png) @@ -239,7 +280,7 @@ The WebView2 control acts as an intermediary for communication between the host -#### Diagram: Host app, WebView2 control, and HTTP server (hostapp-wv2ctrl-httpserver.png) +#### Diagram: Host app, WebView2 control, and HTTP server ![Host app, WebView2 control, and HTTP server](./index-images/hostapp-wv2ctrl-httpserver.png) @@ -367,7 +408,7 @@ todo -#### Diagram: Resources (resources.png) +#### Diagram: Resources ![Diagram: Resources](./index-images/resources.png) From ed6925b5c0360251137e0ee6a7e9b7e5260151b7 Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Fri, 14 Apr 2023 10:27:46 -0700 Subject: [PATCH 19/31] separate article for diagrams --- microsoft-edge/toc.yml | 4 + .../intro-diagrams-images/app-design.png | Bin 0 -> 25376 bytes .../control-runtime-sdk.png | Bin 0 -> 31520 bytes .../control-sdk-runtime.png | Bin 0 -> 23311 bytes .../dev-side-user-side.png | Bin 0 -> 22268 bytes .../distribute-runtime.png | Bin 0 -> 12339 bytes .../intro-diagrams-images/full-diagram.png | Bin 0 -> 39647 bytes .../hostapp-wv2ctrl-httpserver.png | Bin 0 -> 11770 bytes .../intro-diagrams-images/resources.png | Bin 0 -> 11173 bytes .../intro-diagrams-images/web-native.png | Bin 0 -> 15714 bytes .../intro-diagrams-images/what-webview.png | Bin 0 -> 72533 bytes .../webview2/concepts/intro-diagrams.md | 324 ++++++++++++++++++ microsoft-edge/webview2/index.md | 247 +------------ 13 files changed, 330 insertions(+), 245 deletions(-) create mode 100644 microsoft-edge/webview2/concepts/intro-diagrams-images/app-design.png create mode 100644 microsoft-edge/webview2/concepts/intro-diagrams-images/control-runtime-sdk.png create mode 100644 microsoft-edge/webview2/concepts/intro-diagrams-images/control-sdk-runtime.png create mode 100644 microsoft-edge/webview2/concepts/intro-diagrams-images/dev-side-user-side.png create mode 100644 microsoft-edge/webview2/concepts/intro-diagrams-images/distribute-runtime.png create mode 100644 microsoft-edge/webview2/concepts/intro-diagrams-images/full-diagram.png create mode 100644 microsoft-edge/webview2/concepts/intro-diagrams-images/hostapp-wv2ctrl-httpserver.png create mode 100644 microsoft-edge/webview2/concepts/intro-diagrams-images/resources.png create mode 100644 microsoft-edge/webview2/concepts/intro-diagrams-images/web-native.png create mode 100644 microsoft-edge/webview2/concepts/intro-diagrams-images/what-webview.png create mode 100644 microsoft-edge/webview2/concepts/intro-diagrams.md diff --git a/microsoft-edge/toc.yml b/microsoft-edge/toc.yml index 9e02351a75..5aa09c8598 100644 --- a/microsoft-edge/toc.yml +++ b/microsoft-edge/toc.yml @@ -1103,6 +1103,10 @@ href: webview2/index.md displayName: + - name: Intro diagrams about WebView2 + href: webview2/concepts/intro-diagrams.md + displayName: + - name: Overview of WebView2 features and APIs href: webview2/concepts/overview-features-apis.md displayName: diff --git a/microsoft-edge/webview2/concepts/intro-diagrams-images/app-design.png b/microsoft-edge/webview2/concepts/intro-diagrams-images/app-design.png new file mode 100644 index 0000000000000000000000000000000000000000..a69d458b1a9018690c61b4da15654c3f5452754a GIT binary patch literal 25376 zcmeFZcTm&o*Do43dy5SaQIM`wr3xrWS838klujbOgLDWb>@AA)-rE)gR7xQ95~5O* z(2;~trI!$p5+Ic11a)tJXXgFm&YUyn&U^2f36n|4(^g;WS)Xs@BRvheb8P1T005ol zL)FIs0L>Nv@LSZG->Ba(p5F7PzMb-ZtnmO)(Z{hu{qVcPeck&2Kvn$tBdb5CpU*yj zXzC3B(6^oZo$B&dAZs^*3Jd8pz+Yo3d@5oXu9||A?rZBy zD$HwP1~goUB&+!gBTkR?xZQ4Y{Cd6abgm@F^DtzxG{>Wl&)X8YByw0-UF>X+OcNPL zEDcf(j*lIY!>O#SRg$GmtJsCrDP_`T7dM5}4+*8EZs*wp<)d#eqIa~*D7gO6T_);R z0H%YZ?fyF$Gy!z-DFYS3z-^JFZw)^@Ipasw(1YRpOZZa&Kv*N=_qUb*MsHs`_4?7? zgl$caPCvg>fXWCH27rv;oCzc}(92s1oOEc4K_K`>z5%0@}fVhN|<{aQElt1s}^HXC2PZ zpg~oUw6@i2W%Ws;oLvXA{e-)0eaU`X_TWwc;PkZAOI-|w*4 zqank-#~bCFRqVnx;hAJ)q zeGHY<%PLeEprHyARe^^8|MiwFj)83V%79LN!5cp&kp6QUiT;MgpT?G~;A`(9; z5KRO@j%#n91yt|vtRySF{B%e@+#n7CKJr=oK2lOilP!X2=FYH)KbzVR**VeqcbAT7d^;GE_C!2{%zbSH<;F^)*qzS}`p0B3|P< zh9=`o)s$)(?JY*@;~P}oGF``H{}{sk^7{;6rXNEJsX|Si!Gq`fkkHFNX3+gHB>uto z8UD8}8sP)>i$|BFS5K*qlNOMc)l11!!B2jk$gA6A1N8b%b3167zKU!;H#AI|Xx+0T zwk=Ky*UGH3aqIQxPN69xJIltg|DL)yB8sRql7W3>Jv&uFzIFSCm)3S~pdB$=Sr2Sk z0zcqSEA@$(2P-KmlW0-1D=VZ0pV*+kxAis_m*m%8%*nkb{zC+CnLpm85oldtGhY(@ z!dlV0RkM6ArYv-H-Y<36ui{(B9_DHHhxL}cJQgDDaFN``j>WOi;aP^m<%VdYWk!6r+VaUeB@En3N9+EG=(gj+kh-au zkW0SvQkQWRxnWOuBPN80;RQ41O%H;a4KwyOOosX=*Po;N_~rKJ=Fa^*=sa`PltbLN ztqpf1c0HP4C(Swsdf^M&^pzbPZ}9flmiKIc)R>6B7k~r7cKV^lYyq|b%zyQjq!YcF z^)@A(W$jI8T4K$onswDjY?D1A+=e@6XY|)O`i#0_UkUFji>@!l2-Nm_s0NYc-|oH^ z_s@&oer+$a0TP^Um5(el)k}I0)JKeZ1q8G-2wx$L=?TV6yplr}rQ1tx5=Y^|@nJt% z+t~%CWKD$162+V4T!UEk5x~ydHtoU<_Yf^L0hiV(2UtWClv@ykw$l;IbM-WCsS|D- zf+5{>l+@ig_!#wGu@<_rp?tRZPrtHxkezs^4aw7l;xT(aS;^nS!F`1pw3PC)?JcP= z=wT2zP?*LRIS_I5uCBMDersVHXPf5h;(bZ6AD%z4TT!y{$qi(T+jR_D@dat1o_Gyl zdbgw=XE?Kd_UfDp9z%6=#oW!Hlu&|k`Xv}%kPN}t~?eb1fV@)a%7fn9MG3p^~U zSObw4KobgA# z&moy5tq9;%pFo!LxGQnzdD$66@o)b+K7UvFr>L@$-Qke;!I-l>^SeLb2A zB}H%|GGZ?J@i)bwTI(N2NWo(j{+QGLwCZN- zg(I%hRXK7T7|ksbT&%+4&MO$dkUR%zCT z*7_~nV@83S@!PiE!492ug>y0?b9=$tPRS(cLv(wTit%A1w8@xdSg~!axvY8LSeq9) z<22WKq?pWyVM=B^Ro6DStRIvzi7tiA5XGzUMuEMS z9tXU$7x+L>4e(}$45^Kqe32HsnNSs~Ese9B-M2(9i1@D*V``=8ExNPd{$F-0Ho&S% zZbg~4-k`R|&$gVB~spaWKo& z#7*m|^{53_CFY;<(|Etkf1YS$2gT$C-2?*teAB1jK>IeaD+;OU8>Im~CgOvgf83!= z^UZXpjx=9qP_~SGXx~k{qKLUGo!aw6$3=$eV6VQ3O>B+(DK0zz>$}|{Rxe}><`FJU zoRxkX#HX>Ne<}Ga@m;6WdQTbwrh&o)RJ&F|2d7#i{!uro>M_Fgq5$x7lB&2cB)*u!eptqM|TM zxj`7ej-67?j!)UmXiK^GvH|Mfofy2YgS)K>p2syGq#Uw-w;;Eq8!P*n)5oTI0&A>R zCZp(BHvQXU(%os?f}^#!JW)o`_uFpDT)e+B^FC*20=Z~=ad;@}w4J@|jh$x-)i3o5 zpH8H&BMg=Zujs~mJjG`c-1HFsxsuJm7h}mzbG1Hih>{-77<$`vUxZ;F*FkrG!5z)J z+76A_HqpX1-=rNdN^d*7+S03f?oDk)iA@1qP7RmcNRFY3lnxiZ4WVqM@CEG=jU6sY zY7SNL-Tk&Zoc6Mebtlly!I*L-iN>$1elbRmnC72Av6P+8Oh?f8s0{uQp!}LxtPxAZ zSBC{ zU%6=tYm0Zt4(<=FI2YSo$3-`OL9~YydrUk`#T>7bjW1KubdU z!MKX&QmwWaYdxQZ!mhlYgq*^b?o70Pq=_kQUM{G_YDXvEqgW(5RhZmn@xq+vByzj^cWVhLV!Lx# zi~$4;<|ah`*w?|r3=}6sR=*_~PhoEh{c276Vo_tbh*}OGtk0AvH+Jt=D#Vf)*JhJL z4!PH&Ba}rURoK;ySv}h%9|?rpF{4oS^eD#6M?QCXJ7K|rvs{lEmo)Ag3Fj)~w(J>! z6?uVmd=WRe0+E3SN`>kKeJj67Y+r}}-jnaaCcWkq-5A6#_--n;P|rgi%tqA!E`AIY zq^{2$xOf)fREU_ZsQ*mnzfg`KiK(PPZd&YiPCNLeq0-Y0#+}LPo=@%-h8#Cln^43x^<)RzgE0-rD>729P<2=$~Wb|EotHlaa-tJlHb$}s4BpRY2- z+16kk%rl+|T~EQ8u-bm2K}r1+?^2SN1h6*b8JHJP*@~nIs{+q>ZNUcB?h|>(rQSRop*@#MCHht2$ zPxZ`h%1*kp0^?Cq3HLWM;<%zreMmdE5E7Y!*So&#MKB`IHsoI?*7)|$6G%jN5%cJ} zl)c(v?*&1Pe}i=tO~=8V;WC-n@Z_7-&j^3}*vj6}*7Hk{OhZ30V(FNHX(`F&&ei5# zhVMu282JTMsbdRHysdqgpGbo46jr4*LwQm5FhXxF(g;@H6f`JxzfopfOomW;#jVys zSgh~MuS_8Doe5$pjZSTGvu`PxQW=|G-1IW!5m(IoqMy8ria*{#NE-HZaVqQLfkr0r z_q;R)vznABNnn3cJb@$P8UyP|0L&#-+ET16!%i?aunr#)N4itVbc4Du}#-E z9_)?Tu3JAektBt5?HdacxP;1A7vuC+3x>D0Rp+)X4b0)uXmSP{WtCh-@j_dkD^TO664`b%DiPy|a2TlKD-RD)IXcg1Nvp37QQgRh; zy!W!L@fuXMON!oC9;@zQUql9tx;>RalqWy8CJi;YWY$lNG`{ov`T!$BKh-=D9bDJS zHS0+hmVK5jk}o|VUjn~Zn7lgWqhV*#8VD(;z5k1wa~%hwtgRxH$@A(kQCYBzGCyzI z5IK71Om(^O!!%KFrLkuJSGU~d_qj)qWX;b)3l)88vD&NMMsp^a-jXSh%;9EGv0Pr+xh} zYNG!5m}z{g3p{&DQ_7BEK`85VVJvh_by;m2qAQVY?O;4z@MdJ+TRoMAr3u|KfpR;O^K93eN?eovZf zb5dWLZ}p+X%7LE>3W+@9>o^cAfxlCpIyU+0uX=3EJ`SJg>{wCUB&Zf}j$4n&o=&xkS9IthS2t{}%FIaOmzKrr=HQ)&-$DAWCAlV@2N6d+H9SgW;5!`|SevVRL|(yPskCoRF~{aZfLC2!_Ou|0ek^Ea zT&0ZLZp(z>tE5MeP^&U^jHfmH=!=u$Jv$WKl0_7|T6w2r4b(iCzYp^K%(CUdxZkI6 zs2Ii(ZB1U;z6||F?r2KNhL9jiwdH~NicsNW`i9HjgVt|(`wp|2 zpfswVrUlmn3!ad!PM!~fYCi9!_x*%AgJT~n^9`}YQ#4kMymrtn9k-(^C@j-)+V{x4g%@2qGy&CY2M_axoGH1K zYr9>LL410uV)6|m{;ztqEUcVjiHEjJglD|^u*2T)$KjX8OHpDiPb4Rbh)1`7n_CBp ztF~-DjgK<%&27wo09|xrdGQ}v{edeyv+GDbBwB8q*c320_~t@YXNx=XR87Z#CVZi} zam@_rh=nMoW(T2|p!x&vbGE{a_u|BwZM=WgM=bd<8zDU76q-O}-&%)4yTo>}@zG+y z0@Jinz}9#kaNh8SQ_{PlXxGN0VXS$?Ah%(67EI1GMccjFZI`W5vZT?h@yUaD+%CF( zWV3Yg5S;0qdEMeFDf=u=_LbH6UBSk%A)VretSZOY)y#}QOL5hjk*k=)Gf(77YATN) zTx5(pB@#}14+l-Io$!455_H21DOYvuJ?-+eLnSW_GHR&zso_P_ubR!yt_ecm)*g66 z8M@}-`0)&6S8H#je4c0loEuh63TL*ww`3yl{`6mx;^8aK&0CGOE+%^JCS6EmccoW~ z9#eh3mlgO;6ude>U;Zp((t~I4?-jk)M6;Q^zeuH%0uU##gP44x$XJ#e^G2<)F%NGzat@ z!Ih4g&fmhy!O{`_87vIH*Ss|4Ix=|Hma&noAdpV@KME=?W$7%0o!E!z$lHG|aIXNp z?BdQSxq5kQ z#VXXs&yP`7V0>e}!VYhJc8^pA))}Jsf#hdUw%b`t%k{2pJAAXqSQmrjT(^aXro03Y zSo4*Ao0uc-CA}d|(@}s#S+t*U3dq`Y87_VYg&LUXXq%DSVub1vGf& zXRb%}A|5eBQfYu;rZY^G6gK(H0QKsSykjI?J<=2+XCD!$0lTAAm(i1>nA=kFXD~mc z$9s3fah$2#7FsJ$(NSYO?_wy1a=A7{CfXnVHZ~{HS{v|p$h(|R2c6ryyFSul@`Ge) zBe0M=KS@9M-C8M7?T{y(cIACbP7lpmTCFIni+GAhz2GIq@(MSzSPL&Tn_mJA7sc$s zmGb)qDVgWQwU~K&Pmy#r3O*%u#y~DtB!tsJcx%$vgs`Ud$gV%EVZOPYazi(nbYMVF zL;h;Zp^xC1?^^7o4s#ek*BsH{qsO9+&?h?*Qk`P?rJxqOW6gO`jreloH17W}tP zm;I{MTpag_Fm0W{!Pph)sx5nMbV_AP_xI~nDTX9V^ru}RSnU-VAx;!*<&!}`RI3hO zHSx~H_-zpK)VK~ZM*<#7_~S{i9w&SR(_3f!>IzGxjhcq~(+>2P^%puJCSAM(ash6G z$6p8U7PcA!`ATy4gyf^8URON#eRB}EHW6f29McKgu(QaZPN`dzeg1VC+8LhxFo_hHs7uoj{M& zm)nHhTR1k4G||{l{0r1sd8oTh#w1y&(U#rKzN$IYA$r_28;=teV0jCBBw2h}e`5H9 zqCK8`=RcIzrVM*Iq4hz&z93~cn6z5HA|03;pZp+j_>UJmQVg6{53oc;rQ;%}ce-FT zOVAo(?-H>{&`9t7cs0l|)^=%p_~QeH?d?TuU)SE+xmroM{B24O3G7hbwH#PtShiQ2 zo~xbUhK)=U9e;y~MAvz>zV5NhPphcroR*m8VfUNiedO1Ctf{?zwDZ=o9@iSq0nAAt zp83KY!wasc9C7dzU(0K*`o`l_%fSQ|re9Mn<6iJHHsbnyCg?_U;63AwZxfs5a#yw1 zhp|d@ZWYI)uYtmTAfbC@&;Xk<5chCgXq~A$(k6IPu(<$X$_Y7dJAIk7_qsUVb{FGs zy^QSUAX+}ao)@l|wldcUjUq54iK|3OWZweWeL4!3XZu#iR2A2&uHnsWJ1?C}KLky# zX#0D9YBWu#Pt9(8p}3;T{}h(!qa(X1_mr@CZHdzlt!tC@L|R82=+!rJCASt&xCn8h!nMU##FrMLz9ts(haBxAAke8po+ z*6C!Nj2cNXNoQkefYTS>wvMFmmPCFNw;e%%((=>V{&MfILpoOG2g@oPyaxw`hmZ#X~X?N*-NnQx`^z}K%;f+@+Ed-6Z^47;e~eW zsa$>Dj!HE5pFw+nXZLQ5uh=X-uXn+vah1it95C6t(#Il{A7sAN>R;^4T5w1_Y~QQ* zt|#zd;w3?4{jHy54mhp!#z?ml9R1#%H&XAO8n7?N8Aa39_}S)#iAR%q8LgN^n-q3}>);#{UL*4s z273wS3cOt1Dx^~*pTf9%5ho+pxiq0a+}SKv%XJ=%B75iUUhhn`z@A};UYt~K#J~$! zRtpTvDnh>EYn%E`W^TN6k_t_Xx#XSpjErdgOf}^8F+@M zEiuM~yzDn;t(M#jt&58eEz~aZ3rZ7C^3=e;)OJliSg$`tdOBXwHs-Vs*rHbARlxx} zXEhID3kB67!!&Jy+f*up?w56ytLb03I{OBCiz?4#;bwKFy(YY}Jl^_IA+ra zXB$&r4VG)O6JZqBe6(+24$KY0ZgzE)Hnu8EtSm`rA!s;dV^&0DtluTqVl3`B#Fu z(gN#@-lbZLIEL=Jc^a|cKl@*G4f1B=oF|nytJ_+5actb?I`(~edQ-#qT9Z!d5KE7K z)FI>-BRU0L@>_cvTI<=S{?O~RQ^YY@UW1G526w2t-8QeqMJwK`Q^y)euUQz|-18-@ zfn^t%6J5o##!R#`+hV1?Lwf^+4i$F58%now)_T?&cfZ%rzSj|k{Ot~bA^p@E#-l%% zK$y9f1pe2OkGh4)Nf%-e1oMYm_t_MaEEnYPb;LP3c3hL54d+Vt+Gg!TjIjF$+d6GF z6ORM)b#43m+n{Quib92((``m(?ito1bh<;q!$kYokriW0=N4S_NzWHm_ucCk! zHL?N5cyDg7sL%4k-dXX-&!;b$A>>$y^Gi_$8m+?S>M};*fjuhNUd;hbG5rNIerjxy zAhK{$;Skgk(A8vj%J-EVvnvh1ov8zoZ4Q@MObV(an!xnO#GOG+5AC*#z0|hnwyZeg zDF+OgxwEQkIXkVDa;AGOz7 zj9DSNh+nhK`w;Nw*h?i@Ml(tsA+vQe``rA4cwHT||=$ERGpm*78c~@a+ z0bT93ji_ozO{7|0hc+c8Og`QGtwVEkwM`B|z45&AvsN?|Xy*^ADR+HzI{G9S8yVYh z)RQGq1b9_67Q{UEe2n~PVRxoQm@3YjNtIOl-uap#2-CBZSzg@bl>ThMCsI%^0}})m zlx%ipXpMhf<(L1cG$qc)=^$gJn_nrIUOu>Jn{ns8MEso|Ve@i}Pc?Klk*STshzHTm z`oIv6F=WAzSA~S@QqFI`=p_d&YmIRjT=3cQ&`*Psv)q%hOKVr;A*cMUZj&g}^45P< z;3<0foW^CAc|E{29Jwx@*ZZyk2yDHO(xiC!67$fnRgq3)=a#ZZC?Pnwzha;xGc>nX z=>hb9uuM_CC@v#<9S6&tt$OQ_&$*$|(S@`^>Uc>u8w~XF z6X*VMT(4bDnw_)Pv@#3W{o9DPsNt(guWIS^?oLO;+`Tn$tKTu&4_dMugMuyer0%;ymU8Ptf47pJ!D&B!KA0Myauj)3B-YgAfzJr=i zB(GW=hyh>fz!V}bd-5EezfUY-!P;E@6ucFiUwbr_WueJ`-J_jI@{ zwDXN?Yb6dgj_rGzB#S-eC2THj7}NMI&rKn%O!$5DVu`_&H~DLBHC=Moo-WRFP~~uQ zL+#j=;qBO+UT!WND6IEsm&U$uZa=<)V>IA88*9Fs7Hi}GD28z_OM}HbD0T7 zS&%#o#JyhgdQ_8W0#W^*Cw^21sRfXg#ZJUnSvhd`I>zJkwx?o7cF=r7W$M4b5@?C} z`tHQ?A5VtME0EO~x9cm9l=~{`@e@lf|JK0mn5j@BKq zo>W(*)fY%AkuM_y$8~DnT3nkOUrnuQ1!px}`I%k4?>LC(Rwl3LLx$Mv7j44r})9U+oYwil9^McDIA|YF1y!flW0UD;gYuIsOe>} z&T2dh`0J4ET_KmY;Tfc9(4d)zo4Rq0zC3%4R>dm`^}{+nruu)fPP;PyKgsEcqoVQs zUYY6T;`(8hP-qVgkjrw%?}!LCw40gBdQJ3aTAx|w1Whte&y*~!xvg5qxZe1!*ma7V znbz0_ab#EVmQ%avRAN12D{Fynliuwve0JhWJ+E*tYcjIi(NWrd@3yD#cS-{UE_EGT zT<$2*&$sO{CtbbxIINi;)GQ8rR~ff?|Nh<;P&yOcy)p#56#uTO25Yqs+}s7wc6nifq##(id#Mu~UJ8&-&;Li1#<-%dBjpWv-#>J@ysJJr=#q*f$Uz*L*?%4j>Ql9oPwBu-LA-@8$8XQt{N)p zPMrH$f$5f7gHZM$&1cs0K{9f)vB8($w}h+gtQ3M`B*0zS`9lG*VO|b=vW51+F#%h7P@3u>J;@pQ>m&81Hxl*yh ze=b%QTsL*>!Lg23j^AcedTb)Tg`wb$tHjR3?zHpUB+L zbh)0w3IqPm)$dhiK^#@(1?UXvgBGBZDiuW%;_;5tQs>a1K`yyv&>3t?amh4u5hht-&J0TWy3e zv~8_4cVEvp{hyTMaWoNo1 zWMY0(T+CS=gChYGpS02^n0JmuUbgZ34|8zR9PpzR?*Bkv+e!c3KYe8X$C~N>t3?}O z>m46MP6255a1Qy6B_h@#>elce(jfYG0PUi6Nf62lv}`!~r!F%dK|XMCx&*M_Tp1P& zIrn1kcyAhCbSg}<;mn7VPDIl(%1i|Jgk36kUYK?WwIK*`Oz0pio4^YOOfM2&4ggwfdGqZ~K}U zpb@Gsih|2LRwYt-o^bl}WsRI2Hg1xcc9I5H67Ju3~c+ncA=|i+**| z>Ugkuw8b~gt#`YJyLh(HW$qNf`14N!1QJ}rAP*SiC%H&+N}UW&F|+^+hM)A9uZ5o4 z#NIzp&7Y9&q5)JymiSy#DeIEoDz5i~l@O2kuPJ?IV*oS=yf{@KE37XU!v!p{}YKu-a_ z-3rj6m23yM@V1-=d~EyrzcA=)D}@|%EEGcbx}FA5{LxUZ@`Xt}?H-|iI+RRWLXdhr zS`SuBA;(w z-f0Ibw0aOqFn!S%3ck5G|m%(@^di4`$Bt_4MRS2qz$eO@AdU z(jACN)Z9%@ z87Z`K@QGR;;GspD)VA!erDzqK(aJ6=_+L|PvkgF+VMj#el~+=zVySwE`a#>tD# zjM^|7eLml?#Y)+(jIv4zByUm*N&`%VQ5YPHBy z4J98+7Ufd*)ohF*IvWq8%4HEDq{i{%4s=)TQhsnCs_VkLct|LT$fCVHy98=IS{M)R zdGU0+uW5lu6^N#mABC?JWo zkX+cEiWeVB+U^+cKi21@wpc0E6>$4*S$e$dGlBHtl^0cSM1i3{MTJ%zxvUTAnF>#9 zK-_p-w$?P?JCM>dbp!t>B39g5QOy7=@Pn~GQz91GxlMGeo zD9i)&?5B2)(#7*12(I6*E`3v8fwdxSuArAGOao8TxQ+x5eFypxF)XQ+c>Y3)Mwj0{ z_&${h&o$Y#n?G1gmBUVPPHNft4-7-o(J+6W3Z>AXsL=XPzS;UgpH_qXwdPJ)I4N=6 zGx*~9Q}gIS3qeJ&jt=}-1s~Q~2?*;;??;dytC$?Mh5i01Ut1~JD(mAAKs0$Nzb%ne z_|9Rz&xoOuHsbc9V&$6sSmGBkWv;c*GY-A)H3c_W%gf2Cr^72Va{nF|PDjTNR-ca* zz3H86v2-?{MT_3wVDva%dIAVmJeoB@j1wM%S9V|`Hb<$`@`*%$c8e^i-gx~1Id>=& zV4Q`8UsmJ%spzZw{8a*4qe{OYPS|fmNyUb@@GS%j-xOk))jQ%UxsrJ28Gk11;k;?t z1#`ckZu23h+`E)34(Vw+N#q+zX*pl|hm#M`S%z%@e>sC?1&8#{O%|9`iO_a4A&$J< zhy6npD0KEy>Ay?IwMxxW;iL^|6P7m)#AA6i`_Z6pYcl!UdZvX1rnLFs` zNeKlOPuuN4I0JPrFS}M5Q24%eNAOlFSI@h>BmA-sHWq2-iJWSvFIdwn_(1otE;}7P z+Q5z9R%%Z3dulP&0y||n*(!udf4YmQqMq7%LzkHcWBA4Pr~FDixl|l7aQ3Kke-NOX1W_@C2DN zqb#heGk7*iHE`xwSnsIHomEs z-ZA|*$a2EHJAtKvrjr6sIj^NZ(ElKHL(t*!NZ(9vk>%6%GOB#SClBHW#p!~O&{ZS7 zb~g}&mX{Ga0)&HSTWwdO-ci8YRK8dIunW#{=d7A~G()jTjwT(b-~=+UiXVZA8?v>_rN#T(8NxY>H3;d z)Qq_u4Y*lX2tKwLX~K@Kl{1<~7=pPK44!fcQIA;k^N2}9mlr5p1)P;-mU#A6wJ>e+ zQM9eNAlaKgl_q`25;QhgspF-nD8esD#SSFRe=d>4#F8Py@y-@$E0&sH(Q>ksg?@AP zp%3OaoJA0qC-39p-tNwXP|X1+mk|5FNO^M-vdMG_6PZ#4g!E`*R!!iZB{kd%u_sJ6 z`^jXHqLr?jym}$&!gS_hWYjbZNSOh?z?Bcr!ywENF@wrtK(xA2TA=#dx+IHcTF`i; zYD9z$-n)t0X$a+Qd*f`O-j>F|oOGSjaTt+l+#r;24y9dQQkee4xQYSv0bWyjFheDO zg*%bnlJXlI!I&Ez$YWKw;diL0J$YbJWIjw$SU{pce&-mbuuI2-;&4qZix92Ih z9xa66y^r(*#5VAdz=Nx?JJcTF&@X!k7L4*AY(lDXHZi&LW{MBpmaY

Z`W%Pt`Sm z#^T-Y4Wc9dXXisr@F(el*{=vDNo9KtZn>H#vjxDkzaJ4>>{=0g7AM~dsrWYFN z$%Aft)|^D9Ck}VI5P_wgxkF%pOjgN_)kps~{`mh~WEDw793UuIe+m)tZ^RlxhEgKV z=eHl=lc_*O0AS)m75RV~<{yH{Tj>bu7XbHJ83ZX-V9m-Z;U-0>b_~p??4G zcK>&9OqUx^*{w%}`~iqxSEg($6HPY~S`XLd-7W*TurkxZh5g`&+aYC?Z!<4y=m7DA z;S&9Wc7KI@2)WVkEP#Q~t=}=+1zs_Qy!tInW9OuzBG?2un&UqCk-`<4fPgNDP-ub) zR0i;s5h+F7w1H0n!Zdu2O0211S`JPsn0B4o;WH7VNb^zc1ZnKwelTOd#tIOlLMy|X zc`*z!HvNF-j3>dSw^4Ps=3d!@0mOWTdqvAc{w-e0&Au%V+fxGZFcD`!% zsg(^meCr-->7^vQ?Sh9@EG1yLMJ(@ka0m8qC#O{&$~h%Csyv|5_Yd8v2fBm@?ZDBu zOlKTfSyPF%5jn#RTN-LV#nHbzuTX~%q>kfZV4uOd z=tap{;jy>Ts@^RX zOtL73bF`~<&rM9=IdV?#Z9X&=gdoC{2d1v%J4t+YL-kKO_cv5pJ%fqn>(F-C$boOz z4=xP19d+8~g>x8AbF1?Sehp2T)H6??gsW6%_sQ{?HZP&Lul%Ee*Msy5A7r(}I40gy zG5G=Th!*ktOX7b5c%q`&ySJc}Yo4j{?ho2zm*}C|-cKwE%4^f!3z8BY7Vh?sidO-rp?=m37-k*Xr$57^Pdb zN%P9Cb48xcR@^Cqml_)<`^E+)4>VuJx~4YP3$#ablnH*T34R-hh&VR#_0|_m3l^Qp z*0z@}?)I-KF>@a?wn?-Y->I}Uu8MPY%x#{`)62~TQoBgK6Z`!%8SuIg^yI_75fkC= zX#<%em#ZIW3OG|GNcN2(q{8*9|JXTtoOh<5Ejo!a>cXXCJ=>mcyVS3b+wV*!_`eBq zlk}J16UjU(usS*)?Z=Qx-Gzo=F?ARHhVeqsmLdMOyxk}2*`6+gTA>y-;?t=jhB|EM zw7&7-UQhPu`M2f53H=zX3M`8PCQ0TA=gaW8T`pfNb7vYk1*S*mHS|AhHI1*VWrNHA zV_H>qU2PK+9>6LYXZ00t$Ok?!Sm<_KD2PPyv1~$W95Q8klJ_ddKe&gw36jh{=R3MA z25SU;NP8ZFe*gJ)r_cyJlV4Diz2|dBev()6$=V8i5Pn+MiJQVME;jXkzsjo!OE$nVJ8 zGK*q#59*QFW742iM$AwytoET%=v%}2bjK3%jQg=_Z|Lj67fA?WZtgv=;JdxcIp1-R z8qk$?1yCk3M>g{=oGrwVaDK^@3s#MG%5VM&CP}XXhkQ=K{Dnc*1yP$dBmG>XpDu|! zIfyfQ$OYQ`=4Ph+u}P&~^9TTG3t1s&1LNYVG4DSdPo1p_Rl@8|`sQpSES@EdlrM2# ztq64>PG~S}Fmi`e{Wd+WI-C~I`atT%c)eoZ+;pbpto~MHMDM{HKZoP4M+Aog>YWvC zTHF0#xrCOxA*)|`X`aPCd2gM-m8ND}!@e<2oEu6LTYu}-ie4DYZ#*hdZ7vz(O%~CZ z_cy}pIpzj6m@T|48wKC&8WkM(Kkg00`sC;~y4S5)j?B;4OP=mMrXd@L?w2AOtIfRCja#;rn$A&nR^+$K1iP9e z#gJ{+egqwHE0y9Z?FXeF)YNp{?XM--QRageDcyfia{|G_8CLEOxTnB}}CSso=En$HMzZX&;n_&EyW9iRJBUbAo zthVt@{X``@iWb~201;ui`X^WTsUK0!b5-rDcbBydod=Ru z6Mqaofk7@{nBzUWxEDWIF#d{;pgrdtL&t}sgDbE1^4KdOLvQj?9#wNxmt8z2r%>$Z zIV(%|W0Q%MZeu12M@}UFM`dyBbm==$B8Yh=U5}%r_-Srk%RIZiC#Pl8c_&Pb1fyM% zZguTI228xzqBHKXtYUE!LV#4n>p#0fbecv)&sV_5UVMA@DTPE2u@ZirDT4zp00r7^yPIN84(!UhhmSKa}lMdTdu( z);o$XGjC=S%lv=n`Klo{19^`8L8Z-ZiiT-H)da8M)=<1r(1%$wPL5v!LHp496@t-P z6IObLi|yl%)LCi=V4nd}*a;v9U#`-k&|P4y2{wAO-^I7(wBX0}Zm2heE`81LwfIvz zq8HW3FBFH|VMZz@aiy&ZVG`+#8>^rE7ryS+)Ps%0iYzMBF-tUpKYO8bf#LIu>;FdZ z$7c*4Ze{YKm`N3UB2M?JUTUJ|6mU7}xxIcqN7*koJ#H)x3v9dXrbk|haNnv`<+xoc zYnXl^Xv~n+t+RZR(swQ?xvt{gNx2N^OvW#u11f^2Ue_4ZjM)=L?GY1fek&)*}r9YHSZ5C&5%NIKje$r^Dw(X-r%{&J& z67 znqeSE%T&Sf;kF0AAdcoz@WPTjJx`_F8i^H!Rx$L{tPe_bCh1iyoMmR<#AjA4tsTlX z%YLp+e?DDxFqsitz$C-B=d`)wZ@6@1OiXD0hAn%;|s%;19-yb}vsLx%cQ5uf{hGIMqZQ4js#^woE=pnxHqOGNlBWN{q`rK7`CD zpjG_*WC`ATT_7)qmp9A*C{K3V`|2imi7?7s+GqN1$L*|(KzzfkPjyk#F4KrXzR(!N z%n5|@v>z~>mzp~IH{?}sIN-+*Q5DVMp&lri$zc^IsQ1yFv;Pz)_JNH`=_Yv4@ZeTy?md{e2#FGH7$XDnL zl{^eQ1wM8k_~;hX__xfF`@dP2ML$mXm=3rPs#d+Tz;Sm~eJAC3iGg4ryPfc& zAhsR6?HYetmo{=b13UN)!*@##FpCGA~t&Q0r(yK~_BMJ`z}SAL9qz4=N- zXO4ZqwYZZfrhU)K3zp`qLAa9cBM_sWpZ)#oK}Gez{b>Cv)BMNYM^#FZIl`1%k;YrGpxyMTgSnX z85I~naR3P_Z6Ii*NH2~`hd3%lYQTVqp-4AWN5@JtL_oSqiAoa^3=#s2C`b*Vg@6#1 z79jxvLnoXalymR@dw$$=p7STk^R->p&f06Q_ucQO)-?b_MbEg(Ey(Up5ho$kB|jb+ zbksZ6f$r5^E`t6X$C9E)D3iP$sJtbw$CuP}Td0yY8AA#(^v9SC-WM*5b&{M=kj+xL z%igI8HBQ@F2$LhI=%22@n|T@x-mTgzw~;Nh=m^-)1`JsA?CZKCkAhWk5AIr+k9R^n zYlJ6Ui`#vE!|ny*8jb-9_>{1zi{}^d-l8(RwYg95o5;4B z)R*!JR_HO0=0_>MyKls)t%oOcM;-lD$?c!~dFp6cjJ)dVT6vHk8=d89EmK)C9>C7N zzOTd3Nael4R2Dii0#;4cD?K@{NpEl!pNU@7ay%7DKeX1(Mt# zYiDTaJ)wlVXu}CZObEbikK(dvKuA+>ia7(Fc*g45o1$Lf&C8arx5RJ;y z^&fIk?W!c=vfRDy!nTG#`7$*c-ZnAcyun;?!|qIWSou^aM{~ExDyi#pf=)GWcTO9B zv937f?X*2(@?Df!fpa7oshCNuKHH}AM`EjeXHiWcT^}(d6~*C!iSw}QP-g_Gz)%PHNImy?cc zrdcn=0*1*wL>5krN9Po>KxGnlxXmrS0t}dM$u_&l(wc>`(cWPW)2*cS{Cz)V!R@@V z2dd(I_Qm^Qe!fll4b>SvHjULLPo5>Vh5uS~bv&%jTFWQ2;JB&nTlAg@kEcmK!^aHi zjM@W?bO%H==CGb(KzLQZ-vOwkYYEGW=1V8W+J**HJUOuxsOTKpo}uOVdo8M^IjGzHS?=?D$v)nR=2V~ z+qm6?-h~*uQcj+~uw@Z2T9G7zYKY$QqP~}R4RvYo*X1}2Z=iN9G?_Ehz3!Peq)KiO zt@i9PsX2wjaYGY0AD5nT?4?D6$;JkhHq)tRl=TX@Q$bivxo?|7cmmBjFuPqGPIVEs zx|ob(kR@br;UTQ%#wbN}jLhc^KW0tkoN5h+I&l8$sqVbK08%J|eu}6c`=PSzM%TDL zBA7-X;`YbTMkfBJj?<2~TanyUYC!8@jGx7Pb1o3WtdcxP7-+h0e2y30 zRou0HGV~?f95X&;J?qNeWTy{nV8|!oyK!f#yR(pG_fa7dVUs_)$SPox?sDFb9eA}@ zm;uxV5(M3vLVwwpRY-Rmun?xpC2OdacEh%EPC_i*yGDg|Z+^E#*eV!=w959(b#O8mFtyzpHop zWq>(lJ~4G|0Q2S^-?P%IIu?E`?|6?K@=Co)Ci>%zuTJ=`D#otMJyx${I{B%_-dBa$ zQ{5{UIpdnptNUC=dEK^PQec1CC2Rb@vcVH>J!MDwE=iVBIriVFaL(W*iq-Qa)y9N%y3Yu&}q0g7`Q;4G4|ZyCmy_`du3gv0nXM5 zFbk=$TIDblh05~456U5%nwAbG%mRE(<_`CGLx=WT|Kg-N;VyR0CSMT}0wygXedZo= z`LNQ0>a&SwMw@&^NGDLR)dVH78&_`19#}h?FrCi16J-E_9GAUd*!g1Kh8EAY>|UFH z7DXD~(>Ub^ps*d^PGIpNv4gxl2|IX})9_G{?GVTne#yhyCRrog!wcNP)-h*QW@GbH zj@h3_i`AhJ$RojW=%xOR!t)I^BNZz_u>9Fe4jHtx@J|k#^hC%t3Gn24Z6I^3WAv~8 z<-P>CdK+JE8?UX;#D*hVwcj=+$qqG^)vmP604ZY~P`En~5bXwX#iRO%#$QtsL1*fS zfupNKGcig`(ZAub%T`0+(kn;bMAX~YdQhFYfcW>?N&Bcn~f;~jo-h&9NI4z&_8c)2p(JY8O5gva(B7s!)upL)cr6$!AD7r05s~J zZq#Q*g?#zKn@x&kiOWJDHwEuV<*V*hIKG z`5EXuzC-fg0!|(W@}iK$MBq~{0Wx$wjSs)_HGy>Wz)g>Uh$+MjgxU~Iz7t}B zo2~)r(*MARC82e4sVjR`I^d_Lu`5wsnTki`RK7KLT|j^Nz%nk^K+^H-iSh2%V;4pN zBu2kH%#P&s?)XeWj z*@x7-r%ziEVHHEiQ0sZG&K1`gU05Fh%LKkrM655Y$Hhn}*#P(vSU{MsAPo#-e016N z_O4{HnPhVx`P%vAuc`qY5E$o-WUD)vD#ibRK5U*kNX4g3yy!pu{sKPdizD&j{xP8L z86ANLhuf$czCk0e@>eI97Ugiv5zW-FCqNW6)aG zlW2+ha$>OCIWX1Lw2BgwBpbTyQ+k`M_L$r`M}rGOF*yMm1ROhSH#b*E+XBWnA{^WyiRIbJ?sKC*RoSM7Avh=r5hj%t@TiUM~cbPNW&2}HTuGg%&52UJP) z65rpP>{2L(i=ouX)x|rgVp%3FWx*Xd!A%>eTK<8MY8k*lCc74<5x`k9<=u=!*^|3G)9# z0_D6v$I31JTX*Q6%?8_jJ_-d$-oI60DLi=HDI}PjUHO>I4c;fsaB97pQUD|{D^B{$ zdyg(HB%g#47`GP>%lJ>+HmlgSu=K>4axQn1Xl5Jf%x2O#z2Qp8ch`pWBg!!HTeiY= z?lIF~RGfN#=)p~SNHJxJzXW~1~xQO zNR{7i7cYUZR4Zp^Bh#5QC;7Tym2(g1#F1M6GB?B76zenPT6O`@pTGHpjr#Zx1!r2{ z;x%WR{|MLLa3=EvjX)Pw=DHc)-NzbQk!X88)iMrAJIEBG(SWOis%{Ry~AdyiF zPRmB1G)ZH?Z?P{FNpc`5C20ztiXX>rjsIfvo?VQkuXAD(Ct-g|{#`286OZ-ytn-r! zp`>s0(S4y6UyY}~Q@U7|TrFBcJEeo1?vWa1a$ z&v%}m$eht>H=%YRIA0C`-WO-i%&-j}S`)n@g^| z)50^!2+0!v1?46$2601^ve1QCzmg)vnzVO7l$r-N4$vb2!^@wmEivolT2!WCH!bQ- zR{vZui;`-W1BwXWT+5q6gN(y{1`>6SQX9~*WXPD|`%f&cMrX%LK%)Jj4;fI-qw&Hd zu`wL7Je`${eBn}U&16z1+QJu4+4V+eJTE5_B9{(HcQX7|^zp5BJu)piSg&dJ!%wx- z6#In8HwSlC-fT;v)@#_Jh|Y5Mp`rxhro3 zA;&#dzok-V0l?FWJCf)004k2Augf_005!?1p?q7 zK|hF=y-?2x# z(u}!%vDA8kQlMY+Q(Ef4nYuY3qc}bTZq>eYlUZ&DwSzr7`&{wkbU-A*un@Jg5*{P0 zEh!=pjm5<9eMC`jSR^OQa&kBCT0!qxARKPxb22hA7P9#>W201i*_-Wwn{DvTi1&r3 zADR$+x>aX97<1XnYl+Hh2^U=mp45*cjnQNA$-;TRvuqeDi#HzK-F>9xZl1?^y7dhW z?Eq5f1vBC1-=FsX=YD=0iS&Yy*>gd~FHrQp>hLCN=Ht#~65NC&HJbe@U|9s@iVIJ(j`Phcfr$%C$3faKyoj z|BQN*!-js&N)lMUme2&S(!hJ>sL>Dbm*0W}l<*gwdNZKQjr`!ljpP*cz9?|EjP42X zm#0n*kDRX{bP9@kaSU;_pb|hia2(-a-Mgg4Z<||A8)>1w;2v9MlyT=|BFd*~l?Iat zWJ$N_xUcPSF1YeQl5=KyJr_$y3?`3y&k`BY0eOFpLkd65HqhvcqMhl4*d z?~VKCpPmJnar|2MzZUW_zBKj%?Yqr}r_I7$F|Ko17zRvkDpqQ=(YK8y6n>f6XJX z#&Fx=yG5erQ&_V4l9&6UZR5Lh!+F8VEXwiKGj6G0sW0m%Vk}s`o{r^|yXB)qbzxFz zlsE#@12B~)*7h3DMRhSpdLfo>G3oUg|O+?;5R&!5T7$+`*MWBF$(>7=_U#2b;*30zy2e zT#L~9_4x~yUuhaM+i4Wq>~`LJc(t}K*u%KrC<|v-mAs}%V({#eRr6+K`hDb&kvDkutMwQL2*UFMshfRx-#%|zmfxIu8vRRQBSN_9dC{>`}BWMtYJrOaF__Hx&# zt+C^kGdt5*%Q^@bkIr@d55NXGNIWIN%qN6KNphe$T1-6O4+C5l^hzd>!${xSrWCQZ z6EEw08|`)2=e)$7*jN%YMiJ%#Y%zMxImJK^O8d6NB#omzJ+p4ZwzC35Owr?JSEt&1 zTJEt3B|W$PBtpgEL1ZKz700iBpSq1+U?`E7Qi*L?$YX^TS=MK#tB@_lDzC-S4|DHu?2k9?Q)J-VmecB0-1E z=B{m=BlqN)^#Q@mR0FmF-%_-UqhY6S!l&79gUk)>GTVQB*yVRGpHXH^Uj7t!ES^F; z*)Xx)LtZ@Hx}morK@#0G=03V!N-#21A$XS46w2M@%8au#Afqg`S zeeAEiNz<`lMDS7ewT^}+ag@|xC9}1{)h&{4`1NHNRIITbuQ1tIdXpGNnGU1N3Jwv2 z(t8bzh6&Lbj>O)h;Is&{4G6qYW0+M0<(v;oZQCB7KKkPyngRa$0_eVUC0R3kz5aG= z9xGa7PG%qKE_EPHmGmQ4rEu6NY6TWTnW@-R1Z`WNX!OM`^MpN4v=DBp_=l!zB`K^t zEzgblq}tyecJ{b!%dYZ2HLeIt*|c034+xTW1h&Ykq*UOh3nvN$nm6!@?4%i=a&dl?#NJ%T|BW7{jVgeQnR}W=M{!6Em(1_hIs5VR;imTW$Qv673Y5g!I_g((ebQ zx$DZYWuu>VW~R~bbr&r-nYNWxz+61mQPe2|hiDma1%oC&S#RG|2dze!Q)n_?V`2Ww zE?*Jo`E3xYlHutNF=^1~hYd(N^6}hhT3$LDrWgl)K<RmKUG=G&2Idflo3 zf_CEGy|=e-6D={8+i_woYyRPLa99O#PQ7$V(zWs>8Xvc=1~-gNfU?+H7)bd`wdN*z zB0wX-!i4RH2ZatLm*F-zk56>b)YPAJwXJApl_k#j3yK02LA%;D<)jZ|BM+2mrkO6UmzaFo1mQ|H1)}q8mG}9S&sPUY0;q z`LFd(NDe^p&?t46=RqZYgqP+t?>!RZY}Q5e!<5S9cTQ-k zGC&9FROvNkb=x71wr6W0v~k8aDm!a(w?XYAS}Cj6-ZnpnXbM+AVot(TEUB}5jxHu# zun`RYC8$yK#pSNtn%cbUWnX`j$P=d0yv_;pIuaJQ7A%9F1Mk--nN0w7;eDrlw)Eu6 z#?MtbLH#f4aa3k#3M|x^4c}V6Z`dc7a~a_>Dt>*eS!Qp1KF-5XDWGlRXEM!QciM2| zJ747oY;)|HD5s?T9Ak)Ldb6l)DgLj`_$ae^mq}T$G`I5hUd(TOrDIM=LU{UI{qVd_ zF6=0b;F;JAS#iE?OLkKtd8Wjw``ReGDa3ZFdQ(=md{ltNv77ZfeXA7$Cn8vO`n8H z?2eI?{NO{9AD8xScgl^|LU|~KhY7J~W+j<=NoRrduRu^#X2vr9GxecY(Q%)aohzT< zM!n&dQox+5>I8}7fZ(Se>`Z_D{8YSzv(b2^$VsM)hthX?ZdIT5&=6a204ontZA^A^ zcD!gC0wS-F877XbJ-u!4CV?-I8gD&ri3k)##s z(fXxavaMbGsrhR5^UR4oQeF`mQ9FWQ9FBm5HEJ0nW5}iL(S+-uEtHU#g z$NTbSohX?nqGkMXy?;mqg_m{S(DxO8=bdhh9?OV16$)>rODcz>?{7Kh)Tf0@}=E7}PxWtZ(ypC-k%yCcTsLKq-bO+KsXWhw> zu9wX#?yv;NgGOykf=rJeXoJbM#~Hsd55D&bu8H5b$|It-8viwWLlj>cW=X48&(3#E zPWQ!aK>@qkL}ceYF~rw&Jfd0Us6xo0!-pYL9HMk@4%9d<2Yiu}4(+kEq>AZ3-_)WB z^CcmF)X)FN>YD1#HoTV>M?($<3J{f|>b8(=ssFaP-VkpMwhK^i%{$O~_$%APOb9J%+16V&_@`fl;cKR`u)Q0)9_+NS7{?dg3K;nz_e1+jLYu|bS9gYQVoYk>m z^p-u&1>Awq0D9yLB~Esrfkn>=8aC62p>ebq1;K2Jfz$ zz(EI1L$CkXh7Jcx$n5TV8FbKp>&dozu8)qQqoYmLT)BVD>iG!zput80f#vLl z3^JYKj$Tgh+`-0ge|Cw0YiCTeD{^JCN{Xy^zZ5JXaMgRb9y6_M93(JWk3eQjt&8H` zl`v7^rI9H_M2sAn4xA$3N(sVmK7-wX1DU-&J23n**_OF{)q7**;2OP}yksr{W~hqy zF_>}RybU2p0)Ol&``AIQL-{UuAXx+)7{_osWly8g#H;5M(dw~ifB^prMQCtd&!u$~^A{6bSUY<> zGSc8DG_gRr?SKMjra3(aMg-(@!j_;a9@0)hcnvJ1!EtKP%yn#Ik_0F!lD;d4qf&-r z#eoU?}Xb0_r9@$r#+P|5?Q*QlMvaY1eXw={U7f!}Vj|f^9 zhtD8G3h~0bP{7ZIln0_`Se~AEBD^YQ#7iq!?2ya4+7)>^Y*4jvV>z8kKEQ7?0$s&6GZfn{&TpGvC6hjFZ@D-cYkB%T_h_)d5nn>8Tev?}15%BAOCv-|4}{9+ z=f$6M<(0SzX%xeA?QQUTHi-{idneqCFy79={*z^`aWlv#cE5mHHU2k7k}bM+m24go zhRdXs@G!<^dv72IoE~;LhkZpaVq5a>PHl1>UK*Nw*gcqx8cq{$YzXg&Mrm0xh##}| ztjY3u+dfhQ0bgHM?e0`HV?}}L$QkQk94m%rX|kterxq;B8${^&;NcS!kCE1i;cbw@ zy28Ke@rCNsu-;Lq;1F@xRSpjsG7)mE_@W{C#mg)B(>9JVi^TDDOkXKG!#GovgK`~j zXsSKB+3pk6I* z12vigJv&pCIV<3NVAny62=SAwxYyc*lF13p!3BOVDs<0+7M~lp3T~r|y4|Vy>fMZ7 zU;H)0sge8@EZSplo5OaS&h?@~I@znGUP`(=c0Xe%CBLZh+tuWrB~hqKC{zh6N}rh8 zaD_bKQIJLugW%KO$mP*PAPHsitC5N(0aHH!#0XqkXnM5)T3&TH$eSr+M!O`c5 za&iHKEq(hlP=aWZFk_ukI7ADxb`mh^9W^fcamL+ww(8?$-ujEzr?0}iq74tx5DLp* zreQsH8lsA#8JR6N?g(d5+ctcs3vd4(h8yF%ExLj;Qz~DxI4UW1_b*b|K7{}A_y18? zOZ@4+aLw_iA+GnA|U>j{q-u-7W+`@OtceK1R^`2P7@~ z))0ycf%j>?AnJekr5SLxo|}h@tGcRwU|8Sk;Vk0=*GKlt-l^KF8=A{EyQEUCFSzlvufDT<*Vam*X-Awccf8^W3c(wLs&M(xDrM~Yw`0WVQxh-sH)NJ zczd*eLB}+EZ6MWDN~F*&yQrphdjQ>|Htg^NsN3YT*r}^ubOjYB?yleww%HHB7_&YM zQ2F%$EWp+U0`W!~Y!-?3WL8o|`uGlr8%NVmG&@JoV~{NQ!-PFVQI^q05=j0scs>p9 zoVbO=oMSB+)UkYH$&B_%A-eC?d~d^xPx>0|fD}HkJvuy4xx?=VTYhTqtZte0I3ydTe#-Xnk-lN%#Q#0`z>+ zH`Gm2lvf@6vJyt)5t2MHCJvLJ3Pc(J2o!^svH&l_I0Xl6u3^ChK|s7TOYCeOk)6eu zwcV3U&G-_0x$EaLS8I7Cp28W@=Z6`bp_9GE)}yN(fSrejXQqD<%$xM{MJQn!i`+w!8KWS0IVIJ)aW;yUxhV;bIKjV2wB5UdqD&%85XDf|o|?MhWm~$+*)K9LmJbC&I<$FtpvMc`O+ySsABrOJMdWD(m@? zm_3=$K1i_Vujg_ub`$kn4o=+0%Zid^OPW}W4*t&RQHYnU<0KQtyILCRze<__T~KCa z{nh=lrFlOEzK)m|g>K^wM)_4|*Fb|IWg3KJinfQk-xkTS=O+In-#a?ucwr_%e$&xp zdbvI+b|q#()gej698vHKm+|sk&N;YoCP7E(H$MO>L#!|WqNjYN@ze6H%?+;EDFbZ-B9Z=~ zxTV2$?q8Qo`a)nN#|d*g=M4lC>ztVc3$3R#`eSa-SgAn>>?eLfiR8aR~nAB-?H_rcS#TjZm_6(wdBsR z@-q`KU9T23Qdb|JFbggjw!%M9Xu38yVy|0unmc!5rpj%~8dlpa@^s#;Byj-{Zn;V6 zsMK}k%(~6_>J+_Y%qV`kOhBp~N2)nWQFYoHL|vGaSxlMPCppyv2!3LM%BglN_x{{s zuau1)TA)?OOS2-4v>Noi6E_i4U^h{fr`gX+887Y1a6e#EBVxsFGn6^?20cpULQ`+9 zH|6oiE*Hh3FtW18-|aD?R}Z|M81c@P;)tx#fmqsE6?-s;G-P9M@Q^;zBMrhVo`R+B z9Ls>veB!;8+uQA3+VUE0*1N^iXJ@=;>b>6eUE6oKEOyWcw9SsN?>j1dNK=LO*2f-^m+io$n zK7jvBC?0Ou+4Y*^mpc<158y2-N|u1DKxYyxWfFvIm04*wn%v-R#LmG>t59!r8;Dc% z0(^B}^jYv$z25^3e6KgeTj;%?%p#QE!u_7S4rb{TY}jfN;F!T609uFF^BI5bgj$BY zjXXb;%Kh!p@4NoxDI#@m5{hM-$j8`fDu~)zU7(4@{Il4EM7k z5gk0=Ok{Zluak>K>cT5h(-TwVh4%f{KKH~!YiY|YxouWlSC6jiB;nedn=*qtAB^_H z;>Vq_6MuAhjv7i-9}Zo|6@{7CZS`*ExX;}oK6-(ge@I zr00Onevnyb!ZpqECW)Fv;a3|I2o2L^woLF9^8K>@M6PuoBTQEp_*GAdHUM%$M?8z* zFi$5GTdGxBzA)|fhR+jOLic1PBmQ{`#=iGte~*hvZO?wgTJjYpD%8Ra&Mda^HXrZK zbHEl8{5}AY#LkpG=2X2`z?BIpj2V4|z``Oze4*4ti_41(Wo%9hIUv^L-v4FZAk1pH zl~eF#OjI!MjqQtpL&(GDnlVFd;$`IDHX-9qmJxe>bA%~+=MZ7?LHF9I2){-5y^B9T z6b~CjeT!F@Uh|o(I{CsN%oHl-6_ogfMj=2R%-vy@V_n_YmvlupcxVey0bi#EFL--3 z-+P4@cHWhV>1>{P6%_XidK-YYKRS3fG>MEil%$c+m3tfGx;ex3T*A$jF>(Gmp!=D#@xyO>7jtw03`x7aAvLi{x z-d2NWK=+vhmMt0(%T7m`DD0z}LvM3RNN4CI0te9q`*rIWljC;BeM<$;US^~vrH{7_^L*j z?*1R>0)_AIH2u-whkNf5x0^2E5=-7YJETSU>r%g2mP*+Mw>hHWqaHyGsxpWYH3r8x z|HF9)ai#;(#;ZV^l$X`}y0aGE)dQBt!QX5qO9&eFi$g0}#`z$z4*psvMNb#1a;Lj% zAr2i?SLQ&hT4~oN2{u7~=6-dfCycRyta@|_nt3h%kO5NwpXz8q``}00KpH8LN0d(`&_;D!WQWVz|oa+djl+0Uxh@ zdSNbp{0W8jO*q3lutgB1rMP7U`uFbaV|v>{ioy@_d3t*_Dmm8dbVb;p9E5*MXZpm7 zX|9o`6$+ojZvBiQi0O9NJ#wbQv4YFx`XGwB*qd-RYZYN(6k#+fI=e7e(_tjM7#%x+ zHjP0`Qq8$%`8)-Cj}>|9OCHYnT9|!}+sg{%<_B3rpIE$-aVDsffA(Nws#iOq|MeQ_ z)=!Z5I4_9W3zK))XjRGA6T*mbeAbQ1gVQf6+WEN-Hs!{5@%_Wxqfg8VhfyM5_z?aZ zONtbopwgXiEZV(O7Ct9=qR}vjTSlfsZw13+BMHeCY5LX{5D>6QA95aGf*@dC)L-$iU}oYkRktkz+(>|7HgA z#}*RnQdD}_hk1sqr0}v!70ozP4L+Op^hV`0em&z#I(@~pU?!^>1P$u*(8oHFKCWj< z0>!=hQex4v8lI@X~8Lc zxpCF&eXM&`z;&L??U+`>NO!>V7re{Kc`A z%3Bv`bi3X7t@B!eZ+7Wn;%~CHXmUm@!{a)G?fVn2Swogv^K=W%X?#1|{_?t~NqTfX zkC^LY<}ajf2WHbGn9|@&Win2|fZfLg8H-z~BswP~VwIH3{$s?w1c1^-McVb`7xnPy&bdFur2K&G}3=|&qPMseP+**3~0XY2k zuKwU*=taVB$n=ZxGrZ21r!Q5DT9E@ZMp^Y=z3&OzqZ9HXoAv-0mIRJ+Hh$F zJuDbNix4Em$D$z6~PpVQg z|ESDmsvQb~H?CH-mG$m$FqFH^TF|X`bFwgfTU2((^OjLOpU4?e(>6F+ll41NQYDkG zsLziaDBDsmC|ffofbyJi(C6j7zDp$7e^O1`W$j%DG8t1+W>}|-B6RS1JH6X@xwkEA zO0a7kZp~E6rt6np>5gaW`Bisn zoH>-_)PVxGe4M)_kNP^ZwpoOLeF{R1!_&F8 z)lTJ$L>aB;!n&;nYr|Lk{NnXlW19aS13#Qi#GIg}wfIexl?CKEW)NnbT+CD6@5F4H zZ5xR6d|JJ8J5rTMhODU<6bWYoYKE7HE_8+w@%hmdK~|_+qS{_a@+c4NJqJM`Jk!1) zsZCCI4!)vAZoef&f$K>PR#H>Ft6>iZcdfWpUl79N1R&NmG4&EQS~>bGOCiOK;+q?U z4;jjq9ZAJ?Y(TE2#>{FJOM6Bg!XKe>wg}fmmyPtq&AlsQ!F_o4qoU?K7wUBtG?Fx? zuLP>w-_kCAPqMS3WQS?UnZ*}L5-pJ4?ah@tCHF|VOr8SokoTBFiGd(cC)G(pC~w2c zO&_VfBvqJph`{>whQ>9d-!M(u&jSgi`(g;;yEHk^GWQR*V4xWR$2Pe(J^Mc70T5flN)= z{-w&El`%VN z6K>j+)uod7vpy1?PfRzEes1xz&R5szJ(Y1TDosfD#1D;qQAsGTSd3;s{XJ-!pk;xXn8^)t8*?m}E&`?{)^8>THT%zh5QBoSNOx@xwR!y05hH>v5I(W-pAl&1*@kriJ zHlY%i-%;)rUW}@~apOR?Irj|~wsiY$*h}nhE1NP#AejF8^d;NsYqAMOD*f2R35MvH+&#kZkQ>1Q?6VCokw755&{YS!#y$~jynnC+fY z*)gglN@@+5%KRJ5d(>5;;TWF1GS3?;lI?g1+Z6?&&MB#EI*U5f#Ak^ed$A*g0=N>2 zVS`ABB!A9Uf9N3BJi+DYm{iJt&zb#&d#cyL@q{J6j57_xe$fqAQ+40zxZpmpDoeD z%(qzg8=mGP43&X_;iCOJ-q4ia>kMkv{|%ChaL4SIjgrldV+;guK6wbjL*F?U1;}A{ zHfpmvJrmX)^^DuuuI97ezzaxLYk75vYU9-S)Xd>V`ocxzEqhe6d(nue58II5%iW!9 zI!phQ{vMkW#w0S#xwbA;m{U%{Dg2j_UdabP9(wp+neJv7Iur=3&TJC_=U(x}BM4(N z{>2%LOewl`ZX5N!G7c0g4f-7xXU#1P^WASw z2i1nL?WP*tX1%FbdNZ?m+E?WW(iR0wg`j0knhjfV$?Ga}ki22M zv2?RL&PPdz2+sEi82l`M-dXQzin)>R0ygi&(f(e{Z<;(Z)>2}H_8`eJ<8Mx;rDGR7 zS&WbyFxl;PVBkhohvO71{lzSJko5BtB^?-JJHz`^PKTP;WQi>Yi%`W1#rk5LcLcN_ z?r&&j#&1#PB4I!rB_hKeUt2WXM+5jG&NVq<*5 zDF}1=p1ro@8!G*yhx3SD`K2^sDltvM-$KZBh@!HO^x`RX8oF}s_y%SxpQlRUI6!g= z4psi=dG;bssw7rEL^rn4o_eGYvlV+q0)mbfnUa8^zO;>D*~YQ{bx%@Mz~D zQ#^W^3fu>9B;O(t?vDZk`L*it^z=0bM@1X==pCF;}K6+p_9~qbg z_u(IIZOsor6WPP9`A1V}EP z1alEBaKYAK3D8`QyqTi<0~!DCAtoR#F%};R(gFWd#)g)$+1gPXyf5!d(0zx{`Z3Sl zE*pc^@3yk>aKf9EXACg&s!JpihM*-mrRb`?D2WT8_aVN&sFgFn7mz@0iX`t;0R`QA zbyqb9f_J+Qt!?*CDPVKLpaerJ)cioBUgOX3#pq#h%>abItAPIrRT%tS^#FxSK2)d| zJ=b%>pY23;!C=DMqitHbz^Ez4*;lgs5Bx+ZB{$?y}dUu1;d)$PQXESghP3mzP~+$N7_l93KJG$be-N$0Cf7Qz&FdO-Af+jT5lgW&xQ^JmEwEnc+ff z_Nt+GIRrsdZ9=Q-n=6O6DtHlGCQC`7mj1$TY`c%bTuXhxqss^{^X=nR$&o#(8f$pn zbw1l)9xffOwqDIeQISFm(HE|S2Uea-vmi4BCc#>GXhx@Tm*ouN{gr}t$=Mwh65)B2 zEMt0fDix|dPEH7|1QBx9m|-pRj*E-?+hU0_#QTt~r2PXyl7cjd0RVDB$1$b$tektHXdVQa|$amS5 z8sOgu{AMHF-PdVMD{rZJ$8PMYbwHp4l_@j@sa-ZPX81?V8%toQz3>aT>}}GQ7`y%> zrH!&DNnUoFItK@s7Hw5;nvHaMgQXA#%2+bcI#bk-H|F6B362QTjNTXUf}ain&RhBI zKT#!z??PdClyk8$w4Px*cBQ@(xpnBwfD9}T{hLq;S9$}-IZy%leU`h!Z zE%edp3N~dER^CtVss^NEr_@hJ{(sc}?9 zDM0}!=T!gNEkN@Y{tU5l1^wGu+x7~qJ?29s?l`tt#LVTF$0YE8^Gu_O>SEU}7w0&q zcyDw=x5n#=L!U3`cPagO%2N4=vw>jjn_6N#G&&SnsqFHWuXKeRx2m!{8>cO|mcKHP ziK5~bXhN^KFKtg5Thv%66-qG}nLPCH(ITK`8M{N7M)0j-q+-9TjFP#8Eod0C@FyxQ zY9o?Am+e{N#3^mp48u?q6&mf&#;u$Vc2+(CyK5ys-Y%&@Q=XfP4t|hXZYo}yHuRm` zH!tq-PU6j!Dp%lf58e_)m6Agy^U<)oP(blZwqJ%9-Ps#$Z`q=IEqtzAb7(8j-3iiu zT+dmZJ{?1mYrSJ`#_A-DA5-i7Td^F}tn9qiD{|=5K44*jL(h4vxy)5$PK&+2MX?cq zyi2uB-PhefX`GVRYwlBb9c8g=C8Cwrf&VOU-@z_5XwVS++vwRx8zJe7h(jGR?G5V!1(=B}}t4ewe{m0lD&^P~}Rn(^CeFeh~u?_iq(ET0l z7e|JH6Uh|0bTYD%`I^)=?f_Cz+oV8XeE{z+Tph+2%LZ%5=uv^ErH8eF0)D}+{J<4C zA$HAQNG$ebQGaUTm@kQ}X@H|~mb3!be1bOv2Nv7+OxpU!J8w>OF_d7UM|yI1&Osh? z&cRXVW>DpJCNpz@S}dG5qVyZ2zy1fIX7p9uygQJb8oWU@j#p|({Bz=Gwxzn6cAP#c z(5T-Y65DrErgxq7`BB;3iSRmCGG3x?&P1zUQ?Bn%@u}YNIjJl+Z7m*_Z(5Cqp@5$h z3i$OI7e&3;9vux%B~npn3-5OJsPj4$g6;rLxyFjQ`CXJ0QKo%L)KrG1&y zYBc&{6z{svtnMT!{DdL0o;hUqN>t6j-#trjB6+y&XijG4YYI7;odojdprFYVhknE-XE$fAF_RAkZ{Q)jxN1bhJJXpeSk_ z=KmH+@v7>VHF+DTFai8miQP0OUN6f-gh@=$F<%w?_%R7hONsNyhM$ZI0BV zYq2v4qTiQk|8#?)$mtW$Mw6|XL+M3`?p=S47`G>vM8#r9!Uw*ZWINi7fUI9*PHxp0 z|MpOLBh<*NCxY{)MmJd=`Z*>(ETQt07ct_PBr+u0H|V)T7CvqyCht`2@>F4T7eDiE zi99TGGmG<2#x_VMTOK~)3eL>IPiqau3(3rYKTV)7o67lRy{?0f=f`B5!|7#sFHhyl(;ftMp$2j~W&hGUaJBq62mI6enB0+i>5K zhu(RkxFfsHqPkFsOnJ<0Qf}-zot3O^SN`aJP4-9L>F1};Tli*ndb8Abo^@K&RU6gm0cdy~u&}Q9P=IJ~DA*A~tPiYz4(jC!O)Kqz|O&o#Vl|?6A zgH#>RF0jV6n5PT1ZxY3k%=nXr%L4DHDqrHCSr+>D8N;uAkobhf+Y#cpUX-S8k~WFX zy_9ffzQw%G{@UJen#}-q{l9##wnlBK)v52z5%Zb_vc1<;ON4{`2-+@ zkoW(Iq~QFEq#)V5Cn?%>t5#X6;vVhkAcI+{`Jt@Dzc&ixEv8*}a0N2PR5s=*@xOdq zD5~hP=h#|_0oU@*M!-g&Zre!LqE}jRiYQ^dLH4gc0au89INZYm02||+aP&T{M0|Bd zHAnAhi(iUt&OC#IK=>LWLKf*|PV371;V)s1Ot)1TF%hJEW)PU+P&LMSwc_AHzgf=h zH^{m!lWm&#TTd?}YlIjs)gmt=gOjWO&utU9d9vic!TaB~P2j~9&fwxhSn)q?0{_z{ z@DIZHcjL@oopJx@A(%!QghJm71R=uDf7iF~`nPfW8HJKYi>||UyFqOVKknX)QZ<3T z0tJ0H@_$~9dhiAq!7{4X?Wru z8`67Ad7>x(sI2Km!?3WQciUWD+*SSW+vszff?#qD`Xf@M9^2|c=YX<3Ul1*ERIV3B zVS&p2@{cwDwA}&!Q9;&%3(1%JO(UZSKqe$0h9?oA*7Fj%m5KNr}+r+MFjU zoVX{o>QKJHe&?QV*a^sL0?5R=o^JM9@_RZijGeD6aSW6JPSuK1Q>MG!Q?%=9s(X&E zl4@tD2da}z#Zac&f%nCLRNh(D9hgd$Cx#Zj(0+bKWo_;0;Bov=@;O2jGJTW=PZLh9 z`IQY74WZZprKH1a)xGx3EGrXhkJvETfq`TJdr87wxwLNs8>?lZJ*K2HC{$ub1013p z%nM&1-KW*hW>v#mtj6+lHgB^ip}pUmLMm$}{kkR@c}Wxg)w4F!##rogd5?Q2G~h@& zLnIk```XUS)+#?Fph>5r>B~4ke^TcY$V`q&5c=~;pZ#WXxo1`T!gFtI{)p?C@jR4_ zfjMlzQi+J2z??;ptn#ges9sREr;L!GK-3%!sWSApmNc-e^Kxx9**SAB8owbxdz_o) z$7D7o*58rsLt-1%CF&#a*q>Ub>IUdrI=G!5(w2w`=hV25&Gk(tC0Qz{<#v6XSIfXS zYu|j9z&m6k)7mQELW-mO$g}@Lu$$+cbjxK;^`o8LQ|;A()R|v#R@?UNYlCcMJb?|A z38OE|?t4--aIEvD50LRKSWKoPps%vQ-S?uf1<mk>C6KE@n?A_1ZBYttw|d^e)ks^jsocMn@wv_Ur$cM?t8OcmS2>GlPE`fd z2!9mxwP6lMdv@6q>*UTPDDV#~;}Nj5>oI`j!;=UF^)`zwYSXs3)S3YCbK%+YAX zJqKmYu-UF$UYMk2_SJ3VOL&`QgK~n=Bx_!61?a**pNc;qVh5KA{6 zW_q-T#?W*3+cM^LM=O=V3X@S=pQcmug^^EG*{)vZe{NJejEaF>4~afrkqcWqERV^d{8lMo$UvgMQsGGy5Fzmgn1;r zL1i{JuN_Ul9AR%QXAYKWE^+hdpH}Vo(6ww~Fv@O0>!jQt_Ho_;1wjR>jW|@q@4PgS ziP^V$z1qVsDtIx<>PruSqy%3tDPQ#}5|t3?zWBWaSQ6+G#_xX~=iMB4Re^lK!j%NS?Cb|Ea;0GRcD^BFlauyt<$is`0^pnF_n| z>xv8_4C`oOq-Ha7LPD9Ad@96@%$Ci(;ME3dyp^t5hKS%c`d3u|Z=~N1C`aQ9Kv| z;=Ml@I4R!eNAUJuRbia$P&robe<{!6#%m35$V8TyYzz@yfK- z?s~x)-O6(oa4$yaxJK;7m8W2oFrhEj)Tifet*!~_l1z=hj$Zss%~bcvbibvS+HI`A z_M@Gc)TF~ApL%LKQThE3xoBxkFU~CpI0o-7K(Z`o#S;=&bQMUXHFXngw?2>WEdHW( z)h^*vu5N9}IV7rZYa&a(YpzFmRH-tn`Xb`5U4E&2oR@!Y$=A^JQ!L}tJ7A09p^Hb2 zzSF#?-q^2=24DkAz_nQ=hJhcOS@zaXJOV`#?mUZx6R9ms4_RGI#<-_9VAxPJ8R;+H z;2(P!w3KkqXy&rxGbZcv){5Wib;@(qiwWN$U1C2bXFE;o)wK!>6Xj#?`}MY^Ti_wB zF@}B`x%QH=8cbwfev}Z0V1ZkCsvxUYI>+gjK5zr8hjaY=B3P?a34b2baUaPljN=?e zH*CKNFLpCS_@p*qd{u;m8hLiE0jZ%Q_pG~=SSVJaWUbgqS zbwP&_u1b}s)_Epkf0+Sst|068w3Dy*UIQQ!JH>ow9i+-lsc5-SLIPG$If3|ojY8Pl z2rO7 zT!)#%*WcA%u&xtSHEMoqvA=OFciuoy!AtA=VKs*N%Y051|2{-SczjbPOsiEpQHx`= zE_1le=Rr35DXf4C=HKrV4!vf@O}pHA%j{95PCB#!4WVsCf|r&B-yItr zUR;kl1*XdT!z3bG=dt~;Qu*ZdyAu*#Ma9CAClO|ozIp0*04Fms!1b_qY9Kk@we8i! zI@3<}D_hevm5ww|T&?R#=CI`iu4p>nlv-dO`_Uo|TH0!UCxj*tI4Y@wRnHDipMCvTZeuneJ5Qn-1+nNpe>`G=}5E7rLq!M$F^V<-9)itisQ)tRHi6 z#jcUX&y|)DjD;*0)Mv#0XMB`V7*)eiGuom0n8FG~_*UjY=Kri_<3_ zUPDb`e4@gS*jg(Ww|8mXIoNmY#Kq|qHCKJ}6~&OQyurXAfJHf6O_8Bnt+r>xmf$j) z%w;g5OKDD9-u~H9B;o!PMW;Pt+&n=<1Ceu@)MAO7q}_1qK52UzgdUkjp<=h(FEL&z zE_E{z=6D@JC5cI};q6$xV@&i+Ziyr`Ztj0-O_B3{w91r}vQG&tkC>tTaF;uEyX2IH zFnYvWMr}~JXVbq4Z`ca-N;oYjmg1FdMn6*buDg1UCLW!~$c0Zx$uMb<3zQBMOSKyj zp~$2)_Loi-4GcEs80rQ^IOI4RM}RGoNW;+&D1wx<46cVmDYHU&W`ut&<>G(EgYwFX zi}aep?4k@5AT#{-jP9UH6zBmfiPF*FuIA0HE>=i}(4MOkD1Nb=Ge=-|Ev-}m-Fb=F z19=rBriHG}hNh2B*9hPt)05k-+9E%BuhO`^!~^tI?ysvWF$X!OMoMxTE?gRvvZ3jU z^;Z$Bh?+9l+>wum-+OeoW-fFAs?RWRsfnJ8WHOvMj&zBLv;ZFSkpfp3J8U;vjH0Cl zW>sZW6mu0-;VV@#%QobE(L9{KwRdK=0>amW@za(bU81M*EL_%Vt}PHNWw24gqBn}u z<=esKuC5vW_<8A!^}&PqqBbPe4i72l)BkGkJENLxx^_d6-jNOh(vgl2f|MXdI-#Q? zRZu$8YbeqMrGp?+g;1oUH0e!1q=R(n1f+!^gp!;)`aJLZo~5sJMrQV=>Yv-k`-jm!M1gg%0cz`k#y@TSTldMwp%k&HbRhHx%+NV zLOXxAe(?@FRV~lT{6g7N|Ck+Oi+jA!wVdp? zok$=vMnfcjL_g%4t$|)f ztyg`>jNys27f#JjWM=t#GNBnX1z*)soZ(G%HL)fyI&(|HW56#NzaT2XP#V@NMo)}} zrmIkXPX?3E!irG>Y)A&mqbAy_BA$V?y|&L@W^=i+nxa<~stPHwxmMDCA3bt@)nT;E zB5|>lO!=}D(E@HkrOlT`8Oo%%_GY;q5!! z>*l{^4w? zmZSI48gE@zBjnY4g_M2ivD4MBZOg^sPGy&gVe^8=TNJPWIrDGuTQUJ~o|ha8DRhmN zMgvFDaS)|eTzYx^-ru@fg1W5B)9X|izG9fF1Qugjs5?}!=wXvbei4EAkqciph$jIr zou|SPZs(_SFTUx#iyMJN+3cA#7|d0W^}A>cMA_J@HZo{O+jna`k9gpmns5lGxr{|f zkpHYyeKhF`yQ^1x;0K2iptPe3-p9DbD(?m74`OD`O_nbQ95|F9C3A^55`g9Caxo63 zQ1&ddo|Tj;QI1^GYEm1w+i?`b|*5_H{BcERf2*XPZDp@uQZobJ9X z8yXhMw0#gi>M9I(mmg~Jx%Y8y?#bf*#-V!K(9i>Xv(%r<^1&SB=ASXeqLLeYoZaKk zX~;}n7dFRwB+a|7rpmvwJj_U0PTTh@y9FQ4P&fxwT$VXdPkUZ&crw*88Wn!o)Q!`r z6Z{tI7U$I^AD}c9MMl+NoS!{P;#z+041M>fe~#gE(L~D;R|PLIbuAy-Py;J{tZ(i? z{=G?SpOtq}q6?CPufO`*qGLp235KkW-&qw|RfmkymVG)Qavn7EG_(8hNz;olW#!#` z8RKuQ2-iz1D(`~0`SWxOx?U-KpmsavBOKZBqseF^pP?HoSZ}-J~8P5ZK zBY&lT^eK$3tofs6Am;l1RC7yav%DK$yZJm(Ik7Q0`4}z0o&4y>Cr4rv+t7a<0yZ3? z1;a1i*wm9iJzR5H87#Nk_`X>UuN39bI1w8Qqm3b0KIO3avTF}s;W*mIZ)=6Iq)jcIWzr%Vp9B*1RPxuEbV9jWy10sLBeeW zz#FE+{yv@~2-`7%mS|M&weLbtiEP7H`2ohDe{yj_Qy&IESK(EdUko8Te3FI4)zsQs zca%9;uJ_|&{cIkl;GFwn&MluNFylx?{=SK$|LuyC1>7m|GL|Lv?CcX1)N$D!-zMs<(cGEO07Z5 zBq1CTqpT9XmkCX9wGsvbB4HjffRo(EI&}1L7bw3d0!N8xScHr!ON)`CK2=PSD1SB* zN68Z)>Pn{}AmY5;BBp3B0{qzkOJ4pIC_fC8f27F>)cO-B-vpG`!m@g0nKN?S23%t7 z1*}7ImgLQdoPs`bs+wybfpJbBkHOI_NWN&- zKbug=!{jWfc>fK^cfD?AXp zVkTj^!RHg;tBDZI0p{u;XiL`ed^}?bdTLHvhAuYz5=NyYyVDOw*ANRmZI`kg6@OBa~E+{%t+?va9 zsw~x`-)Tocn(E}=X>_+tpRhi2zle60bCt5pMI2;-`{3OJ}Fx%McI7I^YIN1VRE_a-osfmk|pfy_yQEu1SG(daObZ_;0H01z&G}ZcutrN7>&3t&(?# zQXX%?+@NRf=`Q}2%N~RwyWK);)BiLr#ShObAoyq+U|X9+C8ned?Fwx@4nkDQ_rO~+ z`w;}&$ZK(m^H_@mbo_BX z_mAR=VzE}C=XUvaawG&qxbu>V2-+>*DzJb@m(6w%a3`I`LPn*1lR2-e@GLRu#AEqn zE!sq6Z4PgCx236BZ2(mrUp!KsBK4h8 z4zueGK8v*sT2(NkW6TS<=^QTsQXu}*sIwn$;Yf)<0c$?I)WxCASXt)0`uZ+i^4Qj< zq*mRB3al(-iP_udWr1h&@_q8qF*olKpOy7On}N1LHx|27&5j8N z3+Z&XJ+q`o!80Ow-;hktV@)*dYVV(L!wvWuoqn{zjMnRRS5iLtkhg$G^~$%usvJ<_ zD@dJsz@%U)&@gS1_xqCr2b}eraQi0YtiK*E0TJ&}XG5Ssr!Ufj`=@OvqVoquO#{xL zrsrP+O4`i6U4r_jF%|tqPdCY4lMsC2&@QUn@}&$J=6;4IZi)B`J*5cg^|6#z@jDgS zyA-Kmi3$#-bpLVt+X7oXTCvGuC7T;2TJ5ASR{{eV)Fl+`*SqCZnnoYw^4(oABwyG~ z)r@Ez$BT4gaNHk$b%+k#nA@n~>)98v-5!MNniplK%f0T?vg`?>vjV0f$T|8BP3_qU zK6&DY+g6?KD?IiGR)~f(=*XSHW+$*zVT~ch1Mm=i`WOBiUPmP#$TT1_Uxx?>Kayl1 zW!C75B{nBXvMb{!(}jXiO0{4$mc|Q#w8JTB9i`o8GjOfM`&j>K04sP^%|nj2g)a5Gtu1wrAqAzsn63MY7(ofm@I6{!=@jXTu8Hgg z2K&(7)b92Oka3!;V1RdM+(&*-Orp$sHLMwVE$G_>gVnFO`e+)aq$6@EZ?){~eP83ghsMa3g$H&&On!1*` zpNSDn_T^unC&zi_TyN9Llzlgzy|Y33Md#ZK*xDLI;qxbU7~2lh!IXjSM9pR!k`Q3J zOu0VRNz)vB`wjGyJ@UNMZK9xaRx0YPt5DB%0W&Xs!^s%j&?cSK36P&OkrS8j}Z!CF#_-=4vFSXc6 z)Y59bpnvKR&1Lw}Ti!wDRev%C-EI9;5`cs@R!%4`kr^O_KiiM$a5*{HCC4jvf9xIU zE4myhZM=UgecC28YR<=v)JMNCID|kAgm?YWycLqsuP;Z)mwFYV?yic`Q5d7ZX$p$I zNKBgj&Q=mI8j*x6DJbLn5GSiFo>M};YtO{M&nfdFcf4aVY@H_g2UFLagBO?S{*<1s zVa}}R72s3Q$(hiZWa!OA9YH5)|Ut63VKcXX1yC z)KLZ1c9{(!1NQqNO9n4TuhyhvTfJx?moZXG_XccvMmz@_n1R4Znpkj0-%7|GMtwR1mK_s&D+pv zzBI9wOpV2Z{bHj!PgM3z?S}jMGFST!D{UrM4MUCK0tYu~`@Jxa3!!aKl4YNi%G>qX zVMnm}V8kauU0r>@Cz&nT2Gj>u@yS(F#A-=zv)?3F;;zW!x3?I7HdU6<@n`k4I1k72 ztF}5%fr?(XQ+$`aTe?2tGa(wqbQt-j^p*u?+xea=!>SwpC%fVk0m>|SJ=ff87umn~ ze4A+|PGH<-+26(WGdsMWv-ILdJ@7LGR=PpvnJTU)>(Sf1waX>}l+fIw@wi>gsiOdF z??KM22zGh_WB%z`s8qr#ipGTCkCC5aW#o{){>Qr8ds>D5(ED>n$QuUiqw@d6;Q+D( zy86+bu;1p12ZFo~xfsEyN@Z)kwhKiMfYBV~!XP!J9lBJ9P&=^ zIK_AG*Mu*4e zsKV@6afhA&qSz3Xwickt0_xAj-j8neds+owLfPvs?a_lVth z-dKg&5D6I*2_*n94??_pE_4pZuC|Ey!aLiyL0j|i8wC~Z(+uTPWZ>n*eBLKDCyZ3E z*Te+;VIAWXVRn2{^bf=owP^Y*Jk~ap`rs|WrBdV?tMU`T$w_1}#`|t-ko!B8n*8=) zglj{(Q-)8S+MIz-6tayuZ3%2bC_o=)t?#_32)x`A2{tszF#ohFj4y!uxg@hQ*q7UT%VKzFTXNir!l1dsgeMe5={>uT(K;%wbQ@v+aU> z=&hTEM<3FL5`mzDs`lDHi8n5Qlw6SXQOFihgB4WT0v+NiO)G{GHO&pd!1Utm7SR|9|<-dGBU zEp;inR&L}^SBLukqF>#4;|@WTan5In-`SP6BmMu4cW9DK3H;o@^})qE=qaM{3A6XB zEE3j_D@Mh4-gUFB84b~)&Qd5Bna`eU9!r9!nhztCg1@?zvUg4K351N?@S_q_yoOKz zmY=mex??!&+qyaG&LfGZ*O`i%w}X6$!pUIt7bo+RL|s{ac|@I65Ak>)Yxjxy9QHRoVz zshMhf(fN)Tln4VWHMp#_G1%MW6{RFl5A850z+YlI-6y?#p` zhBH&OJ=vc_0)r@Nf9zOFgt4!+NKS`6D`L?D(;NVj&V@%)_HP zk2vmns0IKXPTFlWp8Gvn{vn&Ij~oNB3k|XfTThrNcx^HbiccF5#<|7R0MzWR(2u~` zqd2b8@ZR7gHzq8H%IsqB>=1}R1e`APYHEdZBwF`a_vve2l@&$C-H1*btuHZ={aE=$ z&YuYEJ8jw}Utt>JE~ZGsHTJ}o7Tfu`<|#sYvQbW=MfK0?CpuB14PX6yhGJL#s`0CD zL{e1SAU--7E|nvjPWub)k0_Ow?QUcnjv z0VXgVv7YHj%=ZX*tGOHJF}3fORy(&p-F%zuFV?P*_J`cQh-1*C-$@1lqL!eMzc0m9 zELy&6^-1fyEpD8#%l5TFuUwngHmAJR5xDZNOhX(1CdAHDK^ErK*W26erey%uNiNtg z-qG&u2krC4lihw9tZOx(V#UN!jW4EH?e9qK0^SsM;k>-m zHyR(Y{wQz^d~5uG-?M`2u>i)T+W!+XtV=m8>`)rhQ9dgCCy#iWT!@k5yBtfrVK)oQ zz8$XCsh(nh-TL;QY<>1WB^hDb^208(4oEWe`a)ai!%LB5fOO&z$x$usKmk9Vr}+&3>f#y1WShE=XDtL#>3JQ1fQ_&r>M4*?|T4Jo*LHbMUE1Xu`#PgYAP5a@Y(U z)f-0%rmy=rJ$;q+1K#4#X@-OMo(6a5E7b!EG6H+N$zYXDd-pPy0T`O__K=-(I@mv`t}zbmux2S5w^7KsT}_`>c`OvfU{}%jl6EaW`|7`9!cg+rIt+G~XJc z#DT!S;fAY+rBBthvn<;zk~{^A#$!0dD)_iQB>Vhlvs2O(9HlyAtHvYb3iw$o5DDR@ z^8x06?`-T=<@0p+ojE(7&R&J53gp%t_{>fG;H74{H6Fi9_d-AYan;1bj`<9xsFDN) z^MW`#*ZP@Nqc89{66+2%4HkxTkA*Oi$P6GXNDA+gT&%mGyq2J(tlG@*&bRJ&~5sG zefjSq%-atxZ=n{VxR*WmpUvHfIn@Yz)Q-U#M4C#jMfn8kS*u+}0nUxOgsKbssmS(H zYO}t=M*%#rgz$>!IQM5lt-?bEIi0yF>PLYDc)g{^8QlbpyCXe=&eFQpq4oEy1UzXT zWFrAQyoXlXj!>=4rY{u!wBpwSf` zK!C7$f~@fCT&`V_j>It_3@iGgVdd`u5VU?1aUV?RPMO$#7$`GY2)vkY-zciU#{t_z ztKX2YCcHM}T=>Zh3vw_%p?-#urhA_2Q^QjC$OYS=NuWUZ4N%@o}@mvkEF&_kl! z%5Jp}));ujliK61Nfbi-5qHQ-23BQj8SIp;>2_dKi_6Xi12__R&b$PQ3Nj-1KhZ(prWp4c_tHlHr5$l1lmdryfQr^8(> z2PpM&J{Bu91S8CFf1rbOO*m-O>g-#M9RFFqYg)oQoaX$ywO2sEjkb|){#e(xWOJF7 zV+!k-eP-BK{hv$wTVc)Jy@jn+bt4>vFZ7IP?s5f<9_f6)qdN<}sFHCH;f`h@O)V$H z$|DWi7zoFC1P*4U=&r)#Odur-az-qWxs~-#HoFrR&j!M~ykoe=8{dhn0GFq0R8Pb8 zQ4gblkDfsdg@bCRYzcv1T%7sCU9zFSZj{UiB!{$q=+Es=GPVg}*pT?i0PAw7aWLtX z$s|g>1<0eq$}0`WnFFD?P{Vq0_7G}cYBk)A=1!19L`QNFSoISdR#kS0dgw0Q{qUNu zSHPF6am>yUaBAkkPq&#ce6of;iV-7vcV1OzNq;Ps1)MBF@Q4mX{cMmG5IX?>)XL9^ zGGIpH^PRiHDpsNOfUfGI0_yxfL|~bhP_(=p$VHM9g!1)NT_HrBq!caBGjn5|NI{Sn zqL_t|%#b>2^X~PaE`sf4^l`}89Trdy{U!k~%NUQExFTi;a|T`u!0n)2C1ejyeYMTZ zdrT_@+|#?hwgIm4N&g4#`6KS*A$xPr1q_8jp_UgLmN~s3C~7NMkmX9U~-GcvPaHCqPUbvD8Q^r6ld=MAkOGz>5bqFmgmH@csh)$p3#n4iKR6&-;uqcLLdv2mS=D$K#aTNXORZ@pwsfX(PW5Y-x_p{lD= Jsbuxye*qk(4T}H( literal 0 HcmV?d00001 diff --git a/microsoft-edge/webview2/concepts/intro-diagrams-images/control-sdk-runtime.png b/microsoft-edge/webview2/concepts/intro-diagrams-images/control-sdk-runtime.png new file mode 100644 index 0000000000000000000000000000000000000000..d6f91a7997971a3161fa2ed33812b6639cfd351e GIT binary patch literal 23311 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 u)1_H;mzxmvOqaN(@onR2V^fBYA$P8Hh# literal 0 HcmV?d00001 diff --git a/microsoft-edge/webview2/concepts/intro-diagrams-images/resources.png b/microsoft-edge/webview2/concepts/intro-diagrams-images/resources.png new file mode 100644 index 0000000000000000000000000000000000000000..cc0f88d62207615622ec2b589eb6b1641bf34069 GIT binary patch literal 11173 zcmdsdc{tSV+xHZq$WqA`TInW?EjwimAv?n$YY5r5%t(boD%nG5tTSYpu?(Y0jcrht zu~T7W&wkI?p6|5W&;2`o$MgP<=wt$Q^p9DExsDf%2798t-NABy2ixV zc|=Be;oZm3`*d{8*V$xPSiosIOe_sG`?_-_;=187Xg9rZxSA(_c;8%^cc;ac#AZbj z8+?CvOQLCKRSg9C42__yPE#n9X88X0M0bu_q2K|~TO~dGPR{<0Fr&ZT>^>a`v^;0O zPvye1fUcaNmj;3Eu@eE?)xmTib|zZm>HnU_GMozRhCnu~Ivn&S(SgA>*#WjgD%)Fb z>D6GJK^y>KIEay=oJ3QZBqB&$6HHeY?NBDxyzCY?v1(Bz zOn_{%H5Fq&Y^nX|QMR8y8pL`!?SQ2e)A315Vx?{%`=Or33+Frd`4ML|^pl>I_^%9q z`GTK2FO(rZ^>xY|gM)w=Y2V{{Al6RcJ|QM6?it71bWzT1X|^jOS39V8Cdb3kpeN@5OGU^Y-WwHi7^{>9Pn8LYw5^m3 zmeNCaPT^Tnk+U)%z6%h#J%C$rBaEOmC-|T;KMmxhR&4?*$eSjYT)3 z+X6JU5euV^hpMdW!tf@?tK=h7&jQ11SYQey#j#8sM>qCX&Ceb;O)MD@k^S&g(N`*1 z#3_2ATBPO-)dFq=ZS6lO|Ckny5EFOnUW3bBxz+(&9y8iAFKdeni|fTh1L|HXrHD!^ ze+Y9<>_-S?0!GsRH?E@poi+UR6mg;nzW?XSB;#if7-c$j69a7#gztQEJs8QQ$9PRi z&knDUW{NVafP%)eb8^%osD0vPlkm8p10b$7MHMF3mxu8zr!STF-gh9R1H0i?gO z!fM$9s<+sT)P|w*XVPwNZw>~H#V^Ll%>;(A6Aksiarv*bWLxeFNAX~e5fdkd`>VH8 z7(O2j$r7NiN|H>gq9(4qWc6lp9W(sa+^L}(}e1g z-dfnlvD0ZckB^)ywb6f{f7^t=eY#nLdeg(i#`jjyq4##2{mXta;|jDu1)0>KD~^BI z6vTv`#Z>j@9vfRaiD$_i7F3j}8r7}qE<++7>rWo`7gD`dnkydTHtHq|8LpZNn7STvSfoLsp* zwnHy{+j0H{Guj|!F~9mM@JgWhVxu*r@X=syaQFQB>9njDD(+q_u$iSLFRX^o(01mS zHz&;|MJHkgenfIP*gROy$A3m?y({#GODp*k98U5DkA6rW-_hn=?19O}07i{y^}o@H z7I@A{+%3awjY5pEa^6`3vsb}N75A-uf;_R0Q4wEYcH1qHnL6O+%R;Zm^(|I|=Dd9E zpA3#QG-AhcgS&oM6VF%S6;P+(IoTsr19J>)ttrfjW1ie*;2^%?;jqrYTuvP{-*6>C zh~x8_HRXXVf7#_?BT;`YR~XBiHFvLvh_zwC4yYJ`n_cOv^t$wJm+g&@*3C)Q_6QjzX@;6O-bCx)o}-cYs2qIk-GEHe4yQ9PFF;K>cz8sKpQ ziWgG{%~oF_dg;hF|05gku#%U7^t1El3f&!9afvyGa@3*Ef?MnmuEHlu=O^`I*V}v`jfl*2(_>o`ZPhmYt0! zfqXFPT-v>l4H!~<=OKC>FkNowzcH}4a@syHp$XVFN}RPedc6!&v#2Ap7DDp_nOKusS|Bt8*%C}i}Ha5 ztDml&3pdFhmbc*KGP{Q=OR$Pv$ncp?Sz57~u0V(^)*q!&(8N2X9ntjc%;|4;Lt zwdaRr9m_p62bH?MxM;#=<}&AUS#~z;5wGbt?`a6CD?6Zw}ux&eaqp==# z{8K*p!NRMk3&o8A{S`L_suhYMjyU2~VVkM%U0{Dt5fX#gl;X(8rJM8lk6ThTAdHep z3zBw^y5?q`mov4&bS)f2$w$W*zi;(3*}8e*DZ9Ud|k2G z^A*q87WY3)8h#v>58<(S5oo(}`r#=@)D_I5BTfqaW-Z=g6xW~rz5!K#G1 zsiG|w!eBaw(C(;f49?xhq=G5~PVJmbO-X(wl2r5v5jux9M7%d?w0(>d6Yr(>DZ7KEywJ5(+PRo=nI%McT!A`Sjp|_w-Dt7vKA~>fMffXuZs4y^0XX@n9v;0 zRQ=>Qy@oyd!wW3P^!q##T0fT5Tiz%N_(%L0NbJNI4%*(9eiQAW8t=eB1KPDfQkrCP z1ugy9e>{;&Kl^@u;-Jd661-rvp1P0#Pkwt8NS;7fBdxu-Ko7l~^O=Xq_i3rjfdR;B zMpJ$8?MMgJRv-}qnNL27qPbq4n*4lZ6?470=Zt+|6TdihIjBglKb>i$_+1|&K4rIR zBSxMliuOIqb&q!_1mv(*XfKoN%EaqGwo=bv`4>1W4%I!;6rZ*LaO5ZlamM5;iu?KU zI|mD>X5tv@w0h@lbMQf{|9sy2uKb(E>N|&&FBgY56}hF)@174zjQ_h))gF#P?rsmh z!oZ0Y^`G#p13km!3u$AtGz=t99dHiBpl9R83-@ba>`%vZdkLR#;f2(RGAssubF*1b z;`Y47^kd!&?d; zP7Wdv(0}!V1~7hokcK>dcK;vO_(hPIqXsXFqZ^Ibr6vOtN*b8`a*DXWv)1j?v}?h| zXxmKVFyol{qN-|UP;J_e$8U#1y~IFUgx|2>K&>1Nu(B}O*)YFtT%qxnE8mA9prr&_ zJm{kS0e_GdC=>-RanQ5fz3pYM7F^WtJ{gG44a(Zg`nkxoz1?Ma;icP3o1DK<%a6jJ zYVy>9;p^&u50H=(_#441`-I-!T7B3cg9hNC#TN)6ZwB!1v} znT*9Zd}_8$!Yae%bR%5-Nj+;Tl45dJhNIP74Yz%we6~)Z^wHvg!DjdX4hN~J1`@Iq|m8dG#9nkMfQx6s$ z@Ce*|t$_}T4HiSh**3qka_H&w2`KUp>TEtMK9?^tz&Zyp92FA{rJR`USyFm})JSr_ z(g?eIT@4Lue$|<=A!TjvbvEY>yMg=1Re2v^g92IFKJQfA*VZ!2RcEuGNFy6v*&NbG zva6pP1hWmlG!v7wS5;o$*QuO4eN>vuky_F5C&&Ze<}K*y`l;Ef26^Y!W1)#-!O=tQ zpZA{41w_P2j)irO^`CS~`ZNoGFQ$cExmH#ng}pBxim3hSPZF$OIks-F@jZD9g^_Yq z$Zsj3A&~9K{a*m&v9gtwr+y!h`^p_yj>olbQd#I8_s^6}y?bI{TqH~k=pA%HxMbWc zB#(QPR$SwEQzHQWv+PUMhC2)qN^9~PK#g1$lH=;l4Xf(c&-j=Vc;khU`fBTa<-SA5 zo6bd1T-q5S_W7$R=xz)yZ9^SSCh6O7JGqhKdON*>zGZF-ah4j<`41_>+^vT$xg3-A zHJO=@M#{wALloz@mK*Iqi0c`yXSuNP%E{C@@OAFI$`d>H*;G&WbDI`6)}D4E9XOwd z4t5oLcYJ z2xOr*3e|DLgiZ0XmTUZ}_4PgYd6$@!`W!0C-OQ8?m8L_9$l+Z>|8 zY7L*wY<#qUNUhwxID{I9eWJq-MSR`T1~>JsKO^U0Q$50F+PhbePlO&urUH*W5u>+L zP9!KL37IA;TP~(Gwf85uU7J(v%velupR?bN{e&onw>PS;tugQBvtHN;{yKQ#;U#BY zEV4RwmgKpF!VLd$R_LxM{o3Q%H9j@SM%xnXqtnAcm#No+XT495GAp-^@OX;#)t1>n zcL;O(F?X>WM2pnRJW2ui+aoT0QlVl}6XV6jiZWyQu_N<|wGSO&71VUH+AUGlN@|bw zzFz{>8wpcg?4MmOe{#`ZO<5)R!ncvYo2Wpyo=aQs5Ne8|A=`6CMETlLmC6&TM#?ss zrBB=!wF`UtQb!j}MM|_@U_#>?GW5j7VhW1lb2G9d&@LGch2$lVIA2ygw{HYs`gHF_ zL7T0*;%@il`{G-2s+;Kxw~mg4-g{n8>Q8O8@-!!O%8|Xfkd2!W*VL|$IioJsT+*83 z-OlsStbZxqo<%~7yVehv7MHN{Pvt|uzq%Yn`7k^qf46B~=S6IAVUb4t=ICiv?B3B+ zVZkJ!?)HNzRio~3@(aFIR zs3u(hglM16Q)D&LNZ5mv=@{ZZS1+tlj(d>3oWM>LrFI*^Wag4&Rd20GL8*0QSl)=0 zRUg!tdV=th04eoz5+AEiwzphBH9WaHq&U6nhnDK>sZt#XGgc{tnFVHH;}in-nSr%B zV3+=-87a6zE(Q1I1mKp!kWIo~exAp6k6b8CvRDinP{o|DY|j(V8-<2`s~{1QRWQRMenxME7W+{KVoe>qp5vo~S7i%ND-q8GR(iF7!$9_qmM9 z&G*xVi^5#8Nx8^B$&cdNZ`FhFEN}Vo4eI<0P?A-!^P6~{)5~(ZS&)g3Iv<#;oXQl~ zBuS9|GSjAF8!y=b)ueNoSq~rkw7E|BRY4>yV>2GX%zU9-UW4h*fHHnZ2VDMu)TFx-P;oyh35{j>I?MUiwThH_)kl^?~0 zv#Vl%n80Y8wSEDBL`%TFoL)#V{>Zwu(*njSdGgOV!DSC=TD3}I^r^QTk2#?petTV? z96nzKF)A!5hSs}(2=MSO9wmP8OmN9w%+Q5u?D@+lSbeqKLjM|1#P)Ft1EqT4*+>3W zMGZ)zB%@|ZpYe#b?`cD4>-pUHV)L5%otswXjB)0(Va=5v?w5)d3qn#q*&_##1EN|< zU!Elb$PYl{mPL0wAS`W4XODZ_J^!`OXHv6q7$Y+~-{W9rotWg;)Z}G&^O8CyVGJVS zNe=R?v*9Cr>iz5<2}!Q^ZgklrEql$@TKap>CB&J~k<-NiC_wYvMaE$Gb2+h)=`8U> zs|kJz0;|w+k4tJTVK=AV_uyGMtgmeGT0G?rjCb=nHy|K_4wg=Aq`IJSl{l*{zfzgt z>ABk*dxo8(=0sy^qF9x0Ki5z0up;6QZpk~YBC5~Xwi5=Nu>{jg+g)%4XO{B9|JLxW zJZ-*`dZMh!XR-0dPxMiKOeRg50zYH#_Uz|tv||8ZxzJb{&14#Nrf~!swV{prPmi-? z(%{tD!s;f_`}MVMwSDS*`A^j5%ZRt#BbTo=Mb2p<;ZQ`O2AljI-&Mme@%WdocMqMe zY}(($dJR~92k;vXGxk zn(Oh3*3=8M9n(RS#}`Vz(d)3iBQD{#7|%)K`WQRnL~bwMj2g1Dsu8J6LzW78voc3` z{(66enSAWL=^J8kUXp8FnYA*Mt!-2!Kum;jKGqrg0B2`&rLl3nY%Mr{`g<7G^P^sj zdq{@IlCbxAs$x>2l=7ew;C3247=?i2`b0be+LTTHAi0_7=1jwIcSEl29~XzXO^s+`vdf#_CnZidK%L%ucVNBM}fG~ z&JesM)6BIWjaEh(u-Q;r^ zH*XT|Hv&STxzNT4JkdN zBYZ({dp=gdGbC_ zP2B$#%D0E#neIq6J6an(0pHL1iNZ0k4cqlvt>diWO)7r*`^d;51~+kdGC1JdozfIS?c z_;zClFlo^X`5eyQ~=jqI{SMLxOiH2T`u+6QM$booEzlu z=BO^X2`dQ#wBe-KN7os2%*P9VQM|?(La}smB7x7-$is}UrR3|o8?R)L0c8ux*D=dN z(3k)lL%H$-m@$hdhjg0gqV|?b`&$=XbQd{4n;C!iMF`??X~W66L&UjKYLG;3#e-%$ zJN<<3w()dPl-62tg%`osNtdG*<8>vG%v$_+(Pw zDtjsVkoV>|M7J_R?szX65!Bm%W=Q5b5IAv8&jSkgCDn-oVKwP}gZ}5z66Yr3ryvqB z8Dy0Z@h{WpzF5#iq5%HXm7(y}w-T1CP~)E@&+FEwn|CQ5641cgX^dWmB`IkVf&$e2 zbJl@RqtmyrN zh14BHeP2c08(`l38W64_Md*sJDbE>M_$aq%AYzfjK&}kk>8V_0NY(9okIGPS2)}@x zKVc;Mthb-HBu@6W$x>kH*xZOft<}7r#}5xk<6>8}#HNZUyE%#pvd9`!w88Q>v)6WN zss%Za!d&ESZa2>83k%{l@z>;1m+?1BFBj)Vu*s@JmsGB~KWpOu_SoUcO_*3aqiWNE zjmd7o#xNgbu$I&^n|WoA)r7=6Yyu3Qe$6@=p4_ki6EEKpH6?Zg-g|Y+TyCsBqr?k#$0{ zIAD@kIQN^uT3KW0Wr?+Z@_p`!BbN03?7iW+Vv4f7r$wkr>t_YD^xjJxM-9lFIZ{0f=_ds_QzzQUh1?@a~s{V9Ug3 zbRzwig8=2eomV!YVCasI&(H?04uK)Nzc-2D_}Wuckg;CV%ZERuwflL^=lG*UEDn^I zIIFWU%;V!*K7Mk`Qs+gTV0JcPK$62}s_V7&(*E~#vA~5b)4#;_EUA(9&c)<~@+uX7 zOB)m-gn8?k*!wc#7SH zG|;;)5~fAVZMBtGoBC$`cs|+NeLw911u*-?l+>#@yXl8*gql~Zv%~()GW9qGwpqp% z%+PYr@Kk!(Jvm{q)yNe#r!9SVjD^_?*3zvSOJMI7^B1JJf9i#FfX}9VdcLfMT1uix{StRDithd1!HZ7% zXG<@oXe~7D0%5bB*%32pzf`xcJa%Z}Ee=+HA=>CYZweMsCu*5mNkJB>g9Q;2@x!Ob zS)A-!jW@iG`IHJsUr#E+RCMTdn2}2AZhnK|E4dt9o#r6d)mHpa+OZuK85o?n;18U< zX6$saNK-c;hgV&{$X9uWZ8nBQ(+FBi9$a{ux@>r-n)-1?*Qac0CnH( zg! z?Ym1Dxu0@>(V4PiJW?NC$mn*(_$dTi%}XS`CYn`ek60%ItT?$-)5pCCgIyTT{Zvs) zR5Jf&`FwbFTIyP->LqQ~fvtF-Leal8Ne1AU;(t-^{{6?4_Oe}j<3X1lOF`SlZ93e~ zPg2^M$eBR|hdqEpbiiYnuh`l*!MuJcyhD8Wy9RD7uAty|G)=jYgE#=xJKCvy?LCL3 zJ?!ouY^c$>u=D!2QgBk5EmmS;{`k6vmuP7VEBh(^@fauWf)J!hmZT%dNq$$^1$V{ZoN+~YYHLU1A(qYP)RRzOi`1GrRozh;!JxXX2rZYf{iDAw_89ULEx@st zl@zF8-g-4yhgz3Y0C)196uIwwrm^KCalN_$iEC^%`j-i-M9k1;fMYJ9q()#$@fV&g zWOWtg(ySfC8$-0X(c-h(-d$U%C!d*Fv=_@C_kSE`?at}K^)*}e?zQghiUzcnnWG{U zVmr_io!mYE2=X+?%EQ5>@yBjD>O4P%S#Ps%lhBit#1VQ2tC8x&Kg3-TfjpAh*;e~K z6*qcy39HdsNFz5f7|tyP=Kl+sn=)4YA_hf&BL>>WG-5#Lyqy^U^=K@M;m+0LvKS#+ zWpm$Y3!o%EkUjJ%nm5jUDKnJx8H_)_0~f z9%>zbbPCKWAy)qtDQPZYVN_h!oeyV$IW(l^g!@m~2M zgB?`elns~c)>0(FpP1p;$-yR7C3qvzr zv~t6Tgx3g1o*yfqQG|X-UY(4XbcsV3hU;U2NKfO<-EFqowA2Ak^EEGn)R?#)#M+=# zZ?|9IFTboYN-O$<1&yUF6T}V;>`8v+|9zQ@oVl9eaJl74lQYczXJ_E#tDs@dk{Ea= z=iSB@iY*0uz9XykE0K^1n=%CZ=Q9Pi?EB{Y7Iv*zgbz_yfI<3!2o|&0h7X{|= feF+EO-`n3WtdO7>nFIn?YeBkNhMHyS4pILBR6Irc literal 0 HcmV?d00001 diff --git a/microsoft-edge/webview2/concepts/intro-diagrams-images/web-native.png b/microsoft-edge/webview2/concepts/intro-diagrams-images/web-native.png new file mode 100644 index 0000000000000000000000000000000000000000..ff39c4aa392e25050682c17c0f6be3d445f23b73 GIT binary patch literal 15714 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 X+#Vlb+NLP|0nTU6pRWDwYRdlwpWBWi literal 0 HcmV?d00001 diff --git a/microsoft-edge/webview2/concepts/intro-diagrams-images/what-webview.png b/microsoft-edge/webview2/concepts/intro-diagrams-images/what-webview.png new file mode 100644 index 0000000000000000000000000000000000000000..f41954bfcc3bd89e547e1755e1fa83fd4d2e0d08 GIT binary patch literal 72533 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 literal 0 HcmV?d00001 diff --git a/microsoft-edge/webview2/concepts/intro-diagrams.md b/microsoft-edge/webview2/concepts/intro-diagrams.md new file mode 100644 index 0000000000..8b99056a98 --- /dev/null +++ b/microsoft-edge/webview2/concepts/intro-diagrams.md @@ -0,0 +1,324 @@ +--- +title: Intro diagrams about WebView2 +description: Host web content in your Win32, .NET, UWP apps with the Microsoft Edge WebView2 control. +author: MSEdgeTeam +ms.author: msedgedevrel +ms.topic: conceptual +ms.prod: microsoft-edge +ms.localizationpriority: high +ms.technology: webview +ms.date: 04/06/2023 +--- +# Intro diagrams about WebView2 + + + +## High-level view of app development that includes WebView2 control instances + +Developing a WebView2 app has the following high-level areas: +* Dev machine +* Distribute the app and Runtime +* User machine +* Resources + + + +#### Diagram: Full diagram of WebView2 + +![Full diagram of WebView2](./index-images/full-diagram.png) + +Main boxes in the full diagram of WebView2: +* Dev machine +* Distribute the Runtime +* User machine +* Resources + +Details of the Dev machine: +* Visual Studio project + * Layout designer + * WebView2 control instances + * Native control instances + * SDK + * Platform APIs + * `AddHostObjectToScript` + * JavaScript APIs (WebView2Script package) +* Runtime + +Details of Distribute the Runtime: +* Evergreen + * Link to the Evergreen Runtime bootstrapper + * Package the Evergreen Runtime bootstrapper + * Package the Evergreen Runtime standalone installer +* Package a fixed-version Runtime + +Details of the User machine: +* Host app + * WebView2 native-side code + * WebView2 web-side code + * WebView2 control instances + * Non-WebView2 native-side code + * Non-WebView2 web-side code + * Native control instances +* Runtime + +Resources include: +* Docs +* Support +* Samples repo +* Announcements repo +* Feedback repo + + + +## Top-level WebView2 components + +| Shorthand term | Complete term | +|---|---| +| _App_ | Any app, for any framework or platform, that includes an instance of the WebView2 control. An app can have areas that use a WebView2 control instance, and other areas that don't use the control. | +| _SDK_ | The WebView2 SDK. When part of your app uses WebView2, that code can call these APIs in conjunction with instances of the WebView2 control. The Release SDK ships to users, and contains only stable APIs. The Prerelease SDK is only used by Devs, and contains some experimental APIs. | +| _Control_ | An instance of the WebView2 control. In an app, typically appears as a rectangular area than contains web content. | +| _Runtime_ | The WebView2 Runtime, which is a browser engine. Installed on user machines, as well as Dev and test machines. | +| _Preview channel_ | A preview channel of Microsoft Edge, either Beta (near-stable), Dev, or Canary (the very latest build; daily). For Dev and test machines only, not user machines. | + + + +## The WebView2 control, SDK, and Runtime + +The WebView2 control, WebView2 SDK, and WebView2 Runtime have the following roles: + +| Component | Role | +|:---|:---| +| WebView2 SDK | Provides APIs for developers to use in an app's code. Used by Dev locally while coding the app. Two versions: Prerelease SDK for local Dev testing, and Release SDK for developing shippable code for users. | +| WebView2 control | You embed the WebView2 control in the app. Hosts the Runtime; serves as a visible area to display web content. | +| WebView2 Runtime | On Dev's test machine and on user machines. Or, instead of using the Runtime, Dev can use a preview channel of Microsoft Edge for local testing, when using the Prerelease SDK. | + + + +#### Diagram: Relationship between the WebView2 control, SDK, and Runtime + +![Diagram: Relationship between the WebView2 control, SDK, and Runtime](./index-images/control-sdk-runtime.png) + +Control: +* WebView2 control - in the app layout; hosts the Runtime. + +SDK: +* WebView2 SDK - used by Dev while coding. Either: + * Prerelease SDK (Dev only; includes experimental APIs for Dev testing). + * Release SDK. + +Runtime: +* WebView2 Runtime - a browser for use as a component of an app; on user machines. Either: + * Preview channel of Microsoft Edge (Dev only) + * Runtime + + + +#### Diagram: WebView2 control, Runtime, and SDK + +![WebView2 control, Runtime, and SDK](./index-images/control-runtime-sdk.png) + + +This diagram shows the following outline: + +Release SDK: +* .NET/C# APIs +* WinRT/C# +* Win32/C++ +* WebView2Script package (JavaScript APIs) + +Prerelease SDK: +* .NET/C# APIs, including experimental APIs +* WinRT/C# APIs, including experimental APIs +* Win32/C++ APIs, including experimental APIs +* WebView2Script package (JavaScript APIs) + +Runtime (for release) or Browser (for Prerelease) +* WebView2Script package (JavaScript APIs) + + +Runtime (for Release SDK) - WebView2Script package (JavaScript APIs) +Browser (for Prerelease SDK) - WebView2Script package (JavaScript APIs) + + +You periodically download the latest SDK from NuGet. NuGet links are in [Release Notes for the WebView2 SDK](./release-notes.md). + +The SDK includes the JavaScript API, which is in the `WebView2Script` package. + +See also: +* [WebView2 API Reference](./webview2-api-reference.md) + + + +## Design architecture of a WebView2 app + +A host app contains the following categories of code and components: +* Native-side code calls platform APIs and WebView2 APIs +* WebView2 control instance +* Native-side code calls platform APIs and WebView2 APIs +* Web-side JavaScript code calls WebView2Script APIs & exposed native-side APIs + + + +#### Diagram: Design architecture of a WebView2 app + +![Design architecture of a WebView2 app](./index-images/app-design.png) + +Categories of code: +* Native-side WebView2 code, calls WebView2 APIs and platform APIs. +* Web-side code (JavaScript), calls WebView2Script APIs & exposed native-side APIs. +* Native-side non-WebView2 code, calls platform APIs and native controls. +* Web-side non-WebView2 code. + +Two-way code: +* Call web-side code from native-side code +* Call native-side code from web-side code + + + +## Development machine vs. user machine + +Here are the differences between the Dev machine and User machine, for which components are used. + + + +#### Diagram: App on the Development machine and user machine + +![App on the Development machine and user machine](./index-images/dev-side-user-side.png) + +| Component | Dev machine | User machine | +|---|---|---| +| Runtime | A Preview channel of Microsoft Edge, or the Runtime that's part of the SDK. | Runtime (downloaded via bootstrapper, or packaged with app); Microsoft Edge isn't used. | +| Working environment | Visual Studio project that has the SDK package installed. Layout designer includes WebView control areas & native, non-WebView control areas. | The App (including WebView control areas, and native, non-WebView control areas). | +| Activity | Dev works with the APIs in code (experimental APIs or stable APIs). | User machine runs app. The WebView2 parts of the app (instances of the WebView2 control) use the Runtime to display webpage functionality. | +| User interface environment | Visual Studio (layout designer includes WebView control areas & native, non-WebView control areas). | The App (including WebView control areas, and native, non-WebView control areas). | +| SDK | Prerelease SDK (experimental APIs) or Release SDK (stable APIs). | No SDK; just the Runtime containing the executable stable APIs. | +| Control | Placed on layout designer in Visual Studio. | Areas (regions) of the app containing web content. | + + + +## Ways to distribute, install, and update the Runtime on the user's machine + +There are several ways to distribute the WebView2 Runtime with your app: + + + +#### Diagram: Four approaches to distribute the WebView2 Runtime + +![Diagram: Four approaches to distribute the WebView2 Runtime](./index-images/distribute-runtime.png) + +| Name of distribution approach | Description | Notes | +|---|---|---| +| Link to the Evergreen Runtime bootstrapper | In your app's installer, link to the Evergreen Runtime bootstrapper. Have your app's installer use this link to programmatically download and install the Evergreen bootstrapper onto the user's machine. Then invoke the bootstrapper to install the appropriate Runtime for the user's device. | For users who have an online connection. The Evergreen bootstrapper is a tiny installer that installs the correct Runtime for the user's CPU, using an internet connection. | +| Package the Evergreen Runtime bootstrapper | Download the Evergreen bootstrapper to your Dev machine. Package and distribute the Evergreen bootstrapper with your app installer. Then your app installer invokes the bootstrapper to install the Runtime on the user's machine. | For users who don't have a reliable connection to the bootstrapper CDN site. | +| Package the Evergreen Runtime standalone installer | Download the Evergreen standalone installer to your Dev machine, and package it with your app. Package the Evergreen standalone installer with your app's installer. Your app's installer then invokes the Evergreen standalone installer to install the Runtime on the user's device. | For offline users. A large, standalone Evergreen Runtime installer for offline users, that includes the Evergreen Runtime. | +| Package a fixed-version Runtime | Download a version-specific, CPU-specific Runtime to your Dev machine. Package and distribute the fixed-version Runtime with your app's installer. Your app's installer installs the specific fixed-version Runtime on the user's machine. | Specialty case, for when you need specific version of the APIs; avoids testing whether latest APIs are available. | + +The above approaches are listed in the same sequence as in the [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section) section of the **Microsoft Edge WebView2** page, from lightweight to heavyweight approaches. Favor the lightweight approaches; use a heavyweight approach if required by a specialized scenario. + +_Your app's installer_ means your app's installer/updater, which can be separate from your app, or a part of your app. + +See also: +* [Understanding the options at the Runtime download page](./concepts/distribution.md#understanding-the-options-at-the-runtime-download-page) in _Distribute your app and the WebView2 Runtime_. + + + +## Host app, WebView2 control, and HTTP server + +The WebView2 control acts as an intermediary for communication between the host app and the HTTP server. + + + +#### Diagram: Host app, WebView2 control, and HTTP server + +![Host app, WebView2 control, and HTTP server](./index-images/hostapp-wv2ctrl-httpserver.png) + + + +## Prerelease SDK with preview browser channel, or Release SDK with Runtime + +| Version | Renderer platform | Description | +|:---|:---|:---| +| Prerelease SDK | A preview channel of Microsoft Edge (Beta, Dev, or Canary) | For experimenting and testing your app against upcoming changes, on your Dev machines. | +| Release SDK | The WebView2 Runtime | For shipping your app to end users. | + +* A Prerelease version of the WebView2 SDK uses a preview channel of Microsoft Edge (Beta, Dev, or Canary). +* A Release version of the WebView2 SDK uses the WebView2 Runtime. + + +See also: +* [Understanding the options at the Runtime download page](./concepts/distribution.md#understanding-the-options-at-the-runtime-download-page) in _Distribute your app and the WebView2 Runtime_. +* [Prerelease and release SDKs for WebView2](./concepts/versioning.md) +* [Distribute your app and the WebView2 Runtime](./concepts/distribution.md) + + + +## Using a Prerelease SDK and experimental APIs with a Preview channel of Microsoft Edge + +To develop the prerelease version of your app using experimental APIs, or to test your app against upcoming SDK changes: + +* On your Dev machine, in the Visual Studio project, install a **Prerelease** version of the `Microsoft.Web.WebView2` SDK NuGet package. Write code that uses the **experimental** APIs (and stable APIs). +* On your Dev machine, install and use a preview channel of Microsoft Edge. + +To distribute your prerelease app to your test machine: +* On your test machine, install a preview channel of Microsoft Edge. + +See also: +* [Understand the different WebView2 SDK versions](./concepts/versioning.md) - Either use a prerelease SDK with a preview channel of Microsoft Edge, or use a release SDK with the WebView2 Runtime. + + + +## Using a Release SDK and stable APIs with the Runtime + +To develop the release version of your app: +* On your Dev machine, in the Visual Studio project, install a **Release** version of the `Microsoft.Web.WebView2` SDK NuGet package. Write code that uses only the **stable** APIs. +* On your Dev machine, use the WebView2 Runtime (part of the SDK package). + +The WebView2 Runtime is like a browser engine for use as a component in your app. + +There are several ways to distribute your app and the Runtime to users. See [Ways to distribute, install, and update the Runtime on the user's machine](#ways-to-distribute-install-and-update-the-runtime-on-the-users-machine) above. + + +See also: +* [Understand the different WebView2 SDK versions](./concepts/versioning.md) - Either use a prerelease SDK with a preview channel of Microsoft Edge, or use a release SDK with the WebView2 Runtime. + + + +## How the WebView2 SDK is laid out in relation to how the WebView2 Runtime is laid out + +todo: what's the intention here? + + + +## Differences in the Runtime and the SDK across the frameworks + +todo + + + +## Resources + +* Docs - the present article is the main page for WebView2 docs. +* Support - see [Contact the WebView2 Team](./contact.md). +* Runtime installer download page - see [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section). +* NuGet SDK package download site - see [Microsoft.Web.WebView2](https://www.nuget.org/packages/Microsoft.Web.WebView2) at NuGet.org. +* GitHub Repos + * [WebView2Samples repo](https://github.com/MicrosoftEdge/WebView2Samples) - contains completed Getting Started article projects (minimal code) and code-rich Samples. + * [WebView2Announcements repo](https://github.com/MicrosoftEdge/WebView2Announcements) + * [WebView2Feedback repo](https://github.com/MicrosoftEdge/WebView2Feedback) + + + +#### Diagram: Resources + +![Diagram: Resources](./index-images/resources.png) + + + +## See also + +* [Overview of WebView2 features and APIs](concepts/overview-features-apis.md) +* [Getting Started tutorials](get-started/get-started.md) +* [Distribute your app and the WebView2 Runtime](concepts/distribution.md) + +developer.microsoft.com: +* [Microsoft Edge WebView2](https://developer.microsoft.com/microsoft-edge/webview2) - initial introduction to WebView2 features at developer.microsoft.com. diff --git a/microsoft-edge/webview2/index.md b/microsoft-edge/webview2/index.md index a82ec09464..7bfbb5079f 100644 --- a/microsoft-edge/webview2/index.md +++ b/microsoft-edge/webview2/index.md @@ -121,170 +121,6 @@ Resources include: * Feedback repo - -## Top-level WebView2 components - -| Shorthand term | Complete term | -|---|---| -| _App_ | Any app, for any framework or platform, that includes an instance of the WebView2 control. An app can have areas that use a WebView2 control instance, and other areas that don't use the control. | -| _SDK_ | The WebView2 SDK. When part of your app uses WebView2, that code can call these APIs in conjunction with instances of the WebView2 control. The Release SDK ships to users, and contains only stable APIs. The Prerelease SDK is only used by Devs, and contains some experimental APIs. | -| _Control_ | An instance of the WebView2 control. In an app, typically appears as a rectangular area than contains web content. | -| _Runtime_ | The WebView2 Runtime, which is a browser engine. Installed on user machines, as well as Dev and test machines. | -| _Preview channel_ | A preview channel of Microsoft Edge, either Beta (near-stable), Dev, or Canary (the very latest build; daily). For Dev and test machines only, not user machines. | - - - -## The WebView2 control, SDK, and Runtime - -The WebView2 control, WebView2 SDK, and WebView2 Runtime have the following roles: - -| Component | Role | -|:---|:---| -| WebView2 SDK | Provides APIs for developers to use in an app's code. Used by Dev locally while coding the app. Two versions: Prerelease SDK for local Dev testing, and Release SDK for developing shippable code for users. | -| WebView2 control | You embed the WebView2 control in the app. Hosts the Runtime; serves as a visible area to display web content. | -| WebView2 Runtime | On Dev's test machine and on user machines. Or, instead of using the Runtime, Dev can use a preview channel of Microsoft Edge for local testing, when using the Prerelease SDK. | - - - -#### Diagram: Relationship between the WebView2 control, SDK, and Runtime - -![Diagram: Relationship between the WebView2 control, SDK, and Runtime](./index-images/control-sdk-runtime.png) - -Control: -* WebView2 control - in the app layout; hosts the Runtime. - -SDK: -* WebView2 SDK - used by Dev while coding. Either: - * Prerelease SDK (Dev only; includes experimental APIs for Dev testing). - * Release SDK. - -Runtime: -* WebView2 Runtime - a browser for use as a component of an app; on user machines. Either: - * Preview channel of Microsoft Edge (Dev only) - * Runtime - - - -#### Diagram: WebView2 control, Runtime, and SDK - -![WebView2 control, Runtime, and SDK](./index-images/control-runtime-sdk.png) - - -This diagram shows the following outline: - -Release SDK: -* .NET/C# APIs -* WinRT/C# -* Win32/C++ -* WebView2Script package (JavaScript APIs) - -Prerelease SDK: -* .NET/C# APIs, including experimental APIs -* WinRT/C# APIs, including experimental APIs -* Win32/C++ APIs, including experimental APIs -* WebView2Script package (JavaScript APIs) - -Runtime (for release) or Browser (for Prerelease) -* WebView2Script package (JavaScript APIs) - - -Runtime (for Release SDK) - WebView2Script package (JavaScript APIs) -Browser (for Prerelease SDK) - WebView2Script package (JavaScript APIs) - - -You periodically download the latest SDK from NuGet. NuGet links are in [Release Notes for the WebView2 SDK](./release-notes.md). - -The SDK includes the JavaScript API, which is in the `WebView2Script` package. - -See also: -* [WebView2 API Reference](./webview2-api-reference.md) - - - -## Design architecture of a WebView2 app - -A host app contains the following categories of code and components: -* Native-side code calls platform APIs and WebView2 APIs -* WebView2 control instance -* Native-side code calls platform APIs and WebView2 APIs -* Web-side JavaScript code calls WebView2Script APIs & exposed native-side APIs - - - -#### Diagram: Design architecture of a WebView2 app - -![Design architecture of a WebView2 app](./index-images/app-design.png) - -Categories of code: -* Native-side WebView2 code, calls WebView2 APIs and platform APIs. -* Web-side code (JavaScript), calls WebView2Script APIs & exposed native-side APIs. -* Native-side non-WebView2 code, calls platform APIs and native controls. -* Web-side non-WebView2 code. - -Two-way code: -* Call web-side code from native-side code -* Call native-side code from web-side code - - - -## Development machine vs. user machine - -Here are the differences between the Dev machine and User machine, for which components are used. - - - -#### Diagram: App on the Development machine and user machine - -![App on the Development machine and user machine](./index-images/dev-side-user-side.png) - -| Component | Dev machine | User machine | -|---|---|---| -| Runtime | A Preview channel of Microsoft Edge, or the Runtime that's part of the SDK. | Runtime (downloaded via bootstrapper, or packaged with app); Microsoft Edge isn't used. | -| Working environment | Visual Studio project that has the SDK package installed. Layout designer includes WebView control areas & native, non-WebView control areas. | The App (including WebView control areas, and native, non-WebView control areas). | -| Activity | Dev works with the APIs in code (experimental APIs or stable APIs). | User machine runs app. The WebView2 parts of the app (instances of the WebView2 control) use the Runtime to display webpage functionality. | -| User interface environment | Visual Studio (layout designer includes WebView control areas & native, non-WebView control areas). | The App (including WebView control areas, and native, non-WebView control areas). | -| SDK | Prerelease SDK (experimental APIs) or Release SDK (stable APIs). | No SDK; just the Runtime containing the executable stable APIs. | -| Control | Placed on layout designer in Visual Studio. | Areas (regions) of the app containing web content. | - - - -## Ways to distribute, install, and update the Runtime on the user's machine - -There are several ways to distribute the WebView2 Runtime with your app: - - - -#### Diagram: Four approaches to distribute the WebView2 Runtime - -![Diagram: Four approaches to distribute the WebView2 Runtime](./index-images/distribute-runtime.png) - -| Name of distribution approach | Description | Notes | -|---|---|---| -| Link to the Evergreen Runtime bootstrapper | In your app's installer, link to the Evergreen Runtime bootstrapper. Have your app's installer use this link to programmatically download and install the Evergreen bootstrapper onto the user's machine. Then invoke the bootstrapper to install the appropriate Runtime for the user's device. | For users who have an online connection. The Evergreen bootstrapper is a tiny installer that installs the correct Runtime for the user's CPU, using an internet connection. | -| Package the Evergreen Runtime bootstrapper | Download the Evergreen bootstrapper to your Dev machine. Package and distribute the Evergreen bootstrapper with your app installer. Then your app installer invokes the bootstrapper to install the Runtime on the user's machine. | For users who don't have a reliable connection to the bootstrapper CDN site. | -| Package the Evergreen Runtime standalone installer | Download the Evergreen standalone installer to your Dev machine, and package it with your app. Package the Evergreen standalone installer with your app's installer. Your app's installer then invokes the Evergreen standalone installer to install the Runtime on the user's device. | For offline users. A large, standalone Evergreen Runtime installer for offline users, that includes the Evergreen Runtime. | -| Package a fixed-version Runtime | Download a version-specific, CPU-specific Runtime to your Dev machine. Package and distribute the fixed-version Runtime with your app's installer. Your app's installer installs the specific fixed-version Runtime on the user's machine. | Specialty case, for when you need specific version of the APIs; avoids testing whether latest APIs are available. | - -The above approaches are listed in the same sequence as in the [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section) section of the **Microsoft Edge WebView2** page, from lightweight to heavyweight approaches. Favor the lightweight approaches; use a heavyweight approach if required by a specialized scenario. - -_Your app's installer_ means your app's installer/updater, which can be separate from your app, or a part of your app. - -See also: -* [Understanding the options at the Runtime download page](./concepts/distribution.md#understanding-the-options-at-the-runtime-download-page) in _Distribute your app and the WebView2 Runtime_. - - - -## Host app, WebView2 control, and HTTP server - -The WebView2 control acts as an intermediary for communication between the host app and the HTTP server. - - - -#### Diagram: Host app, WebView2 control, and HTTP server - -![Host app, WebView2 control, and HTTP server](./index-images/hostapp-wv2ctrl-httpserver.png) - - ## Supported platforms @@ -333,90 +169,11 @@ See also: * [Microsoft Edge and WebView2 ending support for Windows 7 and Windows 8/8.1](https://blogs.windows.com/msedgedev/2022/12/09/microsoft-edge-and-webview2-ending-support-for-windows-7-and-windows-8-8-1/) - -## Prerelease SDK with preview browser channel, or Release SDK with Runtime - -| Version | Renderer platform | Description | -|:---|:---|:---| -| Prerelease SDK | A preview channel of Microsoft Edge (Beta, Dev, or Canary) | For experimenting and testing your app against upcoming changes, on your Dev machines. | -| Release SDK | The WebView2 Runtime | For shipping your app to end users. | - -* A Prerelease version of the WebView2 SDK uses a preview channel of Microsoft Edge (Beta, Dev, or Canary). -* A Release version of the WebView2 SDK uses the WebView2 Runtime. - - -See also: -* [Understanding the options at the Runtime download page](./concepts/distribution.md#understanding-the-options-at-the-runtime-download-page) in _Distribute your app and the WebView2 Runtime_. -* [Prerelease and release SDKs for WebView2](./concepts/versioning.md) -* [Distribute your app and the WebView2 Runtime](./concepts/distribution.md) - - - -## Using a Prerelease SDK and experimental APIs with a Preview channel of Microsoft Edge - -To develop the prerelease version of your app using experimental APIs, or to test your app against upcoming SDK changes: - -* On your Dev machine, in the Visual Studio project, install a **Prerelease** version of the `Microsoft.Web.WebView2` SDK NuGet package. Write code that uses the **experimental** APIs (and stable APIs). -* On your Dev machine, install and use a preview channel of Microsoft Edge. - -To distribute your prerelease app to your test machine: -* On your test machine, install a preview channel of Microsoft Edge. - -See also: -* [Understand the different WebView2 SDK versions](./concepts/versioning.md) - Either use a prerelease SDK with a preview channel of Microsoft Edge, or use a release SDK with the WebView2 Runtime. - - - -## Using a Release SDK and stable APIs with the Runtime - -To develop the release version of your app: -* On your Dev machine, in the Visual Studio project, install a **Release** version of the `Microsoft.Web.WebView2` SDK NuGet package. Write code that uses only the **stable** APIs. -* On your Dev machine, use the WebView2 Runtime (part of the SDK package). - -The WebView2 Runtime is like a browser engine for use as a component in your app. - -There are several ways to distribute your app and the Runtime to users. See [Ways to distribute, install, and update the Runtime on the user's machine](#ways-to-distribute-install-and-update-the-runtime-on-the-users-machine) above. - - -See also: -* [Understand the different WebView2 SDK versions](./concepts/versioning.md) - Either use a prerelease SDK with a preview channel of Microsoft Edge, or use a release SDK with the WebView2 Runtime. - - - -## How the WebView2 SDK is laid out in relation to how the WebView2 Runtime is laid out - -todo: what's the intention here? - - - -## Differences in the Runtime and the SDK across the frameworks - -todo - - - -## Resources - -* Docs - the present article is the main page for WebView2 docs. -* Support - see [Contact the WebView2 Team](./contact.md). -* Runtime installer download page - see [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section). -* NuGet SDK package download site - see [Microsoft.Web.WebView2](https://www.nuget.org/packages/Microsoft.Web.WebView2) at NuGet.org. -* GitHub Repos - * [WebView2Samples repo](https://github.com/MicrosoftEdge/WebView2Samples) - contains completed Getting Started article projects (minimal code) and code-rich Samples. - * [WebView2Announcements repo](https://github.com/MicrosoftEdge/WebView2Announcements) - * [WebView2Feedback repo](https://github.com/MicrosoftEdge/WebView2Feedback) - - - -#### Diagram: Resources - -![Diagram: Resources](./index-images/resources.png) - - ## See also -* [Overview of WebView2 features and APIs](concepts/overview-features-apis.md) +* [Intro diagrams about WebView2](./concepts/intro-diagrams.md) +* [Overview of WebView2 features and APIs](./concepts/overview-features-apis.md) * [Getting Started tutorials](get-started/get-started.md) * [Distribute your app and the WebView2 Runtime](concepts/distribution.md) From 053208da905252215e2b543a3be20b57e781afb3 Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Mon, 17 Apr 2023 20:52:35 -0700 Subject: [PATCH 20/31] Moved content to arch page --- microsoft-edge/toc.yml | 8 +-- .../app-design.png | Bin .../control-runtime-sdk.png | Bin .../control-sdk-runtime.png | Bin .../dev-side-user-side.png | Bin .../distribute-runtime.png | Bin .../hostapp-wv2ctrl-httpserver.png | Bin .../resources.png | Bin ...o-diagrams.md => platform-architecture.md} | 51 ++++++-------- .../webview2/index-images/full-diagram.png | Bin 39647 -> 39349 bytes microsoft-edge/webview2/index.md | 63 ++++-------------- 11 files changed, 39 insertions(+), 83 deletions(-) rename microsoft-edge/webview2/{index-images => concepts/platform-architecture-images}/app-design.png (100%) rename microsoft-edge/webview2/{index-images => concepts/platform-architecture-images}/control-runtime-sdk.png (100%) rename microsoft-edge/webview2/{index-images => concepts/platform-architecture-images}/control-sdk-runtime.png (100%) rename microsoft-edge/webview2/{index-images => concepts/platform-architecture-images}/dev-side-user-side.png (100%) rename microsoft-edge/webview2/{index-images => concepts/platform-architecture-images}/distribute-runtime.png (100%) rename microsoft-edge/webview2/{index-images => concepts/platform-architecture-images}/hostapp-wv2ctrl-httpserver.png (100%) rename microsoft-edge/webview2/{index-images => concepts/platform-architecture-images}/resources.png (100%) rename microsoft-edge/webview2/concepts/{intro-diagrams.md => platform-architecture.md} (86%) diff --git a/microsoft-edge/toc.yml b/microsoft-edge/toc.yml index 5aa09c8598..5ca8868865 100644 --- a/microsoft-edge/toc.yml +++ b/microsoft-edge/toc.yml @@ -1103,14 +1103,14 @@ href: webview2/index.md displayName: - - name: Intro diagrams about WebView2 - href: webview2/concepts/intro-diagrams.md - displayName: - - name: Overview of WebView2 features and APIs href: webview2/concepts/overview-features-apis.md displayName: + - name: Architecture of the WebView2 platform + href: webview2/concepts/platform-architecture.md + displayName: + - name: Differences between Microsoft Edge and WebView2 href: webview2/concepts/browser-features.md displayName: diff --git a/microsoft-edge/webview2/index-images/app-design.png b/microsoft-edge/webview2/concepts/platform-architecture-images/app-design.png similarity index 100% rename from microsoft-edge/webview2/index-images/app-design.png rename to microsoft-edge/webview2/concepts/platform-architecture-images/app-design.png diff --git a/microsoft-edge/webview2/index-images/control-runtime-sdk.png b/microsoft-edge/webview2/concepts/platform-architecture-images/control-runtime-sdk.png similarity index 100% rename from microsoft-edge/webview2/index-images/control-runtime-sdk.png rename to microsoft-edge/webview2/concepts/platform-architecture-images/control-runtime-sdk.png diff --git a/microsoft-edge/webview2/index-images/control-sdk-runtime.png b/microsoft-edge/webview2/concepts/platform-architecture-images/control-sdk-runtime.png similarity index 100% rename from microsoft-edge/webview2/index-images/control-sdk-runtime.png rename to microsoft-edge/webview2/concepts/platform-architecture-images/control-sdk-runtime.png diff --git a/microsoft-edge/webview2/index-images/dev-side-user-side.png b/microsoft-edge/webview2/concepts/platform-architecture-images/dev-side-user-side.png similarity index 100% rename from microsoft-edge/webview2/index-images/dev-side-user-side.png rename to microsoft-edge/webview2/concepts/platform-architecture-images/dev-side-user-side.png diff --git a/microsoft-edge/webview2/index-images/distribute-runtime.png b/microsoft-edge/webview2/concepts/platform-architecture-images/distribute-runtime.png similarity index 100% rename from microsoft-edge/webview2/index-images/distribute-runtime.png rename to microsoft-edge/webview2/concepts/platform-architecture-images/distribute-runtime.png diff --git a/microsoft-edge/webview2/index-images/hostapp-wv2ctrl-httpserver.png b/microsoft-edge/webview2/concepts/platform-architecture-images/hostapp-wv2ctrl-httpserver.png similarity index 100% rename from microsoft-edge/webview2/index-images/hostapp-wv2ctrl-httpserver.png rename to microsoft-edge/webview2/concepts/platform-architecture-images/hostapp-wv2ctrl-httpserver.png diff --git a/microsoft-edge/webview2/index-images/resources.png b/microsoft-edge/webview2/concepts/platform-architecture-images/resources.png similarity index 100% rename from microsoft-edge/webview2/index-images/resources.png rename to microsoft-edge/webview2/concepts/platform-architecture-images/resources.png diff --git a/microsoft-edge/webview2/concepts/intro-diagrams.md b/microsoft-edge/webview2/concepts/platform-architecture.md similarity index 86% rename from microsoft-edge/webview2/concepts/intro-diagrams.md rename to microsoft-edge/webview2/concepts/platform-architecture.md index 8b99056a98..14a6c3240d 100644 --- a/microsoft-edge/webview2/concepts/intro-diagrams.md +++ b/microsoft-edge/webview2/concepts/platform-architecture.md @@ -1,5 +1,5 @@ --- -title: Intro diagrams about WebView2 +title: Architecture of the WebView2 platform description: Host web content in your Win32, .NET, UWP apps with the Microsoft Edge WebView2 control. author: MSEdgeTeam ms.author: msedgedevrel @@ -7,31 +7,26 @@ ms.topic: conceptual ms.prod: microsoft-edge ms.localizationpriority: high ms.technology: webview -ms.date: 04/06/2023 +ms.date: 04/17/2023 --- -# Intro diagrams about WebView2 +# Architecture of the WebView2 platform +To add WebView2 to your app, you use the WebView2 SDK on your development machine, and distribute the WebView2 Runtime to user machines. The following diagram shows the high-level WebView2 components on your development machine and user machines. - -## High-level view of app development that includes WebView2 control instances - -Developing a WebView2 app has the following high-level areas: -* Dev machine -* Distribute the app and Runtime -* User machine -* Resources +![Full diagram of WebView2](../index-images/full-diagram.png) + +Developing a WebView2 app involves software residing in the following places: - -#### Diagram: Full diagram of WebView2 +| Location | Description | +|---|---| +| Dev machine | You use a Visual Studio project that includes the WebView2 SDK. The SDK includes the WebView2 Runtime, which is an embedded web browser component used for the WebView2 control instances in your host app. | +| Distributing the app and Runtime | There are several ways to deliver the always up-to-date Evergreen version of the WebView2 Runtime to user machines, with several levels of Internet connectivity supported. Some scenarios benefit from distributing a specific, fixed-version WebView2 Runtime. | +| User machine | Your host app on user machines includes instances of the WebView2 control, which uses the WebView2 Runtime. | +| Resources | The present documentation; the WebView2Samples repo including basic Getting Started WebView2 projects and more full-featured Sample projects; the WebView2Announcements repo; and the WebView2Feedback repo. | -![Full diagram of WebView2](./index-images/full-diagram.png) -Main boxes in the full diagram of WebView2: -* Dev machine -* Distribute the Runtime -* User machine -* Resources +todo: like the above table, talk through each box of the full diagram: Details of the Dev machine: * Visual Studio project @@ -63,7 +58,6 @@ Details of the User machine: Resources include: * Docs -* Support * Samples repo * Announcements repo * Feedback repo @@ -96,7 +90,7 @@ The WebView2 control, WebView2 SDK, and WebView2 Runtime have the following role #### Diagram: Relationship between the WebView2 control, SDK, and Runtime -![Diagram: Relationship between the WebView2 control, SDK, and Runtime](./index-images/control-sdk-runtime.png) +![Diagram: Relationship between the WebView2 control, SDK, and Runtime](./platform-architecture-images/control-sdk-runtime.png) Control: * WebView2 control - in the app layout; hosts the Runtime. @@ -115,7 +109,7 @@ Runtime: #### Diagram: WebView2 control, Runtime, and SDK -![WebView2 control, Runtime, and SDK](./index-images/control-runtime-sdk.png) +![WebView2 control, Runtime, and SDK](./platform-architecture-images/control-runtime-sdk.png) This diagram shows the following outline: @@ -161,7 +155,7 @@ A host app contains the following categories of code and components: #### Diagram: Design architecture of a WebView2 app -![Design architecture of a WebView2 app](./index-images/app-design.png) +![Design architecture of a WebView2 app](./platform-architecture-images/app-design.png) Categories of code: * Native-side WebView2 code, calls WebView2 APIs and platform APIs. @@ -183,7 +177,7 @@ Here are the differences between the Dev machine and User machine, for which com #### Diagram: App on the Development machine and user machine -![App on the Development machine and user machine](./index-images/dev-side-user-side.png) +![App on the Development machine and user machine](./platform-architecture-images/dev-side-user-side.png) | Component | Dev machine | User machine | |---|---|---| @@ -204,7 +198,7 @@ There are several ways to distribute the WebView2 Runtime with your app: #### Diagram: Four approaches to distribute the WebView2 Runtime -![Diagram: Four approaches to distribute the WebView2 Runtime](./index-images/distribute-runtime.png) +![Diagram: Four approaches to distribute the WebView2 Runtime](./platform-architecture-images/distribute-runtime.png) | Name of distribution approach | Description | Notes | |---|---|---| @@ -230,7 +224,7 @@ The WebView2 control acts as an intermediary for communication between the host #### Diagram: Host app, WebView2 control, and HTTP server -![Host app, WebView2 control, and HTTP server](./index-images/hostapp-wv2ctrl-httpserver.png) +![Host app, WebView2 control, and HTTP server](./platform-architecture-images/hostapp-wv2ctrl-httpserver.png) @@ -298,10 +292,9 @@ todo ## Resources * Docs - the present article is the main page for WebView2 docs. -* Support - see [Contact the WebView2 Team](./contact.md). * Runtime installer download page - see [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section). * NuGet SDK package download site - see [Microsoft.Web.WebView2](https://www.nuget.org/packages/Microsoft.Web.WebView2) at NuGet.org. -* GitHub Repos +* GitHub Repos and support - see [Contact the WebView2 Team](./contact.md). Direct links: * [WebView2Samples repo](https://github.com/MicrosoftEdge/WebView2Samples) - contains completed Getting Started article projects (minimal code) and code-rich Samples. * [WebView2Announcements repo](https://github.com/MicrosoftEdge/WebView2Announcements) * [WebView2Feedback repo](https://github.com/MicrosoftEdge/WebView2Feedback) @@ -310,7 +303,7 @@ todo #### Diagram: Resources -![Diagram: Resources](./index-images/resources.png) +![Diagram: Resources](./platform-architecture-images/resources.png) diff --git a/microsoft-edge/webview2/index-images/full-diagram.png b/microsoft-edge/webview2/index-images/full-diagram.png index b6216fc0929b32f969d678170560191cad849436..e4fb1cc602d4432507b19ac9ae51fd484b2741ae 100644 GIT binary patch literal 39349 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 literal 39647 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 kjkuR~Ee121^HWdd@T)dsRd@GLrTtGw)8IlL -## High-level view of app development that includes WebView2 control instances +## Architecture of the WebView2 platform -Developing a WebView2 app has the following high-level areas: -* Dev machine -* Distribute the app and Runtime -* User machine -* Resources +To add WebView2 to your app, you use the WebView2 SDK on your development machine, and distribute the WebView2 Runtime to user machines. The following diagram shows the high-level WebView2 components on your development machine and user machines. +![Full diagram of WebView2](./index-images/full-diagram.png) + - -#### Diagram: Full diagram of WebView2 +Developing a WebView2 app involves software residing in the following places: -![Full diagram of WebView2](./index-images/full-diagram.png) +| Location | Description | +|---|---| +| Dev machine | You use a Visual Studio project that includes the WebView2 SDK. The SDK includes the WebView2 Runtime, which is an embedded web browser component used for the WebView2 control instances in your host app. | +| Distributing the app and Runtime | There are several ways to deliver the always up-to-date Evergreen version of the WebView2 Runtime to user machines, with several levels of Internet connectivity supported. Some scenarios benefit from distributing a specific, fixed-version WebView2 Runtime. | +| User machine | Your host app on user machines includes instances of the WebView2 control, which uses the WebView2 Runtime. | +| Resources | The present documentation; the WebView2Samples repo including basic Getting Started WebView2 projects and more full-featured Sample projects; the WebView2Announcements repo; and the WebView2Feedback repo. | -Main boxes in the full diagram of WebView2: -* Dev machine -* Distribute the Runtime -* User machine -* Resources - -Details of the Dev machine: -* Visual Studio project - * Layout designer - * WebView2 control instances - * Native control instances - * SDK - * Platform APIs - * `AddHostObjectToScript` - * JavaScript APIs (WebView2Script package) -* Runtime - -Details of Distribute the Runtime: -* Evergreen - * Link to the Evergreen Runtime bootstrapper - * Package the Evergreen Runtime bootstrapper - * Package the Evergreen Runtime standalone installer -* Package a fixed-version Runtime - -Details of the User machine: -* Host app - * WebView2 native-side code - * WebView2 web-side code - * WebView2 control instances - * Non-WebView2 native-side code - * Non-WebView2 web-side code - * Native control instances -* Runtime - -Resources include: -* Docs -* Support -* Samples repo -* Announcements repo -* Feedback repo +For details, see [Architecture of the WebView2 platform](./concepts/platform-architecture.md). From a0f3751021df0ce93285b29db1d31c1cd97156ac Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Mon, 17 Apr 2023 21:07:28 -0700 Subject: [PATCH 21/31] linkfix --- .../app-design.png | Bin 25376 -> 24452 bytes .../concepts/platform-architecture.md | 54 +++++++++--------- .../webview2/index-images/full-diagram.png | Bin 39349 -> 37545 bytes 3 files changed, 27 insertions(+), 27 deletions(-) diff --git a/microsoft-edge/webview2/concepts/platform-architecture-images/app-design.png b/microsoft-edge/webview2/concepts/platform-architecture-images/app-design.png index a69d458b1a9018690c61b4da15654c3f5452754a..f70568668b9a14ee6ac3bb252b7f5796d6aa0bc8 100644 GIT binary patch literal 24452 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 literal 25376 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

Z`W%Pt`Sm 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 ## Design architecture of a WebView2 app A host app contains the following categories of code and components: -* Native-side code calls platform APIs and WebView2 APIs -* WebView2 control instance -* Native-side code calls platform APIs and WebView2 APIs -* Web-side JavaScript code calls WebView2Script APIs & exposed native-side APIs +* Native code calls platform APIs and WebView2 APIs. +* WebView2 control instance. +* Native code calls platform APIs and WebView2 APIs. +* Web (JavaScript) code calls WebView2Script APIs & exposed native APIs. @@ -158,14 +158,14 @@ A host app contains the following categories of code and components: ![Design architecture of a WebView2 app](./platform-architecture-images/app-design.png) Categories of code: -* Native-side WebView2 code, calls WebView2 APIs and platform APIs. -* Web-side code (JavaScript), calls WebView2Script APIs & exposed native-side APIs. -* Native-side non-WebView2 code, calls platform APIs and native controls. -* Web-side non-WebView2 code. +* Native WebView2 code, calls WebView2 APIs and platform APIs. +* Web code (JavaScript), calls WebView2Script APIs & exposed native APIs. +* Native non-WebView2 code, calls platform APIs and native controls. +* Non-WebView2 web code (JavaScript). Two-way code: -* Call web-side code from native-side code -* Call native-side code from web-side code +* Call web code (JavaScript) from native code. +* Call native code from web code (JavaScript). @@ -212,7 +212,7 @@ The above approaches are listed in the same sequence as in the [Download the Web _Your app's installer_ means your app's installer/updater, which can be separate from your app, or a part of your app. See also: -* [Understanding the options at the Runtime download page](./concepts/distribution.md#understanding-the-options-at-the-runtime-download-page) in _Distribute your app and the WebView2 Runtime_. +* [Understanding the options at the Runtime download page](./distribution.md#understanding-the-options-at-the-runtime-download-page) in _Distribute your app and the WebView2 Runtime_. @@ -240,9 +240,9 @@ The WebView2 control acts as an intermediary for communication between the host See also: -* [Understanding the options at the Runtime download page](./concepts/distribution.md#understanding-the-options-at-the-runtime-download-page) in _Distribute your app and the WebView2 Runtime_. -* [Prerelease and release SDKs for WebView2](./concepts/versioning.md) -* [Distribute your app and the WebView2 Runtime](./concepts/distribution.md) +* [Understanding the options at the Runtime download page](./distribution.md#understanding-the-options-at-the-runtime-download-page) in _Distribute your app and the WebView2 Runtime_. +* [Prerelease and release SDKs for WebView2](./versioning.md) +* [Distribute your app and the WebView2 Runtime](./distribution.md) @@ -257,7 +257,7 @@ To distribute your prerelease app to your test machine: * On your test machine, install a preview channel of Microsoft Edge. See also: -* [Understand the different WebView2 SDK versions](./concepts/versioning.md) - Either use a prerelease SDK with a preview channel of Microsoft Edge, or use a release SDK with the WebView2 Runtime. +* [Understand the different WebView2 SDK versions](./versioning.md) - Either use a prerelease SDK with a preview channel of Microsoft Edge, or use a release SDK with the WebView2 Runtime. @@ -273,7 +273,7 @@ There are several ways to distribute your app and the Runtime to users. See [Wa See also: -* [Understand the different WebView2 SDK versions](./concepts/versioning.md) - Either use a prerelease SDK with a preview channel of Microsoft Edge, or use a release SDK with the WebView2 Runtime. +* [Understand the different WebView2 SDK versions](./versioning.md) - Either use a prerelease SDK with a preview channel of Microsoft Edge, or use a release SDK with the WebView2 Runtime. @@ -294,7 +294,7 @@ todo * Docs - the present article is the main page for WebView2 docs. * Runtime installer download page - see [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section). * NuGet SDK package download site - see [Microsoft.Web.WebView2](https://www.nuget.org/packages/Microsoft.Web.WebView2) at NuGet.org. -* GitHub Repos and support - see [Contact the WebView2 Team](./contact.md). Direct links: +* GitHub Repos and support - see [Contact the WebView2 Team](../contact.md). Direct links: * [WebView2Samples repo](https://github.com/MicrosoftEdge/WebView2Samples) - contains completed Getting Started article projects (minimal code) and code-rich Samples. * [WebView2Announcements repo](https://github.com/MicrosoftEdge/WebView2Announcements) * [WebView2Feedback repo](https://github.com/MicrosoftEdge/WebView2Feedback) @@ -309,9 +309,9 @@ todo ## See also -* [Overview of WebView2 features and APIs](concepts/overview-features-apis.md) -* [Getting Started tutorials](get-started/get-started.md) -* [Distribute your app and the WebView2 Runtime](concepts/distribution.md) +* [Overview of WebView2 features and APIs](./overview-features-apis.md) +* [Getting Started tutorials](../get-started/get-started.md) +* [Distribute your app and the WebView2 Runtime](./distribution.md) developer.microsoft.com: * [Microsoft Edge WebView2](https://developer.microsoft.com/microsoft-edge/webview2) - initial introduction to WebView2 features at developer.microsoft.com. diff --git a/microsoft-edge/webview2/index-images/full-diagram.png b/microsoft-edge/webview2/index-images/full-diagram.png index e4fb1cc602d4432507b19ac9ae51fd484b2741ae..1a27ffefd8d54b29f865f6b49380c45306b8b2bd 100644 GIT binary patch literal 37545 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 ZJL*n~WG$Sy9YnjRaq;SfjPtks{s$!sOg#Vq literal 39349 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 From db0addb858d81e9b0bc524bccae7fe4184f17a1c Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Mon, 17 Apr 2023 21:09:34 -0700 Subject: [PATCH 22/31] linkfix2 --- microsoft-edge/webview2/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsoft-edge/webview2/index.md b/microsoft-edge/webview2/index.md index 06a5d84748..66b9aaab0f 100644 --- a/microsoft-edge/webview2/index.md +++ b/microsoft-edge/webview2/index.md @@ -135,7 +135,7 @@ See also: ## See also -* [Intro diagrams about WebView2](./concepts/intro-diagrams.md) +* [Architecture of the WebView2 platform](./concepts/platform-architecture.md) * [Overview of WebView2 features and APIs](./concepts/overview-features-apis.md) * [Getting Started tutorials](get-started/get-started.md) * [Distribute your app and the WebView2 Runtime](concepts/distribution.md) From 4e754474f2ee39d108f1a397328a5733d8a229d7 Mon Sep 17 00:00:00 2001 From: Reezaali Date: Tue, 18 Apr 2023 17:12:09 -0700 Subject: [PATCH 23/31] Apply suggestions from code review --- microsoft-edge/webview2/index.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/microsoft-edge/webview2/index.md b/microsoft-edge/webview2/index.md index 66b9aaab0f..6406fbbf6d 100644 --- a/microsoft-edge/webview2/index.md +++ b/microsoft-edge/webview2/index.md @@ -65,7 +65,7 @@ Hybrid apps, in the middle of this spectrum, allow you to enjoy the best of both -## Architecture of the WebView2 platform +## Overview of the components of the WebView2 platform To add WebView2 to your app, you use the WebView2 SDK on your development machine, and distribute the WebView2 Runtime to user machines. The following diagram shows the high-level WebView2 components on your development machine and user machines. @@ -79,9 +79,9 @@ Developing a WebView2 app involves software residing in the following places: | Dev machine | You use a Visual Studio project that includes the WebView2 SDK. The SDK includes the WebView2 Runtime, which is an embedded web browser component used for the WebView2 control instances in your host app. | | Distributing the app and Runtime | There are several ways to deliver the always up-to-date Evergreen version of the WebView2 Runtime to user machines, with several levels of Internet connectivity supported. Some scenarios benefit from distributing a specific, fixed-version WebView2 Runtime. | | User machine | Your host app on user machines includes instances of the WebView2 control, which uses the WebView2 Runtime. | -| Resources | The present documentation; the WebView2Samples repo including basic Getting Started WebView2 projects and more full-featured Sample projects; the WebView2Announcements repo; and the WebView2Feedback repo. | +| Resources | The product documentation; the WebView2Samples repo including basic Getting Started WebView2 projects and more full-featured Sample projects; the WebView2Announcements repo; and the WebView2Feedback repo. | -For details, see [Architecture of the WebView2 platform](./concepts/platform-architecture.md). +For details, see [Overview of the components of the WebView2 platform](./concepts/platform-architecture.md). From 575c78570b6a2b4953eaf145a06d993554596246 Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Wed, 19 Apr 2023 11:25:11 -0700 Subject: [PATCH 24/31] retitle to Components --- microsoft-edge/toc.yml | 4 ++-- .../resources.png | Bin 11173 -> 0 bytes .../app-design.png | Bin .../control-runtime-sdk.png | Bin .../control-sdk-runtime.png | Bin .../dev-side-user-side.png | Bin .../distribute-runtime.png | Bin .../hostapp-wv2ctrl-httpserver.png | Bin .../platform-components-images/resources.png | Bin 0 -> 10880 bytes ...architecture.md => platform-components.md} | 20 ++++++++++-------- microsoft-edge/webview2/index.md | 4 ++-- 11 files changed, 15 insertions(+), 13 deletions(-) delete mode 100644 microsoft-edge/webview2/concepts/platform-architecture-images/resources.png rename microsoft-edge/webview2/concepts/{platform-architecture-images => platform-components-images}/app-design.png (100%) rename microsoft-edge/webview2/concepts/{platform-architecture-images => platform-components-images}/control-runtime-sdk.png (100%) rename microsoft-edge/webview2/concepts/{platform-architecture-images => platform-components-images}/control-sdk-runtime.png (100%) rename microsoft-edge/webview2/concepts/{platform-architecture-images => platform-components-images}/dev-side-user-side.png (100%) rename microsoft-edge/webview2/concepts/{platform-architecture-images => platform-components-images}/distribute-runtime.png (100%) rename microsoft-edge/webview2/concepts/{platform-architecture-images => platform-components-images}/hostapp-wv2ctrl-httpserver.png (100%) create mode 100644 microsoft-edge/webview2/concepts/platform-components-images/resources.png rename microsoft-edge/webview2/concepts/{platform-architecture.md => platform-components.md} (95%) diff --git a/microsoft-edge/toc.yml b/microsoft-edge/toc.yml index 5ca8868865..70b77c852c 100644 --- a/microsoft-edge/toc.yml +++ b/microsoft-edge/toc.yml @@ -1107,8 +1107,8 @@ href: webview2/concepts/overview-features-apis.md displayName: - - name: Architecture of the WebView2 platform - href: webview2/concepts/platform-architecture.md + - name: Overview of the components of the WebView2 platform + href: webview2/concepts/platform-components.md displayName: - name: Differences between Microsoft Edge and WebView2 diff --git a/microsoft-edge/webview2/concepts/platform-architecture-images/resources.png b/microsoft-edge/webview2/concepts/platform-architecture-images/resources.png deleted file mode 100644 index cc0f88d62207615622ec2b589eb6b1641bf34069..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11173 zcmdsdc{tSV+xHZq$WqA`TInW?EjwimAv?n$YY5r5%t(boD%nG5tTSYpu?(Y0jcrht zu~T7W&wkI?p6|5W&;2`o$MgP<=wt$Q^p9DExsDf%2798t-NABy2ixV zc|=Be;oZm3`*d{8*V$xPSiosIOe_sG`?_-_;=187Xg9rZxSA(_c;8%^cc;ac#AZbj z8+?CvOQLCKRSg9C42__yPE#n9X88X0M0bu_q2K|~TO~dGPR{<0Fr&ZT>^>a`v^;0O zPvye1fUcaNmj;3Eu@eE?)xmTib|zZm>HnU_GMozRhCnu~Ivn&S(SgA>*#WjgD%)Fb z>D6GJK^y>KIEay=oJ3QZBqB&$6HHeY?NBDxyzCY?v1(Bz zOn_{%H5Fq&Y^nX|QMR8y8pL`!?SQ2e)A315Vx?{%`=Or33+Frd`4ML|^pl>I_^%9q z`GTK2FO(rZ^>xY|gM)w=Y2V{{Al6RcJ|QM6?it71bWzT1X|^jOS39V8Cdb3kpeN@5OGU^Y-WwHi7^{>9Pn8LYw5^m3 zmeNCaPT^Tnk+U)%z6%h#J%C$rBaEOmC-|T;KMmxhR&4?*$eSjYT)3 z+X6JU5euV^hpMdW!tf@?tK=h7&jQ11SYQey#j#8sM>qCX&Ceb;O)MD@k^S&g(N`*1 z#3_2ATBPO-)dFq=ZS6lO|Ckny5EFOnUW3bBxz+(&9y8iAFKdeni|fTh1L|HXrHD!^ ze+Y9<>_-S?0!GsRH?E@poi+UR6mg;nzW?XSB;#if7-c$j69a7#gztQEJs8QQ$9PRi z&knDUW{NVafP%)eb8^%osD0vPlkm8p10b$7MHMF3mxu8zr!STF-gh9R1H0i?gO z!fM$9s<+sT)P|w*XVPwNZw>~H#V^Ll%>;(A6Aksiarv*bWLxeFNAX~e5fdkd`>VH8 z7(O2j$r7NiN|H>gq9(4qWc6lp9W(sa+^L}(}e1g z-dfnlvD0ZckB^)ywb6f{f7^t=eY#nLdeg(i#`jjyq4##2{mXta;|jDu1)0>KD~^BI z6vTv`#Z>j@9vfRaiD$_i7F3j}8r7}qE<++7>rWo`7gD`dnkydTHtHq|8LpZNn7STvSfoLsp* zwnHy{+j0H{Guj|!F~9mM@JgWhVxu*r@X=syaQFQB>9njDD(+q_u$iSLFRX^o(01mS zHz&;|MJHkgenfIP*gROy$A3m?y({#GODp*k98U5DkA6rW-_hn=?19O}07i{y^}o@H z7I@A{+%3awjY5pEa^6`3vsb}N75A-uf;_R0Q4wEYcH1qHnL6O+%R;Zm^(|I|=Dd9E zpA3#QG-AhcgS&oM6VF%S6;P+(IoTsr19J>)ttrfjW1ie*;2^%?;jqrYTuvP{-*6>C zh~x8_HRXXVf7#_?BT;`YR~XBiHFvLvh_zwC4yYJ`n_cOv^t$wJm+g&@*3C)Q_6QjzX@;6O-bCx)o}-cYs2qIk-GEHe4yQ9PFF;K>cz8sKpQ ziWgG{%~oF_dg;hF|05gku#%U7^t1El3f&!9afvyGa@3*Ef?MnmuEHlu=O^`I*V}v`jfl*2(_>o`ZPhmYt0! zfqXFPT-v>l4H!~<=OKC>FkNowzcH}4a@syHp$XVFN}RPedc6!&v#2Ap7DDp_nOKusS|Bt8*%C}i}Ha5 ztDml&3pdFhmbc*KGP{Q=OR$Pv$ncp?Sz57~u0V(^)*q!&(8N2X9ntjc%;|4;Lt zwdaRr9m_p62bH?MxM;#=<}&AUS#~z;5wGbt?`a6CD?6Zw}ux&eaqp==# z{8K*p!NRMk3&o8A{S`L_suhYMjyU2~VVkM%U0{Dt5fX#gl;X(8rJM8lk6ThTAdHep z3zBw^y5?q`mov4&bS)f2$w$W*zi;(3*}8e*DZ9Ud|k2G z^A*q87WY3)8h#v>58<(S5oo(}`r#=@)D_I5BTfqaW-Z=g6xW~rz5!K#G1 zsiG|w!eBaw(C(;f49?xhq=G5~PVJmbO-X(wl2r5v5jux9M7%d?w0(>d6Yr(>DZ7KEywJ5(+PRo=nI%McT!A`Sjp|_w-Dt7vKA~>fMffXuZs4y^0XX@n9v;0 zRQ=>Qy@oyd!wW3P^!q##T0fT5Tiz%N_(%L0NbJNI4%*(9eiQAW8t=eB1KPDfQkrCP z1ugy9e>{;&Kl^@u;-Jd661-rvp1P0#Pkwt8NS;7fBdxu-Ko7l~^O=Xq_i3rjfdR;B zMpJ$8?MMgJRv-}qnNL27qPbq4n*4lZ6?470=Zt+|6TdihIjBglKb>i$_+1|&K4rIR zBSxMliuOIqb&q!_1mv(*XfKoN%EaqGwo=bv`4>1W4%I!;6rZ*LaO5ZlamM5;iu?KU zI|mD>X5tv@w0h@lbMQf{|9sy2uKb(E>N|&&FBgY56}hF)@174zjQ_h))gF#P?rsmh z!oZ0Y^`G#p13km!3u$AtGz=t99dHiBpl9R83-@ba>`%vZdkLR#;f2(RGAssubF*1b z;`Y47^kd!&?d; zP7Wdv(0}!V1~7hokcK>dcK;vO_(hPIqXsXFqZ^Ibr6vOtN*b8`a*DXWv)1j?v}?h| zXxmKVFyol{qN-|UP;J_e$8U#1y~IFUgx|2>K&>1Nu(B}O*)YFtT%qxnE8mA9prr&_ zJm{kS0e_GdC=>-RanQ5fz3pYM7F^WtJ{gG44a(Zg`nkxoz1?Ma;icP3o1DK<%a6jJ zYVy>9;p^&u50H=(_#441`-I-!T7B3cg9hNC#TN)6ZwB!1v} znT*9Zd}_8$!Yae%bR%5-Nj+;Tl45dJhNIP74Yz%we6~)Z^wHvg!DjdX4hN~J1`@Iq|m8dG#9nkMfQx6s$ z@Ce*|t$_}T4HiSh**3qka_H&w2`KUp>TEtMK9?^tz&Zyp92FA{rJR`USyFm})JSr_ z(g?eIT@4Lue$|<=A!TjvbvEY>yMg=1Re2v^g92IFKJQfA*VZ!2RcEuGNFy6v*&NbG zva6pP1hWmlG!v7wS5;o$*QuO4eN>vuky_F5C&&Ze<}K*y`l;Ef26^Y!W1)#-!O=tQ zpZA{41w_P2j)irO^`CS~`ZNoGFQ$cExmH#ng}pBxim3hSPZF$OIks-F@jZD9g^_Yq z$Zsj3A&~9K{a*m&v9gtwr+y!h`^p_yj>olbQd#I8_s^6}y?bI{TqH~k=pA%HxMbWc zB#(QPR$SwEQzHQWv+PUMhC2)qN^9~PK#g1$lH=;l4Xf(c&-j=Vc;khU`fBTa<-SA5 zo6bd1T-q5S_W7$R=xz)yZ9^SSCh6O7JGqhKdON*>zGZF-ah4j<`41_>+^vT$xg3-A zHJO=@M#{wALloz@mK*Iqi0c`yXSuNP%E{C@@OAFI$`d>H*;G&WbDI`6)}D4E9XOwd z4t5oLcYJ z2xOr*3e|DLgiZ0XmTUZ}_4PgYd6$@!`W!0C-OQ8?m8L_9$l+Z>|8 zY7L*wY<#qUNUhwxID{I9eWJq-MSR`T1~>JsKO^U0Q$50F+PhbePlO&urUH*W5u>+L zP9!KL37IA;TP~(Gwf85uU7J(v%velupR?bN{e&onw>PS;tugQBvtHN;{yKQ#;U#BY zEV4RwmgKpF!VLd$R_LxM{o3Q%H9j@SM%xnXqtnAcm#No+XT495GAp-^@OX;#)t1>n zcL;O(F?X>WM2pnRJW2ui+aoT0QlVl}6XV6jiZWyQu_N<|wGSO&71VUH+AUGlN@|bw zzFz{>8wpcg?4MmOe{#`ZO<5)R!ncvYo2Wpyo=aQs5Ne8|A=`6CMETlLmC6&TM#?ss zrBB=!wF`UtQb!j}MM|_@U_#>?GW5j7VhW1lb2G9d&@LGch2$lVIA2ygw{HYs`gHF_ zL7T0*;%@il`{G-2s+;Kxw~mg4-g{n8>Q8O8@-!!O%8|Xfkd2!W*VL|$IioJsT+*83 z-OlsStbZxqo<%~7yVehv7MHN{Pvt|uzq%Yn`7k^qf46B~=S6IAVUb4t=ICiv?B3B+ zVZkJ!?)HNzRio~3@(aFIR zs3u(hglM16Q)D&LNZ5mv=@{ZZS1+tlj(d>3oWM>LrFI*^Wag4&Rd20GL8*0QSl)=0 zRUg!tdV=th04eoz5+AEiwzphBH9WaHq&U6nhnDK>sZt#XGgc{tnFVHH;}in-nSr%B zV3+=-87a6zE(Q1I1mKp!kWIo~exAp6k6b8CvRDinP{o|DY|j(V8-<2`s~{1QRWQRMenxME7W+{KVoe>qp5vo~S7i%ND-q8GR(iF7!$9_qmM9 z&G*xVi^5#8Nx8^B$&cdNZ`FhFEN}Vo4eI<0P?A-!^P6~{)5~(ZS&)g3Iv<#;oXQl~ zBuS9|GSjAF8!y=b)ueNoSq~rkw7E|BRY4>yV>2GX%zU9-UW4h*fHHnZ2VDMu)TFx-P;oyh35{j>I?MUiwThH_)kl^?~0 zv#Vl%n80Y8wSEDBL`%TFoL)#V{>Zwu(*njSdGgOV!DSC=TD3}I^r^QTk2#?petTV? z96nzKF)A!5hSs}(2=MSO9wmP8OmN9w%+Q5u?D@+lSbeqKLjM|1#P)Ft1EqT4*+>3W zMGZ)zB%@|ZpYe#b?`cD4>-pUHV)L5%otswXjB)0(Va=5v?w5)d3qn#q*&_##1EN|< zU!Elb$PYl{mPL0wAS`W4XODZ_J^!`OXHv6q7$Y+~-{W9rotWg;)Z}G&^O8CyVGJVS zNe=R?v*9Cr>iz5<2}!Q^ZgklrEql$@TKap>CB&J~k<-NiC_wYvMaE$Gb2+h)=`8U> zs|kJz0;|w+k4tJTVK=AV_uyGMtgmeGT0G?rjCb=nHy|K_4wg=Aq`IJSl{l*{zfzgt z>ABk*dxo8(=0sy^qF9x0Ki5z0up;6QZpk~YBC5~Xwi5=Nu>{jg+g)%4XO{B9|JLxW zJZ-*`dZMh!XR-0dPxMiKOeRg50zYH#_Uz|tv||8ZxzJb{&14#Nrf~!swV{prPmi-? z(%{tD!s;f_`}MVMwSDS*`A^j5%ZRt#BbTo=Mb2p<;ZQ`O2AljI-&Mme@%WdocMqMe zY}(($dJR~92k;vXGxk zn(Oh3*3=8M9n(RS#}`Vz(d)3iBQD{#7|%)K`WQRnL~bwMj2g1Dsu8J6LzW78voc3` z{(66enSAWL=^J8kUXp8FnYA*Mt!-2!Kum;jKGqrg0B2`&rLl3nY%Mr{`g<7G^P^sj zdq{@IlCbxAs$x>2l=7ew;C3247=?i2`b0be+LTTHAi0_7=1jwIcSEl29~XzXO^s+`vdf#_CnZidK%L%ucVNBM}fG~ z&JesM)6BIWjaEh(u-Q;r^ zH*XT|Hv&STxzNT4JkdN zBYZ({dp=gdGbC_ zP2B$#%D0E#neIq6J6an(0pHL1iNZ0k4cqlvt>diWO)7r*`^d;51~+kdGC1JdozfIS?c z_;zClFlo^X`5eyQ~=jqI{SMLxOiH2T`u+6QM$booEzlu z=BO^X2`dQ#wBe-KN7os2%*P9VQM|?(La}smB7x7-$is}UrR3|o8?R)L0c8ux*D=dN z(3k)lL%H$-m@$hdhjg0gqV|?b`&$=XbQd{4n;C!iMF`??X~W66L&UjKYLG;3#e-%$ zJN<<3w()dPl-62tg%`osNtdG*<8>vG%v$_+(Pw zDtjsVkoV>|M7J_R?szX65!Bm%W=Q5b5IAv8&jSkgCDn-oVKwP}gZ}5z66Yr3ryvqB z8Dy0Z@h{WpzF5#iq5%HXm7(y}w-T1CP~)E@&+FEwn|CQ5641cgX^dWmB`IkVf&$e2 zbJl@RqtmyrN zh14BHeP2c08(`l38W64_Md*sJDbE>M_$aq%AYzfjK&}kk>8V_0NY(9okIGPS2)}@x zKVc;Mthb-HBu@6W$x>kH*xZOft<}7r#}5xk<6>8}#HNZUyE%#pvd9`!w88Q>v)6WN zss%Za!d&ESZa2>83k%{l@z>;1m+?1BFBj)Vu*s@JmsGB~KWpOu_SoUcO_*3aqiWNE zjmd7o#xNgbu$I&^n|WoA)r7=6Yyu3Qe$6@=p4_ki6EEKpH6?Zg-g|Y+TyCsBqr?k#$0{ zIAD@kIQN^uT3KW0Wr?+Z@_p`!BbN03?7iW+Vv4f7r$wkr>t_YD^xjJxM-9lFIZ{0f=_ds_QzzQUh1?@a~s{V9Ug3 zbRzwig8=2eomV!YVCasI&(H?04uK)Nzc-2D_}Wuckg;CV%ZERuwflL^=lG*UEDn^I zIIFWU%;V!*K7Mk`Qs+gTV0JcPK$62}s_V7&(*E~#vA~5b)4#;_EUA(9&c)<~@+uX7 zOB)m-gn8?k*!wc#7SH zG|;;)5~fAVZMBtGoBC$`cs|+NeLw911u*-?l+>#@yXl8*gql~Zv%~()GW9qGwpqp% z%+PYr@Kk!(Jvm{q)yNe#r!9SVjD^_?*3zvSOJMI7^B1JJf9i#FfX}9VdcLfMT1uix{StRDithd1!HZ7% zXG<@oXe~7D0%5bB*%32pzf`xcJa%Z}Ee=+HA=>CYZweMsCu*5mNkJB>g9Q;2@x!Ob zS)A-!jW@iG`IHJsUr#E+RCMTdn2}2AZhnK|E4dt9o#r6d)mHpa+OZuK85o?n;18U< zX6$saNK-c;hgV&{$X9uWZ8nBQ(+FBi9$a{ux@>r-n)-1?*Qac0CnH( zg! z?Ym1Dxu0@>(V4PiJW?NC$mn*(_$dTi%}XS`CYn`ek60%ItT?$-)5pCCgIyTT{Zvs) zR5Jf&`FwbFTIyP->LqQ~fvtF-Leal8Ne1AU;(t-^{{6?4_Oe}j<3X1lOF`SlZ93e~ zPg2^M$eBR|hdqEpbiiYnuh`l*!MuJcyhD8Wy9RD7uAty|G)=jYgE#=xJKCvy?LCL3 zJ?!ouY^c$>u=D!2QgBk5EmmS;{`k6vmuP7VEBh(^@fauWf)J!hmZT%dNq$$^1$V{ZoN+~YYHLU1A(qYP)RRzOi`1GrRozh;!JxXX2rZYf{iDAw_89ULEx@st zl@zF8-g-4yhgz3Y0C)196uIwwrm^KCalN_$iEC^%`j-i-M9k1;fMYJ9q()#$@fV&g zWOWtg(ySfC8$-0X(c-h(-d$U%C!d*Fv=_@C_kSE`?at}K^)*}e?zQghiUzcnnWG{U zVmr_io!mYE2=X+?%EQ5>@yBjD>O4P%S#Ps%lhBit#1VQ2tC8x&Kg3-TfjpAh*;e~K z6*qcy39HdsNFz5f7|tyP=Kl+sn=)4YA_hf&BL>>WG-5#Lyqy^U^=K@M;m+0LvKS#+ zWpm$Y3!o%EkUjJ%nm5jUDKnJx8H_)_0~f z9%>zbbPCKWAy)qtDQPZYVN_h!oeyV$IW(l^g!@m~2M zgB?`elns~c)>0(FpP1p;$-yR7C3qvzr zv~t6Tgx3g1o*yfqQG|X-UY(4XbcsV3hU;U2NKfO<-EFqowA2Ak^EEGn)R?#)#M+=# zZ?|9IFTboYN-O$<1&yUF6T}V;>`8v+|9zQ@oVl9eaJl74lQYczXJ_E#tDs@dk{Ea= z=iSB@iY*0uz9XykE0K^1n=%CZ=Q9Pi?EB{Y7Iv*zgbz_yfI<3!2o|&0h7X{|= feF+EO-`n3WtdO7>nFIn?YeBkNhMHyS4pILBR6Irc diff --git a/microsoft-edge/webview2/concepts/platform-architecture-images/app-design.png b/microsoft-edge/webview2/concepts/platform-components-images/app-design.png similarity index 100% rename from microsoft-edge/webview2/concepts/platform-architecture-images/app-design.png rename to microsoft-edge/webview2/concepts/platform-components-images/app-design.png diff --git a/microsoft-edge/webview2/concepts/platform-architecture-images/control-runtime-sdk.png b/microsoft-edge/webview2/concepts/platform-components-images/control-runtime-sdk.png similarity index 100% rename from microsoft-edge/webview2/concepts/platform-architecture-images/control-runtime-sdk.png rename to microsoft-edge/webview2/concepts/platform-components-images/control-runtime-sdk.png diff --git a/microsoft-edge/webview2/concepts/platform-architecture-images/control-sdk-runtime.png b/microsoft-edge/webview2/concepts/platform-components-images/control-sdk-runtime.png similarity index 100% rename from microsoft-edge/webview2/concepts/platform-architecture-images/control-sdk-runtime.png rename to microsoft-edge/webview2/concepts/platform-components-images/control-sdk-runtime.png diff --git a/microsoft-edge/webview2/concepts/platform-architecture-images/dev-side-user-side.png b/microsoft-edge/webview2/concepts/platform-components-images/dev-side-user-side.png similarity index 100% rename from microsoft-edge/webview2/concepts/platform-architecture-images/dev-side-user-side.png rename to microsoft-edge/webview2/concepts/platform-components-images/dev-side-user-side.png diff --git a/microsoft-edge/webview2/concepts/platform-architecture-images/distribute-runtime.png b/microsoft-edge/webview2/concepts/platform-components-images/distribute-runtime.png similarity index 100% rename from microsoft-edge/webview2/concepts/platform-architecture-images/distribute-runtime.png rename to microsoft-edge/webview2/concepts/platform-components-images/distribute-runtime.png diff --git a/microsoft-edge/webview2/concepts/platform-architecture-images/hostapp-wv2ctrl-httpserver.png b/microsoft-edge/webview2/concepts/platform-components-images/hostapp-wv2ctrl-httpserver.png similarity index 100% rename from microsoft-edge/webview2/concepts/platform-architecture-images/hostapp-wv2ctrl-httpserver.png rename to microsoft-edge/webview2/concepts/platform-components-images/hostapp-wv2ctrl-httpserver.png diff --git a/microsoft-edge/webview2/concepts/platform-components-images/resources.png b/microsoft-edge/webview2/concepts/platform-components-images/resources.png new file mode 100644 index 0000000000000000000000000000000000000000..838a570e64e358a51c3292c69b7ad462b09e2101 GIT binary patch literal 10880 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 literal 0 HcmV?d00001 diff --git a/microsoft-edge/webview2/concepts/platform-architecture.md b/microsoft-edge/webview2/concepts/platform-components.md similarity index 95% rename from microsoft-edge/webview2/concepts/platform-architecture.md rename to microsoft-edge/webview2/concepts/platform-components.md index 3a7863c38b..b0ecf1ae8a 100644 --- a/microsoft-edge/webview2/concepts/platform-architecture.md +++ b/microsoft-edge/webview2/concepts/platform-components.md @@ -1,5 +1,5 @@ --- -title: Architecture of the WebView2 platform +title: Overview of the components of the WebView2 platform description: Which parts of WebView2 reside on the Dev and user machine. How native code and controls interact with web code and the WebView2 control. author: MSEdgeTeam ms.author: msedgedevrel @@ -9,12 +9,14 @@ ms.localizationpriority: high ms.technology: webview ms.date: 04/17/2023 --- -# Architecture of the WebView2 platform +# Overview of the components of the WebView2 platform + To add WebView2 to your app, you use the WebView2 SDK on your development machine, and distribute the WebView2 Runtime to user machines. The following diagram shows the high-level WebView2 components on your development machine and user machines. ![Full diagram of WebView2](../index-images/full-diagram.png) + Developing a WebView2 app involves software residing in the following places: @@ -90,7 +92,7 @@ The WebView2 control, WebView2 SDK, and WebView2 Runtime have the following role #### Diagram: Relationship between the WebView2 control, SDK, and Runtime -![Diagram: Relationship between the WebView2 control, SDK, and Runtime](./platform-architecture-images/control-sdk-runtime.png) +![Diagram: Relationship between the WebView2 control, SDK, and Runtime](./platform-components-images/control-sdk-runtime.png) Control: * WebView2 control - in the app layout; hosts the Runtime. @@ -109,7 +111,7 @@ Runtime: #### Diagram: WebView2 control, Runtime, and SDK -![WebView2 control, Runtime, and SDK](./platform-architecture-images/control-runtime-sdk.png) +![WebView2 control, Runtime, and SDK](./platform-components-images/control-runtime-sdk.png) This diagram shows the following outline: @@ -155,7 +157,7 @@ A host app contains the following categories of code and components: #### Diagram: Design architecture of a WebView2 app -![Design architecture of a WebView2 app](./platform-architecture-images/app-design.png) +![Design architecture of a WebView2 app](./platform-components-images/app-design.png) Categories of code: * Native WebView2 code, calls WebView2 APIs and platform APIs. @@ -177,7 +179,7 @@ Here are the differences between the Dev machine and User machine, for which com #### Diagram: App on the Development machine and user machine -![App on the Development machine and user machine](./platform-architecture-images/dev-side-user-side.png) +![App on the Development machine and user machine](./platform-components-images/dev-side-user-side.png) | Component | Dev machine | User machine | |---|---|---| @@ -198,7 +200,7 @@ There are several ways to distribute the WebView2 Runtime with your app: #### Diagram: Four approaches to distribute the WebView2 Runtime -![Diagram: Four approaches to distribute the WebView2 Runtime](./platform-architecture-images/distribute-runtime.png) +![Diagram: Four approaches to distribute the WebView2 Runtime](./platform-components-images/distribute-runtime.png) | Name of distribution approach | Description | Notes | |---|---|---| @@ -224,7 +226,7 @@ The WebView2 control acts as an intermediary for communication between the host #### Diagram: Host app, WebView2 control, and HTTP server -![Host app, WebView2 control, and HTTP server](./platform-architecture-images/hostapp-wv2ctrl-httpserver.png) +![Host app, WebView2 control, and HTTP server](./platform-components-images/hostapp-wv2ctrl-httpserver.png) @@ -303,7 +305,7 @@ todo #### Diagram: Resources -![Diagram: Resources](./platform-architecture-images/resources.png) +![Diagram: Resources](./platform-components-images/resources.png) diff --git a/microsoft-edge/webview2/index.md b/microsoft-edge/webview2/index.md index 6406fbbf6d..e6a4e8205e 100644 --- a/microsoft-edge/webview2/index.md +++ b/microsoft-edge/webview2/index.md @@ -81,7 +81,7 @@ Developing a WebView2 app involves software residing in the following places: | User machine | Your host app on user machines includes instances of the WebView2 control, which uses the WebView2 Runtime. | | Resources | The product documentation; the WebView2Samples repo including basic Getting Started WebView2 projects and more full-featured Sample projects; the WebView2Announcements repo; and the WebView2Feedback repo. | -For details, see [Overview of the components of the WebView2 platform](./concepts/platform-architecture.md). +For details, see [Overview of the components of the WebView2 platform](./concepts/platform-components.md). @@ -135,7 +135,7 @@ See also: ## See also -* [Architecture of the WebView2 platform](./concepts/platform-architecture.md) +* [Overview of the components of the WebView2 platform](./concepts/platform-components.md) * [Overview of WebView2 features and APIs](./concepts/overview-features-apis.md) * [Getting Started tutorials](get-started/get-started.md) * [Distribute your app and the WebView2 Runtime](concepts/distribution.md) From 0769e25b5f9906f6f99c6a60158c2c7d55eafac2 Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Fri, 21 Apr 2023 19:03:07 -0700 Subject: [PATCH 25/31] Talk through diagram --- .../webview2/concepts/platform-components.md | 50 ++++++++++--------- microsoft-edge/webview2/index.md | 2 +- 2 files changed, 28 insertions(+), 24 deletions(-) diff --git a/microsoft-edge/webview2/concepts/platform-components.md b/microsoft-edge/webview2/concepts/platform-components.md index b0ecf1ae8a..ad2897dffa 100644 --- a/microsoft-edge/webview2/concepts/platform-components.md +++ b/microsoft-edge/webview2/concepts/platform-components.md @@ -7,16 +7,14 @@ ms.topic: conceptual ms.prod: microsoft-edge ms.localizationpriority: high ms.technology: webview -ms.date: 04/17/2023 +ms.date: 04/21/2023 --- # Overview of the components of the WebView2 platform - To add WebView2 to your app, you use the WebView2 SDK on your development machine, and distribute the WebView2 Runtime to user machines. The following diagram shows the high-level WebView2 components on your development machine and user machines. ![Full diagram of WebView2](../index-images/full-diagram.png) - - + Developing a WebView2 app involves software residing in the following places: @@ -28,31 +26,35 @@ Developing a WebView2 app involves software residing in the following places: | Resources | The present documentation; the WebView2Samples repo including basic Getting Started WebView2 projects and more full-featured Sample projects; the WebView2Announcements repo; and the WebView2Feedback repo. | -todo: like the above table, talk through each box of the full diagram: + Details of the Dev machine: -* Visual Studio project - * Layout designer - * WebView2 control instances - * Native control instances - * SDK - * Platform APIs - * `AddHostObjectToScript` - * JavaScript APIs (WebView2Script package) -* Runtime +* Visual Studio project -- Use a Visual Studio project template to create a standard platform app, and then add the WebView2 SDK to the project as a NuGet package. + * Layout designer -- lay out your controls in Visual Studio. + * WebView2 control instances -- web content areas of your app. The app's web-side code runs in this control. + * Native control instances -- native controls and panes of your app. + * WebView2 SDK + * Per-platform WebView2 APIs including CoreWebView2, CoreWebView2Controller, CoreWebView2Environment. Primarily called by native-side code. + * `AddHostObjectToScript` -- enables exposing platform APIs and WebView2 APIs to JavaScript code. + * [JavaScript APIs](/microsoft-edge/webview2/webview2-api-reference#javascript) (WebView2Script package) -- called by web-side code to communicate with the host application. + * Platform APIs -- non-WebView2 APIs provided by the platform; can be exposed to web-side code. +* Runtime -- browser component that contains WebView2 APIs. + +There are three ways to distribute the Evergreen Runtime to user machines, as well as a fixed-version Runtime option: +* Evergreen Runtime -- The WebView2 Evergreen Runtime is automatically updated to the latest version, on user machines, any of several ways with different degrees of relying on an Internet connection: + * Link to the Evergreen Runtime bootstrapper from your app installer. Maximally relies on an internet connection. + * Package the Evergreen Runtime bootstrapper into your app installer. Moderately relies on an internet connection. + * Package the Evergreen Runtime standalone installer. Minimally relies on an internet connection. +* Package a fixed-version Runtime. Gives fully determinate control of which version of which APIs are present. + +For more information, see [Approaches for distributing the WebView2 Runtime](#approaches-for-distributing-the-webview2-runtime) below. -Details of Distribute the Runtime: -* Evergreen - * Link to the Evergreen Runtime bootstrapper - * Package the Evergreen Runtime bootstrapper - * Package the Evergreen Runtime standalone installer -* Package a fixed-version Runtime Details of the User machine: * Host app * WebView2 native code - * WebView2 web code - * WebView2 control instances + * WebView2 web code -- the WebView2 APIs are mostly called by native-side code|web-side code. + * WebView2 control instances -- your app's web-side code runs in a WebView2 control. * Non-WebView2 native code * Non-WebView2 web code * Native control instances @@ -64,6 +66,8 @@ Resources include: * Announcements repo * Feedback repo +See [Resources](#resources) below. + ## Top-level WebView2 components @@ -198,7 +202,7 @@ There are several ways to distribute the WebView2 Runtime with your app: -#### Diagram: Four approaches to distribute the WebView2 Runtime +#### Approaches for distributing the WebView2 Runtime ![Diagram: Four approaches to distribute the WebView2 Runtime](./platform-components-images/distribute-runtime.png) diff --git a/microsoft-edge/webview2/index.md b/microsoft-edge/webview2/index.md index e6a4e8205e..5180b2764f 100644 --- a/microsoft-edge/webview2/index.md +++ b/microsoft-edge/webview2/index.md @@ -70,7 +70,7 @@ Hybrid apps, in the middle of this spectrum, allow you to enjoy the best of both To add WebView2 to your app, you use the WebView2 SDK on your development machine, and distribute the WebView2 Runtime to user machines. The following diagram shows the high-level WebView2 components on your development machine and user machines. ![Full diagram of WebView2](./index-images/full-diagram.png) - + Developing a WebView2 app involves software residing in the following places: From eb64192dfe3446888bdc796b3acea9997cb43aad Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Fri, 28 Apr 2023 11:31:28 -0700 Subject: [PATCH 26/31] blocking extensions --- .../alternate-distribution-options.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md b/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md index a4e4a403ca..09351e3e2b 100644 --- a/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md +++ b/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md @@ -151,6 +151,19 @@ See also: * [Manifest file format for extensions](../getting-started/manifest-format.md) + +## Blocking of extensions + +Question: +It is not clear if `BlockExternalExtensions` has to be set to `disabled` or `unconfigured` as a prerequisite. Or if extensions and their origin configured in `ExtensionInstallForcelist`, `ExtensionInstallSources`, or `ExtensionSettings` take precedence over `BlockExternalExtensions=Disabled`. + +Answer: +Setting the `BlockExternalExtensions` policy to `Not Configured` or `Disabled` won't have any effect. If the `BlockExternalExtensions` policy is set to `enabled`, external extension installation (by third party software) won't be allowed. The policies for force install list, block list, and extension settings are used when enterprises want to install or block specific extensions on the client machines. + +See [BlockExternalExtensions](/deployedge/microsoft-edge-policies#blockexternalextensions) in _Microsoft Edge - Policies_. + + + > [!NOTE] From 701691503b4f439c78a6fee9f8ad29b7f7623c9c Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Fri, 28 Apr 2023 11:33:57 -0700 Subject: [PATCH 27/31] Revert "blocking extensions" This reverts commit eb64192dfe3446888bdc796b3acea9997cb43aad. --- .../alternate-distribution-options.md | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md b/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md index 09351e3e2b..a4e4a403ca 100644 --- a/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md +++ b/microsoft-edge/extensions-chromium/developer-guide/alternate-distribution-options.md @@ -151,19 +151,6 @@ See also: * [Manifest file format for extensions](../getting-started/manifest-format.md) - -## Blocking of extensions - -Question: -It is not clear if `BlockExternalExtensions` has to be set to `disabled` or `unconfigured` as a prerequisite. Or if extensions and their origin configured in `ExtensionInstallForcelist`, `ExtensionInstallSources`, or `ExtensionSettings` take precedence over `BlockExternalExtensions=Disabled`. - -Answer: -Setting the `BlockExternalExtensions` policy to `Not Configured` or `Disabled` won't have any effect. If the `BlockExternalExtensions` policy is set to `enabled`, external extension installation (by third party software) won't be allowed. The policies for force install list, block list, and extension settings are used when enterprises want to install or block specific extensions on the client machines. - -See [BlockExternalExtensions](/deployedge/microsoft-edge-policies#blockexternalextensions) in _Microsoft Edge - Policies_. - - - > [!NOTE] From 6d2ec16075d4203856959e14ec75e2e4fd9208b5 Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Fri, 4 Aug 2023 15:49:59 -0700 Subject: [PATCH 28/31] Revert toc --- microsoft-edge/toc.yml | 212 +++++++++++++++++++++-------------------- 1 file changed, 107 insertions(+), 105 deletions(-) diff --git a/microsoft-edge/toc.yml b/microsoft-edge/toc.yml index e43abb5506..93a8288893 100644 --- a/microsoft-edge/toc.yml +++ b/microsoft-edge/toc.yml @@ -508,13 +508,13 @@ # Performance tool ------------------------------------------------------------ - name: Performance tool items: - - name: Get started analyzing runtime performance + - name: Introduction to the Performance tool href: devtools-guide-chromium/evaluate-performance/index.md - displayName: Performance tool + displayName: Performance tool, Get started analyzing runtime performance # old title - - name: Analyze runtime performance + - name: Troubleshooting common performance issues href: devtools-guide-chromium/rendering-tools/index.md - displayName: Performance tool + displayName: Performance tool, Analyze runtime performance # old title - name: Optimize website speed using Lighthouse href: devtools-guide-chromium/speed/get-started.md @@ -1130,10 +1130,6 @@ href: webview2/concepts/platform-components.md displayName: - - name: Differences between Microsoft Edge and WebView2 - href: webview2/concepts/browser-features.md - displayName: - # ----------------------------------------------------------------------------- # machine setup - name: Set up your Dev environment for WebView2 @@ -1182,11 +1178,11 @@ - name: Win32 sample app href: webview2/samples/webview2apissample.md - displayName: WebView2APISample, SampleApps # repo dir names + displayName: WebView2APISample, SampleApps, Win32 sample app # repo dir names, top-of-page title - name: Win32 sample app with Visual Composition href: webview2/samples/webview2samplewincomp.md - displayName: WebView2SampleWinComp # repo dir name + displayName: WebView2SampleWinComp, Win32 sample app with Visual Composition # repo dir name, top-of-page title - name: Win32 sample WebView2Browser href: webview2/samples/webview2browser.md @@ -1194,7 +1190,7 @@ - name: WinUI 2 (UWP) sample app href: webview2/samples/webview2_sample_uwp.md - displayName: webview2_sample_uwp # repo dir name + displayName: webview2_sample_uwp, WinUI 2 (UWP) sample app # repo dir name, top-of-page title # pending, July 26 2022 # - name: WinUI 3 sample app @@ -1203,7 +1199,7 @@ - name: WPF sample app href: webview2/samples/webview2wpfbrowser.md - displayName: WebView2WpfBrowser # repo dir name + displayName: WebView2WpfBrowser, WPF sample app # repo dir name, top-of-page title - name: WPF sample app with CDP href: webview2/samples/wv2cdpextensionwpfsample.md @@ -1214,6 +1210,7 @@ displayName: WebView2WindowsFormsBrowser, WinForms sample app # repo dir name, top-of-page title # ----------------------------------------------------------------------------- +# Deployment samples - name: Deployment samples items: - name: Deployment samples @@ -1233,33 +1230,58 @@ displayName: WV2DeploymentWiXCustomActionSample # repo dir name # ----------------------------------------------------------------------------- - - name: "Main classes for WebView2: Environment, Controller, and Core" - href: webview2/concepts/environment-controller-core.md - displayName: + - name: Fundamentals + items: + - name: Differences between Microsoft Edge and WebView2 + href: webview2/concepts/browser-features.md + displayName: - - name: Navigation events - href: webview2/concepts/navigation-events.md - displayName: Navigation events for WebView2 apps # top-of-page title + - name: "Main classes for WebView2: Environment, Controller, and Core" + href: webview2/concepts/environment-controller-core.md + displayName: - - name: Process-related events - href: webview2/concepts/process-related-events.md - displayName: Handling process-related events in WebView2 # top-of-page title + - name: Navigation events + href: webview2/concepts/navigation-events.md + displayName: Navigation events for WebView2 apps # top-of-page title - - name: Basic authentication - href: webview2/concepts/basic-authentication.md - displayName: auth, Basic authentication for WebView2 apps # top-of-page title + - name: Process-related events + href: webview2/concepts/process-related-events.md + displayName: Handling process-related events in WebView2 # top-of-page title - - name: Windowed vs. visual hosting of WebView2 - href: webview2/concepts/windowed-vs-visual-hosting.md - displayName: + - name: Basic authentication + href: webview2/concepts/basic-authentication.md + displayName: auth, Basic authentication for WebView2 apps # top-of-page title + + - name: Windowed vs. visual hosting of WebView2 + href: webview2/concepts/windowed-vs-visual-hosting.md + displayName: -# ----------------------------------------------------------------------------- - - name: Customization and UI - items: - name: Custom management of network requests href: webview2/how-to/webresourcerequested.md displayName: WebResourceRequested, WebResourceResponseReceived + - name: Web and native interop + items: + - name: Interop of native-side and web-side code + href: webview2/how-to/communicate-btwn-web-native.md + displayName: JavaScript interop, Embed web content into native applications (JavaScript interop) # old title + + - name: Call web-side code from native-side code + href: webview2/how-to/javascript.md + displayName: ExecuteScriptAsync API, Use JavaScript in WebView for extended scenarios # old title + + - name: Call native-side code from web-side code + href: webview2/how-to/hostobject.md + displayName: AddHostObjectToScript, host objects + + - name: Call native-side WinRT code from web-side code + href: webview2/how-to/winrt-from-js.md + displayName: AddHostObjectToScript, host objects + + - name: How WinRT types and members are represented in JavaScript + href: webview2/how-to/winrt-js-conversion.md + displayName: + - name: Using frames href: webview2/concepts/frames.md displayName: Using frames in WebView2 apps, iframe # full title @@ -1268,53 +1290,10 @@ href: webview2/how-to/print.md displayName: Printing from WebView2 apps # full title - - name: Working with local content in WebView2 apps - href: webview2/concepts/working-with-local-content.md - displayName: - - # - name: Customize the UI # not needed? flatten - # items: - # - name: Customize the UI of WebView2 apps - # href: webview2/how-to/customize-ui.md - # displayName: context menu, right-click menu - - - name: Customize context menus - href: webview2/how-to/context-menus.md - displayName: right-click menu, Customize context menus in WebView2 # top-of-page title - -# ----------------------------------------------------------------------------- - - name: Web and native interop - items: - - name: Interop of native-side and web-side code - href: webview2/how-to/communicate-btwn-web-native.md - displayName: JavaScript interop, Embed web content into native applications (JavaScript interop) # old title - - - name: Call web-side code from native-side code - href: webview2/how-to/javascript.md - displayName: ExecuteScriptAsync API, Use JavaScript in WebView for extended scenarios # old title - - - name: Call native-side code from web-side code - href: webview2/how-to/hostobject.md - displayName: AddHostObjectToScript, host objects - - - name: Call native-side WinRT code from web-side code - href: webview2/how-to/winrt-from-js.md - displayName: AddHostObjectToScript, host objects - - - name: How WinRT types and members are represented in JavaScript - href: webview2/how-to/winrt-js-conversion.md - displayName: - -# ----------------------------------------------------------------------------- - - name: Distribution and SDK versions - items: - - name: Deployment and distribution # firstchild landing page - href: webview2/concepts/deployment-distribution.md - displayName: Manage WebView2 applications # old title - - - name: Prerelease and release SDKs for WebView2 + # updated h2: Experimental APIs, added a 2nd, new h3: + - name: Understand the different WebView2 SDK versions href: webview2/concepts/versioning.md - displayName: experimental APIs, Understand the different WebView2 SDK versions # old title + displayName: Understand WebView2 SDK versions # old title # update needed? - name: Test upcoming APIs and features @@ -1325,37 +1304,13 @@ href: webview2/concepts/distribution.md displayName: - - name: Enterprise management of WebView2 Runtimes - href: webview2/concepts/enterprise.md - displayName: Manage WebView2 applications # old title - - - name: Distribute an app as a single executable file - href: webview2/how-to/static.md - displayName: Statically link the WebView2 loader library, single-file app # old title - - - name: Publish a UWP WebView2 app to the Microsoft Store - href: webview2/how-to/publish-uwp-app-store.md - displayName: Partner Center, Microsoft Store - -# ----------------------------------------------------------------------------- - - name: Testing and best practices - items: - - name: Development best practices - href: webview2/concepts/developer-guide.md - displayName: Development best practices for WebView2 apps # top-of-page title - - - name: Develop secure WebView2 apps - href: webview2/concepts/security.md + - name: Working with local content in WebView2 apps + href: webview2/concepts/working-with-local-content.md displayName: - - name: Use the Chrome DevTools Protocol - href: webview2/how-to/chromium-devtools-protocol.md - displayName: Use the Chrome DevTools Protocol (CDP) in WebView2 apps # top-of-page title - - - name: Automate and test with Microsoft Edge WebDriver - href: webview2/how-to/webdriver.md - displayName: Automate and test WebView2 apps with Microsoft Edge WebDriver # top-of-page title - +# ----------------------------------------------------------------------------- + - name: Debug WebView2 apps + items: - name: Debug WebView2 apps href: webview2/how-to/debug.md displayName: @@ -1411,11 +1366,58 @@ href: webview2/concepts/clear-browsing-data.md displayName: +# ----------------------------------------------------------------------------- + - name: Advanced Topics and Best Practices + items: + - name: Development best practices + href: webview2/concepts/developer-guide.md + displayName: Development best practices for WebView2 apps # top-of-page title + + - name: Develop secure WebView2 apps + href: webview2/concepts/security.md + displayName: + + # - name: Customize the UI # not needed? flatten + # items: + # - name: Customize the UI of WebView2 apps + # href: webview2/how-to/customize-ui.md + # displayName: context menu, right-click menu + + - name: Customize context menus + href: webview2/how-to/context-menus.md + displayName: right-click menu, Customize context menus in WebView2 # top-of-page title + + - name: Use the Chrome DevTools Protocol (CDP) + href: webview2/how-to/chromium-devtools-protocol.md + displayName: Use the Chrome DevTools Protocol (CDP) in WebView2 apps, chrome developer protocol # top-of-page title & catch a mis-type + + - name: Automate and test with Microsoft Edge WebDriver + href: webview2/how-to/webdriver.md + displayName: Automate and test WebView2 apps with Microsoft Edge WebDriver # top-of-page title + - name: Data and privacy href: webview2/concepts/data-privacy.md displayName: Data and privacy in WebView2 # top-of-page title # ----------------------------------------------------------------------------- + - name: Deployment and distribution + items: + - name: Deployment and distribution # new firstchild page + href: webview2/concepts/deployment-distribution.md + displayName: Manage WebView2 applications # old title + + - name: Enterprise management of WebView2 Runtimes + href: webview2/concepts/enterprise.md + displayName: Manage WebView2 applications # old title + + - name: Distribute an app as a single executable file + href: webview2/how-to/static.md + displayName: Statically link the WebView2 loader library, single-file app # old title + + - name: Publish a UWP WebView2 app to the Microsoft Store + href: webview2/how-to/publish-uwp-app-store.md + displayName: Partner Center, Microsoft Store + - name: Release Notes for the WebView2 SDK href: webview2/release-notes.md displayName: what's new, announcements From c8959710f407b594e053a65d110eb922ac3bf4df Mon Sep 17 00:00:00 2001 From: Michael Hoffman Date: Mon, 13 Nov 2023 20:28:22 -0800 Subject: [PATCH 29/31] linkfix --- microsoft-edge/webview2/concepts/windowed-vs-visual-hosting.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/microsoft-edge/webview2/concepts/windowed-vs-visual-hosting.md b/microsoft-edge/webview2/concepts/windowed-vs-visual-hosting.md index f207f3d04f..a33b0f720d 100644 --- a/microsoft-edge/webview2/concepts/windowed-vs-visual-hosting.md +++ b/microsoft-edge/webview2/concepts/windowed-vs-visual-hosting.md @@ -53,7 +53,7 @@ Key compatibility limitations include the operating system and rendering in fram Windows 7 and Windows 8 can only do windowed hosting, not visual hosting. -See [Windows versions supported with limitations](../index.md#windows-versions-supported-with-limitations) in _Introduction to Microsoft Edge WebView2_. +See [Windows 7 and 8](../index.md#windows-7-and-8) in _Introduction to Microsoft Edge WebView2_. From 1bd040b56e2033ffe2040db184e0c60d8e63a9ea Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Thu, 1 May 2025 15:20:29 -0700 Subject: [PATCH 30/31] yaml --- microsoft-edge/webview2/concepts/platform-components.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/microsoft-edge/webview2/concepts/platform-components.md b/microsoft-edge/webview2/concepts/platform-components.md index ad2897dffa..4b882ca311 100644 --- a/microsoft-edge/webview2/concepts/platform-components.md +++ b/microsoft-edge/webview2/concepts/platform-components.md @@ -4,9 +4,8 @@ description: Which parts of WebView2 reside on the Dev and user machine. How na author: MSEdgeTeam ms.author: msedgedevrel ms.topic: conceptual -ms.prod: microsoft-edge -ms.localizationpriority: high -ms.technology: webview +ms.service: microsoft-edge +ms.subservice: webview ms.date: 04/21/2023 --- # Overview of the components of the WebView2 platform From a2980b524b78a6edb1f98635d8d23040b8999d15 Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Tue, 6 May 2025 10:24:41 -0700 Subject: [PATCH 31/31] normize Download section link --- microsoft-edge/webview2/concepts/data-privacy.md | 4 +++- microsoft-edge/webview2/concepts/distribution.md | 10 +++++----- .../webview2/concepts/platform-components.md | 4 ++-- microsoft-edge/webview2/concepts/versioning.md | 2 +- microsoft-edge/webview2/release-notes/about.md | 2 +- 5 files changed, 12 insertions(+), 10 deletions(-) diff --git a/microsoft-edge/webview2/concepts/data-privacy.md b/microsoft-edge/webview2/concepts/data-privacy.md index 1f2c5ba9e2..a40da61c08 100644 --- a/microsoft-edge/webview2/concepts/data-privacy.md +++ b/microsoft-edge/webview2/concepts/data-privacy.md @@ -10,7 +10,9 @@ ms.date: 06/02/2023 --- # Data and privacy in WebView2 -WebView2 collects a set of optional and required diagnostic data to keep WebView2 secure and up to date, diagnose issues, and improve WebView2. By agreeing to the WebView2 Runtime Terms and Conditions License, WebView2 developers acknowledge that WebView2 will collect the data that's described in this article. To view the license, go to [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2/#download-section), where clicking any of the download buttons, such as **Get the Link**, **Download**, or **x64**, shows the license in a dialog. +WebView2 collects a set of optional and required diagnostic data to keep WebView2 secure and up to date, diagnose issues, and improve WebView2. By agreeing to the Microsoft Software License Terms for the Microsoft Edge WebView2 Runtime, you acknowledge (as a WebView2 developer) that WebView2 will collect the data that's described in this article. + +To view the license terms, go to the [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download) section of the **Microsoft Edge WebView2** page, and then click any of the download buttons, such as **Get the Link**, **Download**, or **x64**. The license terms are shown in a dialog. Additionally, WebView2 follows the standards that are outlined in [Microsoft Edge Privacy Whitepaper](/legal/microsoft-edge/privacy). WebView2 has mechanisms to ensure privacy. WebView2 data collection follows the same strict standards as Microsoft Edge. For more information, see [Microsoft Privacy Statement – Microsoft privacy](https://privacy.microsoft.com/privacystatement). diff --git a/microsoft-edge/webview2/concepts/distribution.md b/microsoft-edge/webview2/concepts/distribution.md index f3c5e30a00..d45a771eb4 100644 --- a/microsoft-edge/webview2/concepts/distribution.md +++ b/microsoft-edge/webview2/concepts/distribution.md @@ -68,7 +68,7 @@ Cons: ## Understanding the options at the Runtime download page -The [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section) section of the **Microsoft Edge WebView2** page provides several options for distributing the WebView2 Runtime onto client machines. Understanding the options at this page provides a good introduction, to help decide which approach you want to use. +The [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download) section of the **Microsoft Edge WebView2** page provides several options for distributing the WebView2 Runtime onto client machines. Understanding the options at this page provides a good introduction, to help decide which approach you want to use. ![Options for distributing and updating the WebView2 Runtime](./distribution-images/runtime-distrib-options.png) @@ -158,7 +158,7 @@ See also: #### Deploying the Evergreen WebView2 Runtime -Only one installation of the Evergreen WebView2 Runtime is needed for all Evergreen apps on the device. Several tools are available at [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section) to help you deploy the Evergreen Runtime. +Only one installation of the Evergreen WebView2 Runtime is needed for all Evergreen apps on the device. Several tools are available at the [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download) section of the **Microsoft Edge WebView2** page, to help you deploy the Evergreen Runtime. * For online clients: _WebView2 Runtime Bootstrapper_ is a tiny (approximately 2 MB) installer. The WebView2 Runtime Bootstrapper downloads and installs the Evergreen Runtime from Microsoft servers that matches the user's device architecture. @@ -247,7 +247,7 @@ Alternatively, instead of programmatically downloading the bootstrapper on-deman If you have an offline deployment scenario, where app deployment has to work entirely offline, use the following workflow. -1. Download the Evergreen Standalone Installer from [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section) to your development machine. The Evergreen Standalone Installer installs the Evergreen WebView2 Runtime on the client. +1. Download the Evergreen Standalone Installer from the [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download) section of the **Microsoft Edge WebView2** page to your development machine. The Evergreen Standalone Installer installs the Evergreen WebView2 Runtime on the client. 1. Include the Evergreen Standalone Installer in your app installer or updater. @@ -325,7 +325,7 @@ The Fixed Version binaries are over 250 MB and will make your app package larger To use the Fixed Version distribution mode: -1. Download the Fixed Version of the WebView2 Runtime from [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section), as a package. +1. Download the Fixed Version of the WebView2 Runtime from the [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download) section of the **Microsoft Edge WebView2** page, as a package. The most-patched version of the latest and second-latest major releases are available for download at this site. Keep an archived copy of any versions you need. @@ -430,4 +430,4 @@ Example managed app folder structure: ## See also -* [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section) - a section of the **Microsoft Edge WebView2** page, which links to the present article. +* [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download) - a section of the **Microsoft Edge WebView2** page, which links to the present article. diff --git a/microsoft-edge/webview2/concepts/platform-components.md b/microsoft-edge/webview2/concepts/platform-components.md index 4b882ca311..9766d1cd0f 100644 --- a/microsoft-edge/webview2/concepts/platform-components.md +++ b/microsoft-edge/webview2/concepts/platform-components.md @@ -212,7 +212,7 @@ There are several ways to distribute the WebView2 Runtime with your app: | Package the Evergreen Runtime standalone installer | Download the Evergreen standalone installer to your Dev machine, and package it with your app. Package the Evergreen standalone installer with your app's installer. Your app's installer then invokes the Evergreen standalone installer to install the Runtime on the user's device. | For offline users. A large, standalone Evergreen Runtime installer for offline users, that includes the Evergreen Runtime. | | Package a fixed-version Runtime | Download a version-specific, CPU-specific Runtime to your Dev machine. Package and distribute the fixed-version Runtime with your app's installer. Your app's installer installs the specific fixed-version Runtime on the user's machine. | Specialty case, for when you need specific version of the APIs; avoids testing whether latest APIs are available. | -The above approaches are listed in the same sequence as in the [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section) section of the **Microsoft Edge WebView2** page, from lightweight to heavyweight approaches. Favor the lightweight approaches; use a heavyweight approach if required by a specialized scenario. +The above approaches are listed in the same sequence as in the [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download) section of the **Microsoft Edge WebView2** page, from lightweight to heavyweight approaches. Favor the lightweight approaches; use a heavyweight approach if required by a specialized scenario. _Your app's installer_ means your app's installer/updater, which can be separate from your app, or a part of your app. @@ -297,7 +297,7 @@ todo ## Resources * Docs - the present article is the main page for WebView2 docs. -* Runtime installer download page - see [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download-section). +* Runtime installer download page - see the [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download) section of the **Microsoft Edge WebView2** page. * NuGet SDK package download site - see [Microsoft.Web.WebView2](https://www.nuget.org/packages/Microsoft.Web.WebView2) at NuGet.org. * GitHub Repos and support - see [Contact the WebView2 Team](../contact.md). Direct links: * [WebView2Samples repo](https://github.com/MicrosoftEdge/WebView2Samples) - contains completed Getting Started article projects (minimal code) and code-rich Samples. diff --git a/microsoft-edge/webview2/concepts/versioning.md b/microsoft-edge/webview2/concepts/versioning.md index e2f35089c5..c758310b4f 100644 --- a/microsoft-edge/webview2/concepts/versioning.md +++ b/microsoft-edge/webview2/concepts/versioning.md @@ -165,7 +165,7 @@ Once an API has been moved from Experimental to Stable status, you need to move In the Evergreen distribution approach, the client's WebView2 Runtime automatically updates to the latest version available. However, a user or IT admin might choose to prevent automatic updating of the WebView2 Runtime. The resulting outdated Runtime on the client might cause compatibility issues with your updated WebView2 app that uses new APIs from a recent SDK. -In case updating the WebView2 Runtime is prevented on the client, make sure that you know the minimum build number of the WebView2 Runtime that is required by your app. To view or get the latest WebView2 Runtime versions, see [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2/#download-section) in the _Microsoft Edge WebView2_ page at developer.microsoft.com. The minimum required Runtime version to support the General Availability release of the SDK (build 616) is older than for the latest Runtime. The latest Runtime supports all APIs that are in the latest Release SDK. +In case updating the WebView2 Runtime is prevented on the client, make sure that you know the minimum build number of the WebView2 Runtime that is required by your app. To view or get the latest WebView2 Runtime versions, use the [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download) section of the **Microsoft Edge WebView2** page. The minimum required Runtime version to support the General Availability release of the SDK (build 616) is older than for the latest Runtime. The latest Runtime supports all APIs that are in the latest Release SDK. To check the compatibility between specific build numbers of the SDK and the Runtime or Microsoft Edge preview channel, see [Release Notes for the WebView2 SDK](../release-notes/index.md). diff --git a/microsoft-edge/webview2/release-notes/about.md b/microsoft-edge/webview2/release-notes/about.md index 56bd50a884..643b69fed3 100644 --- a/microsoft-edge/webview2/release-notes/about.md +++ b/microsoft-edge/webview2/release-notes/about.md @@ -54,7 +54,7 @@ WebView2 shares code and binaries with the Microsoft Edge browser, and is releas * For Microsoft Edge updates, see [Release notes for Microsoft Edge Stable Channel](/deployedge/microsoft-edge-relnote-stable-channel) and [Release notes for Microsoft Edge Beta Channel](/deployedge/microsoft-edge-relnote-beta-channel). -* To update the WebView2 Runtime on your development machine and on user machines, see [Distribute your app and the WebView2 Runtime](../concepts/distribution.md). To view or get the latest WebView2 Runtime versions, see [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2/#download-section) in the _Microsoft Edge WebView2_ page at developer.microsoft.com. +* To update the WebView2 Runtime on your development machine and on user machines, see [Distribute your app and the WebView2 Runtime](../concepts/distribution.md). To view or get the latest WebView2 Runtime versions, use the [Download the WebView2 Runtime](https://developer.microsoft.com/microsoft-edge/webview2#download) section of the **Microsoft Edge WebView2** page. * To install or update the WebView2 SDK, see [Install or update the WebView2 SDK](../how-to/machine-setup.md#install-or-update-the-webview2-sdk) in _Set up your Dev environment for WebView2_.

nKo2Q?dg6PKp&$kVK25vf9l@OR8u8*#5%QhO_df}Un{‰Hf~oFki}D3C2?^d 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 bO8P(l!)=E+pLW>I2Z?#Q`njxgN@xNA&Et!b diff --git a/microsoft-edge/webview2/index-images/dev-side-user-side.png b/microsoft-edge/webview2/index-images/dev-side-user-side.png index 825f77ab1c802c27313942d5b13f1fff8fc9b557..c80a4ebcf56ee4e0df0890b36f3f27479732493a 100644 GIT binary patch literal 22268 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 diff --git a/microsoft-edge/webview2/index-images/full-diagram.png b/microsoft-edge/webview2/index-images/full-diagram.png index 37553291c553668a7b243f0d30ae3858df420d7f..45edc9dda104ef3aa2600cbb46683812f7a515b6 100644 GIT binary patch literal 39575 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 Date: Thu, 30 Mar 2023 17:47:00 -0700 Subject: [PATCH 15/31] simplify --- .../index-images/control-runtime-sdk.png | Bin 28012 -> 24187 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/microsoft-edge/webview2/index-images/control-runtime-sdk.png b/microsoft-edge/webview2/index-images/control-runtime-sdk.png index b4c6dd8dbbbd9015904f4c8b2831e25fbd8fba38..071cc22e282245b158bebaf9b91a2275561a1ee7 100644 GIT binary patch literal 24187 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 A{r~^~ literal 28012 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 Date: Fri, 31 Mar 2023 12:01:54 -0700 Subject: [PATCH 16/31] labeled diagrams --- microsoft-edge/webview2/index.md | 53 ++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/microsoft-edge/webview2/index.md b/microsoft-edge/webview2/index.md index 64b4f8d071..47d7736dc3 100644 --- a/microsoft-edge/webview2/index.md +++ b/microsoft-edge/webview2/index.md @@ -73,6 +73,10 @@ Developing a WebView2 app has the following high-level areas: * User machine * Resources + + +#### Diagram: Full diagram of WebView2 (full-diagram.png) + ![Full diagram of WebView2](./index-images/full-diagram.png) @@ -100,6 +104,9 @@ The WebView2 control, WebView2 SDK, and WebView2 Runtime have the following role | WebView2 Runtime | On Dev's test machine and on user machines. Or, instead of using the Runtime, Dev can use a preview channel of Microsoft Edge for local testing, when using the Prerelease SDK. | + +#### Diagram: Relationship between the WebView2 control, SDK, and Runtime (control-sdk-runtime.png) + ![Diagram: Relationship between the WebView2 control, SDK, and Runtime](./index-images/control-sdk-runtime.png) Control: @@ -116,8 +123,34 @@ Runtime: * Runtime + +#### Diagram: WebView2 control, Runtime, and SDK (control-runtime-sdk.png) + ![WebView2 control, Runtime, and SDK](./index-images/control-runtime-sdk.png) + +###### Draft 2 + +This diagram shows the following outline: + + + +Release SDK, includes: +* .NET/C# APIs (are these on the Control? on the Runtime?) +* WinRT/C# +* Win32/C++ + +Prerelease SDK, includes: +* .NET/C# APIs including experimental APIs (are these on the Control? on the Runtime?) +* WinRT/C# APIs including experimental APIs +* Win32/C++ APIs including experimental APIs + +Runtime (for release) or Browser (for Prerelease) +* WebView2Script package (JavaScript APIs for WebView2) + + +###### Draft 1 + This diagram has the following top-level items: * Control * Runtime @@ -158,6 +191,10 @@ A host app contains the following categories of code and components: * Native-side code calls platform APIs and WebView2 APIs * Web-side JavaScript code calls WebView2Script APIs & exposed native-side APIs + + +#### Diagram: Design architecture of a WebView2 app (app-design.png) + ![Design architecture of a WebView2 app](./index-images/app-design.png) @@ -178,6 +215,10 @@ Categories of code: Here are the differences between the Dev machine and User machine, for which components are used. + + +#### Diagram: App on the Development machine and user machine (dev-side-user-side.png) + ![App on the Development machine and user machine](./index-images/dev-side-user-side.png) | Component | Dev machine | User machine | @@ -195,6 +236,10 @@ Here are the differences between the Dev machine and User machine, for which com There are several ways to distribute the WebView2 Runtime with your app: + + +#### Diagram: Four approaches to distribute the WebView2 Runtime (distribute-runtime.png) + ![Diagram: Four approaches to distribute the WebView2 Runtime](./index-images/distribute-runtime.png) | Name of distribution approach | Description | Notes | @@ -217,6 +262,10 @@ See also: The WebView2 control acts as an intermediary for communication between the host app and the HTTP server. + + +#### Diagram: Host app, WebView2 control, and HTTP server (hostapp-wv2ctrl-httpserver.png) + ![Host app, WebView2 control, and HTTP server](./index-images/hostapp-wv2ctrl-httpserver.png) @@ -341,6 +390,10 @@ todo * [WebView2Announcements repo](https://github.com/MicrosoftEdge/WebView2Announcements) * [WebView2Feedback repo](https://github.com/MicrosoftEdge/WebView2Feedback) + + +#### Diagram: Resources (resources.png) + ![Diagram: Resources](./index-images/resources.png) From 7d42bf4b5510046b0353aae44415682972275ab5 Mon Sep 17 00:00:00 2001 From: "Michael S. Hoffman" Date: Mon, 3 Apr 2023 17:49:55 -0700 Subject: [PATCH 17/31] control-runtime-sdk.png --- .../webview2/index-images/app-design.png | Bin 23645 -> 25376 bytes .../index-images/control-runtime-sdk.png | Bin 24187 -> 31520 bytes .../webview2/index-images/full-diagram.png | Bin 39575 -> 39647 bytes microsoft-edge/webview2/index.md | 59 +++++------------- 4 files changed, 17 insertions(+), 42 deletions(-) diff --git a/microsoft-edge/webview2/index-images/app-design.png b/microsoft-edge/webview2/index-images/app-design.png index 58afe82deb1d144ab71e0854400bd20c1061b2d7..a69d458b1a9018690c61b4da15654c3f5452754a 100644 GIT binary patch literal 25376 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