diff --git a/microsoft-edge/web-platform/release-notes/135.md b/microsoft-edge/web-platform/release-notes/135.md index af8ca9caf9..3422218b08 100644 --- a/microsoft-edge/web-platform/release-notes/135.md +++ b/microsoft-edge/web-platform/release-notes/135.md @@ -66,7 +66,7 @@ See [What's new in DevTools (Microsoft Edge 135)](../../devtools/whats-new/2025/ ## WebView2 -See [Release SDK 1.0.3179.45, for Runtime 135 (Apr. 7, 2025)](../../webview2/release-notes/index.md#release-sdk-10317945-for-runtime-135-apr-7-2025) in _Release notes for the WebView2 SDK_. +See [Release SDK 1.0.3179.45, for Runtime 135 (Apr. 7, 2025)](../../webview2/release-notes/archive.md#release-sdk-10317945-for-runtime-135-apr-7-2025) in _Archived release notes for the WebView2 SDK_. diff --git a/microsoft-edge/web-platform/release-notes/147.md b/microsoft-edge/web-platform/release-notes/147.md index ecaa906675..c4f3bfa527 100644 --- a/microsoft-edge/web-platform/release-notes/147.md +++ b/microsoft-edge/web-platform/release-notes/147.md @@ -92,10 +92,7 @@ See [What's new in DevTools (Microsoft Edge 147)](../../devtools/whats-new/147.m ## WebView2 -See [Release notes for the WebView2 SDK](../../webview2/release-notes/index.md). - +See [Release SDK 1.0.3912.50, for Runtime 147 (Apr. 13, 2026)](../../webview2/release-notes/index.md#release-sdk-10391250-for-runtime-147-apr-13-2026) in _Release notes for the WebView2 SDK_. diff --git a/microsoft-edge/webview2/release-notes/archive.md b/microsoft-edge/webview2/release-notes/archive.md index 0ebd825d1d..fb15debc34 100644 --- a/microsoft-edge/webview2/release-notes/archive.md +++ b/microsoft-edge/webview2/release-notes/archive.md @@ -6,7 +6,7 @@ ms.author: msedgedevrel ms.topic: article ms.service: microsoft-edge ms.subservice: devtools -ms.date: 03/18/2026 +ms.date: 04/13/2026 --- # Archived release notes for the WebView2 SDK + + +## Release SDK 1.0.3179.45, for Runtime 135 (Apr. 7, 2025) + +Release Date: Apr. 7, 2025, Runtime 135 + +[NuGet package for WebView2 SDK 1.0.3179.45](https://www.nuget.org/packages/Microsoft.Web.WebView2/1.0.3179.45) + +For full API compatibility, this Release version of the WebView2 SDK requires WebView2 Runtime version 135.0.3179.45 or higher. + + + +#### Promotions to Phase 3 (Stable in Release) + +No additional APIs have been promoted from Phase 2: Stable in Prerelease, to Phase 3: Stable in Release, in this Release SDK. + + + +#### Bug fixes + + + +###### Runtime-only + +* Fixed the HTML Select element (\) to make it selectable, in WPF apps. +* Fixed navigation of `edge://crashes` within a WebView2 control. +* Fixed potential crash and UI issues when invoking the Windows Credentials UI from a WebView2 instance. +* Fixed a bug where users were unable to type in an input field with autofill info. ([Issue #5144](https://github.com/MicrosoftEdge/WebView2Feedback/issues/5144)) + + @@ -36,7 +65,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) No Experimental APIs have been added in this Prerelease SDK. @@ -117,7 +146,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) No Experimental APIs have been added in this Prerelease SDK. @@ -172,7 +201,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -551,7 +580,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) No Experimental APIs have been added in this Prerelease SDK. @@ -701,7 +730,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -997,7 +1026,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) No Experimental APIs have been added in this Prerelease SDK. @@ -1073,7 +1102,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) No Experimental APIs have been added in this Prerelease SDK. @@ -1377,15 +1406,19 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. -* Added new Throttling Controls APIs which allows for efficient resource management by allowing you to throttle JavaScript timers. This is helpful in scenarios where a WebView2 control needs to remain visible, but needs to consume fewer resources (such as when the user isn't interacting with the content). These Throttling Controls APIs allow you to: - * Customize script timers (`setTimeout` and `setInterval`) throttling under different page states (foreground, background, and background with intensive throttling). - * Throttle script timers in select hosted iframes. +###### Throttling Controls APIs + +Added new Throttling Controls APIs which allows for efficient resource management by allowing you to throttle JavaScript timers. This is helpful in scenarios where a WebView2 control needs to remain visible, but needs to consume fewer resources (such as when the user isn't interacting with the content). These Throttling Controls APIs allow you to: + +* Customize script timers (`setTimeout` and `setInterval`) throttling under different page states (foreground, background, and background with intensive throttling). + +* Throttle script timers in select hosted iframes. ##### [.NET/C#](#tab/dotnetcsharp) @@ -1615,7 +1648,11 @@ The following APIs have been promoted from Phase 2: Stable in Prerelease, to Pha -* Updated the WebMessageObjects API to allow injecting DOM objects into WebView2 content that's constructed via the app, and via the `CoreWebView2.PostWebMessage` API in the other direction. Added a new web object type (`CoreWebView2FileSystemHandle`) to represent a file system handle that can be posted to the web content to provide it with filesystem access. +###### WebMessageObjects API: Inject DOM objects; file system handle + +Updated the WebMessageObjects API to allow injecting DOM objects into WebView2 content that's constructed via the app, and via the `CoreWebView2.PostWebMessage` API in the other direction. + +Added a new web object type (`CoreWebView2FileSystemHandle`) to represent a file system handle that can be posted to the web content to provide it with file system access. ##### [.NET/C#](#tab/dotnetcsharp) @@ -1732,16 +1769,20 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. -* Added a new `SaveFileSecurityCheckStarting` event. As a developer, you can register a handler on this event to get the file path, filename extension, and document origin URI information. Then you can apply your own rules to do actions such as the following: - * Allow saving the file without presenting a default security-warning UI about the file-type policy. - * Cancel the saving. - * Create your own UI to manage runtime file-type policies. +###### `SaveFileSecurityCheckStarting` event + +Added a new `SaveFileSecurityCheckStarting` event. As a developer, you can register a handler on this event to get the file path, filename extension, and document origin URI information. + +Then you can apply your own rules to do actions such as the following: +* Allow saving the file without presenting a default security-warning UI about the file-type policy. +* Cancel the saving. +* Create your own UI to manage runtime file-type policies. ##### [.NET/C#](#tab/dotnetcsharp) @@ -1791,7 +1832,11 @@ The following Experimental APIs have been added in this Prerelease SDK. -* Added a new `ScreenCaptureStarting` event. This event is raised whenever the WebView2 and/or iframe that corresponds to the `CoreWebView2Frame` (or to any of its descendant iframes) requests permission to use the Screen Capture API before the UI is shown. As a developer, you can then choose to block the UI from being displayed, or allow the UI to be displayed. +###### `ScreenCaptureStarting` event + +Added a new `ScreenCaptureStarting` event. This event is raised whenever the WebView2 and/or iframe that corresponds to the `CoreWebView2Frame` (or to any of its descendant iframes) requests permission to use the Screen Capture API before the UI is shown. + +As a developer, you can then choose to block the UI from being displayed, or allow the UI to be displayed. ##### [.NET/C#](#tab/dotnetcsharp) @@ -1847,7 +1892,11 @@ The following Experimental APIs have been added in this Prerelease SDK. -* Added a new `GetComICoreWebView2` method to the `CoreWebView2` .NET class that enables you to convert a `CoreWebView2` between .NET and COM. Added a new WinRT interface that enables you to convert a `CoreWebView2` between WinRT and COM. This allows you to interoperate between libraries that are written in different languages. +###### `GetComICoreWebView2` method + +Added a new `GetComICoreWebView2` method to the `CoreWebView2` .NET class that enables you to convert a `CoreWebView2` between .NET and COM. + +Added a new WinRT interface that enables you to convert a `CoreWebView2` between WinRT and COM. This allows you to interoperate between libraries that are written in different languages. ##### [.NET/C#](#tab/dotnetcsharp) @@ -1873,7 +1922,11 @@ The following APIs have been promoted from Phase 1: Experimental in Prerelease, -* Updated the WebMessageObjects API to allow injecting DOM objects into WebView2 content that's constructed via the app, and via the `CoreWebView2.PostWebMessage` API in the other direction. Added a new web object type to represent a file system handle that can be posted to the web content to provide it with filesystem access. +###### WebMessageObjects API: Inject DOM objects; file system handle + +Updated the WebMessageObjects API to allow injecting DOM objects into WebView2 content that's constructed via the app, and via the `CoreWebView2.PostWebMessage` API in the other direction. + +Added a new web object type (`CoreWebView2FileSystemHandle`) to represent a file system handle that can be posted to the web content to provide it with file system access. ##### [.NET/C#](#tab/dotnetcsharp) @@ -2014,7 +2067,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) No Experimental APIs have been added in this Prerelease SDK. @@ -2144,11 +2197,17 @@ The minimum .NET Framework version requirement for .NET WebView2, including WPF -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. -* Added `SaveAs` APIs that allow you to programmatically perform the **Save as** operation. You can use these APIs to block the default **Save as** dialog, and then either save silently, or build your own UI for **Save as**. These APIs pertain only to the **Save as** dialog, not the **Download** dialog, which continues to use the existing Download APIs. + + +###### `SaveAs` APIs + +Added `SaveAs` APIs that allow you to programmatically perform the **Save as** operation. You can use these APIs to block the default **Save as** dialog, and then either save silently, or build your own UI for **Save as**. + +These APIs pertain only to the **Save as** dialog, not the **Download** dialog, which continues to use the existing Download APIs. ##### [.NET/C#](#tab/dotnetcsharp) @@ -2435,7 +2494,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -2475,7 +2534,11 @@ The following Experimental APIs have been added in this Prerelease SDK. -* Updated the WebMessageObjects API to allow injecting DOM objects into WebView2 content that's constructed via the app and via the `CoreWebView2.PostWebMessage` API in the other direction. Added a new web object type to represent a file system handle that can be posted to the web content to provide it with filesystem access. +###### WebMessageObjects API: Inject DOM objects; file system handle + +Updated the WebMessageObjects API to allow injecting DOM objects into WebView2 content that's constructed via the app and via the `CoreWebView2.PostWebMessage` API in the other direction. + +Added a new web object type (`CoreWebView2FileSystemHandle`) to represent a file system handle that can be posted to the web content to provide it with file system access. ##### [.NET/C#](#tab/dotnetcsharp) @@ -2849,7 +2912,7 @@ New member names: -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -3064,7 +3127,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -3852,7 +3915,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -3992,7 +4055,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -4190,7 +4253,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -4267,7 +4330,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -4508,7 +4571,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) No Experimental APIs have been added in this Prerelease SDK. @@ -4913,7 +4976,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) No Experimental APIs have been added in this Prerelease SDK. @@ -5104,7 +5167,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -5529,7 +5592,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -5740,7 +5803,7 @@ The following APIs have been promoted from Phase 2: Stable in Prerelease, to Pha -* The SharedBuffer API: +* The SharedBuffer API: ##### [.NET/C#](#tab/dotnetcsharp) @@ -5812,7 +5875,7 @@ The following APIs have been promoted from Phase 2: Stable in Prerelease, to Pha -* APIs for managing permissions: +* APIs for managing permissions: ##### [.NET/C#](#tab/dotnetcsharp) @@ -5878,7 +5941,7 @@ The following APIs have been promoted from Phase 2: Stable in Prerelease, to Pha -APIs for managing tracking prevention: +* APIs for managing tracking prevention: ##### [.NET/C#](#tab/dotnetcsharp) @@ -5960,7 +6023,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -6192,7 +6255,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -6446,7 +6509,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -6600,7 +6663,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -6839,7 +6902,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -7171,7 +7234,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires #### Experimental APIs for 1.0.1222-prerelease +#### Experimental APIs (Phase 1: Experimental in Prerelease) for 1.0.1222-prerelease --> The following Experimental APIs have been added in this Prerelease SDK. @@ -7264,7 +7327,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -7352,7 +7415,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -7417,7 +7480,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -7516,7 +7579,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -7595,7 +7658,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -7692,7 +7755,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -7732,7 +7795,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -7876,7 +7939,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) * 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. @@ -7990,7 +8053,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -8070,7 +8133,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs have been added in this Prerelease SDK. @@ -8106,7 +8169,7 @@ The following Experimental APIs have been added in this Prerelease SDK. -###### Promotions to Phase 1 (Experimental in Prerelease) +###### Experimental APIs (Phase 1: Experimental in Prerelease) The following Experimental APIs for .NET have been added in this Prerelease SDK. diff --git a/microsoft-edge/webview2/release-notes/includes/templates.md b/microsoft-edge/webview2/release-notes/includes/templates.md index a52de3704f..f1290deca3 100644 --- a/microsoft-edge/webview2/release-notes/includes/templates.md +++ b/microsoft-edge/webview2/release-notes/includes/templates.md @@ -3,24 +3,31 @@ Release Date: Mmm. dd, yyyy -[NuGet package for WebView2 SDK 1.0.####-prerelease](https://www.nuget.org/packages/Microsoft.Web.WebView2/) - For full API compatibility, this Prerelease version of the WebView2 SDK requires the WebView2 Runtime that ships with Microsoft Edge version ###.0.####.0 or higher. + +#### Breaking changes + + + + +###### heading + + #### General changes + +###### heading + + -#### Promotions to Phase 1 (Experimental in Prerelease) - +#### Experimental APIs (Phase 1: Experimental in Prerelease) No Experimental APIs have been added in this Prerelease SDK. The following APIs are in Phase 1: Experimental in Prerelease, and have been added in this Prerelease SDK. @@ -45,7 +52,7 @@ description No APIs have been promoted from Phase 1: Experimental in Prerelease, to Phase 2: Stable in Prerelease, in this Prerelease SDK. The following APIs have been promoted from Phase 1: Experimental in Prerelease, to Phase 2: Stable in Prerelease, and are included in this Prerelease SDK. -The following APIs skipped Phase 1: Experimental in Prerelease, and have been directly added to Phase 2: Stable in Prerelease, and are included in this Prerelease SDK. +The following APIs skipped Phase 1: Experimental in Prerelease, and have been directly added to Phase 2: Stable in Prerelease, and are included in this Prerelease SDK. @@ -94,10 +101,7 @@ This Prerelease SDK includes the following bug fixes. Release Date: Mmm. dd, yyyy -[NuGet package for WebView2 SDK 1.0.####.##](https://www.nuget.org/packages/Microsoft.Web.WebView2/) - For full API compatibility, this Release version of the WebView2 SDK requires WebView2 Runtime version ###.0.####.## or higher. diff --git a/microsoft-edge/webview2/release-notes/index.md b/microsoft-edge/webview2/release-notes/index.md index a9a86b32cf..5b0cc6519e 100644 --- a/microsoft-edge/webview2/release-notes/index.md +++ b/microsoft-edge/webview2/release-notes/index.md @@ -6,7 +6,7 @@ ms.author: msedgedevrel ms.topic: article ms.service: microsoft-edge ms.subservice: webview -ms.date: 03/18/2026 +ms.date: 04/13/2026 --- # Release notes for the WebView2 SDK @@ -25,7 +26,252 @@ if change h2 headings pattern, enter work item: update links in announcements The following new features and bug fixes are in the WebView2 Release SDK and Prerelease SDK, for SDKs during the past year. - + + +## Prerelease SDK 1.0.3965-prerelease, for Runtime 148 (Apr. 13, 2026) + +Release Date: April 13, 2026 + +[NuGet package for WebView2 SDK 1.0.3965-prerelease](https://www.nuget.org/packages/Microsoft.Web.WebView2/1.0.3965-prerelease) + +For full API compatibility, this Prerelease version of the WebView2 SDK requires the WebView2 Runtime that ships with Microsoft Edge version 148.0.3965.0 or higher. + + + +#### Breaking changes + + + +###### Granular process failure reasons for the `ProcessFailed` event + +The `ProcessFailed` event fires when a WebView2-associated process (such as a renderer or GPU process) exits unexpectedly, allowing apps to respond with recovery logic or diagnostics. + +Before this change: The `CoreWebView2ProcessFailedEventArgs.Reason` property returned `Unexpected` for three distinct exit scenarios (normal exit, abnormal exit, and code integrity failure), making it impossible for apps to distinguish between them. + +After this change: When the `msWebView2GranularProcessFailedReason` feature flag is enabled, the `CoreWebView2ProcessFailedEventArgs.Reason` property returns the following new, granular `CoreWebView2ProcessFailedReason` enum values, instead of `Unexpected`: + +* `NormalExit` — The process exited normally (exit code 0). + +* `AbnormalExit` — The process exited abnormally (non-zero exit code), but did not crash or get killed. + +* `IntegrityFailure` — The OS terminated the process due to a code integrity failure, such as when a DLL fails Windows Code Integrity verification. + +The `msWebView2GranularProcessFailedReason` feature flag is disabled by default in releases 148 and 149, giving apps two releases to proactively test. Starting in release 150, the feature will be enabled by default, and apps will receive the granular values. To validate your WebView2 app's behavior, enable the feature flag, as follows: + +`set WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS=--enable-features=msWebView2GranularProcessFailedReason` + +This is a bug fix for the Runtime and SDK. These enum members are not a new API that has been introduced; this is a modification of an existing Phase 2: Stable in Prerelease (Phase 2) API. + +See also: +* [[Breaking Change] Granular Process Failure Reasons in WebView2](https://github.com/MicrosoftEdge/WebView2Announcements/issues/todo) + +##### [.NET/C#](#tab/dotnetcsharp) + +* `CoreWebView2ProcessFailedEventArgs` Class + * [CoreWebView2ProcessFailedEventArgs.Reason Property](/dotnet/api/microsoft.web.webview2.core.corewebview2processfailedeventargs.reason?view=webview2-dotnet-1.0.3965-prerelease&preserve-view=true) + +* [CoreWebView2ProcessFailedReason Enum](/dotnet/api/microsoft.web.webview2.core.corewebview2processfailedreason?view=webview2-dotnet-1.0.3965-prerelease&preserve-view=true) + * `AbnormalExit` + * `IntegrityFailure` + * `NormalExit` + +##### [WinRT/C#](#tab/winrtcsharp) + +* `CoreWebView2ProcessFailedEventArgs` Class + * [CoreWebView2ProcessFailedEventArgs.Reason Property](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2processfailedeventargs?view=webview2-winrt-1.0.3965-prerelease&preserve-view=true#reason) + +* [CoreWebView2ProcessFailedReason Enum](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2processfailedreason?view=webview2-winrt-1.0.3965-prerelease&preserve-view=true) + * `AbnormalExit` + * `IntegrityFailure` + * `NormalExit` + +##### [Win32/C++](#tab/win32cpp) + +* `ICoreWebView2ProcessFailedEventArgs2` + * [ICoreWebView2ProcessFailedEventArgs2::get_Reason](/microsoft-edge/webview2/reference/win32/icorewebview2processfailedeventargs2?view=webview2-1.0.3965-prerelease&preserve-view=true#get_reason) + +* [COREWEBVIEW2_PROCESS_FAILED_REASON enum](/microsoft-edge/webview2/reference/win32/webview2-idl?view=webview2-1.0.3965-prerelease&preserve-view=true#corewebview2_process_failed_reason) + * `COREWEBVIEW2_PROCESS_FAILED_REASON_ABNORMAL_EXIT` + * `COREWEBVIEW2_PROCESS_FAILED_REASON_INTEGRITY_FAILURE` + * `COREWEBVIEW2_PROCESS_FAILED_REASON_NORMAL_EXIT` + +--- + + + +#### Experimental APIs (Phase 1: Experimental in Prerelease) + +The following APIs are in Phase 1: Experimental in Prerelease, and have been added in this Prerelease SDK. + + + +###### Origin Configuration API for WebView2 + +The Origin Configuration API enables WebView2 apps to apply different feature and security policies based on the origin of hosted content. By default, WebView2 enforces a uniform policy across all origins. This API allows apps to selectively enable or disable specific features (such as Enhanced Security Mode) for individual origins or origin patterns. + +Use the `SetOriginFeatures` method on `CoreWebView2Profile` to configure feature settings for one or more origins. Origins can be specified as exact strings (such as `https://contoso.com`) or wildcard patterns (such as `https://[*.]contoso.com`) to match subdomains, protocols, or ports. + +When multiple configurations apply to the same origin, the most specific pattern takes precedence, evaluated by hostname, then scheme, then port. + +Use `GetEffectiveFeaturesForOrigin` to asynchronously retrieve the computed feature settings for a given origin. + +##### [.NET/C#](#tab/dotnetcsharp) + + +* [CoreWebView2OriginFeature Enum](/dotnet/api/microsoft.web.webview2.core.corewebview2originfeature?view=webview2-dotnet-1.0.3965-prerelease&preserve-view=true) + * `EnhancedSecurityMode` + + +* [CoreWebView2OriginFeatureSetting Class](/dotnet/api/microsoft.web.webview2.core.corewebview2originfeaturesetting?view=webview2-dotnet-1.0.3965-prerelease&preserve-view=true) + * [CoreWebView2OriginFeatureSetting.Feature Property](/dotnet/api/microsoft.web.webview2.core.corewebview2originfeaturesetting.feature?view=webview2-dotnet-1.0.3965-prerelease&preserve-view=true) + * [CoreWebView2OriginFeatureSetting.State Property](/dotnet/api/microsoft.web.webview2.core.corewebview2originfeaturesetting.state?view=webview2-dotnet-1.0.3965-prerelease&preserve-view=true) + + +* [CoreWebView2OriginFeatureState Enum](/dotnet/api/microsoft.web.webview2.core.corewebview2originfeaturestate?view=webview2-dotnet-1.0.3965-prerelease&preserve-view=true) + * `Disabled` + * `Enabled` + + +* `CoreWebView2Profile Class` + * [CoreWebView2Profile.GetEffectiveFeaturesForOriginAsync Method](/dotnet/api/microsoft.web.webview2.core.corewebview2profile.geteffectivefeaturesfororiginasync?view=webview2-dotnet-1.0.3965-prerelease&preserve-view=true) + * [CoreWebView2Profile.SetOriginFeatures Method](/dotnet/api/microsoft.web.webview2.core.corewebview2profile.setoriginfeatures?view=webview2-dotnet-1.0.3965-prerelease&preserve-view=true) + +##### [WinRT/C#](#tab/winrtcsharp) + + +* [CoreWebView2OriginFeature Enum](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2originfeature?view=webview2-winrt-1.0.3965-prerelease&preserve-view=true) + * `EnhancedSecurityMode` + + +* [CoreWebView2OriginFeatureSetting Class](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2originfeaturesetting?view=webview2-winrt-1.0.3965-prerelease&preserve-view=true) + * [CoreWebView2OriginFeatureSetting.Feature Property](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2originfeaturesetting?view=webview2-winrt-1.0.3965-prerelease&preserve-view=true#feature) + * [CoreWebView2OriginFeatureSetting.State Property](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2originfeaturesetting?view=webview2-winrt-1.0.3965-prerelease&preserve-view=true#state) + + +* [CoreWebView2OriginFeatureState Enum](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2originfeaturestate?view=webview2-winrt-1.0.3965-prerelease&preserve-view=true) + * `Disabled` + * `Enabled` + + +* `CoreWebView2Profile Class` + * [CoreWebView2Profile.GetEffectiveFeaturesForOriginAsync Method](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2profile?view=webview2-winrt-1.0.3965-prerelease&preserve-view=true#geteffectivefeaturesfororiginasync) + * [CoreWebView2Profile.SetOriginFeatures Method](/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2profile?view=webview2-winrt-1.0.3965-prerelease&preserve-view=true#setoriginfeatures) + +##### [Win32/C++](#tab/win32cpp) + + +* [ICoreWebView2ExperimentalGetEffectiveFeaturesForOriginCompletedHandler](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalgeteffectivefeaturesfororigincompletedhandler?view=webview2-1.0.3965-prerelease&preserve-view=true) + + +* [ICoreWebView2ExperimentalOriginFeatureSetting](/microsoft-edge/webview2/reference/win32/icorewebview2experimentaloriginfeaturesetting?view=webview2-1.0.3965-prerelease&preserve-view=true) + * [ICoreWebView2ExperimentalOriginFeatureSetting::get_Feature](/microsoft-edge/webview2/reference/win32/icorewebview2experimentaloriginfeaturesetting?view=webview2-1.0.3965-prerelease&preserve-view=true#get_feature) + * [ICoreWebView2ExperimentalOriginFeatureSetting::get_State](/microsoft-edge/webview2/reference/win32/icorewebview2experimentaloriginfeaturesetting?view=webview2-1.0.3965-prerelease&preserve-view=true#get_state) + + +* [ICoreWebView2ExperimentalOriginFeatureSettingCollectionView](/microsoft-edge/webview2/reference/win32/icorewebview2experimentaloriginfeaturesettingcollectionview?view=webview2-1.0.3965-prerelease&preserve-view=true) + * [ICoreWebView2ExperimentalOriginFeatureSettingCollectionView::get_Count](/microsoft-edge/webview2/reference/win32/icorewebview2experimentaloriginfeaturesettingcollectionview?view=webview2-1.0.3965-prerelease&preserve-view=true#get_count) + * [ICoreWebView2ExperimentalOriginFeatureSettingCollectionView::GetValueAtIndex](/microsoft-edge/webview2/reference/win32/icorewebview2experimentaloriginfeaturesettingcollectionview?view=webview2-1.0.3965-prerelease&preserve-view=true#getvalueatindex) + + +* [ICoreWebView2ExperimentalProfile16](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalprofile16?view=webview2-1.0.3965-prerelease&preserve-view=true) + * [ICoreWebView2ExperimentalProfile16::CreateOriginFeatureSetting](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalprofile16?view=webview2-1.0.3965-prerelease&preserve-view=true#createoriginfeaturesetting) + * [ICoreWebView2ExperimentalProfile16::GetEffectiveFeaturesForOrigin](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalprofile16?view=webview2-1.0.3965-prerelease&preserve-view=true#geteffectivefeaturesfororigin) + * [ICoreWebView2ExperimentalProfile16::SetOriginFeatures](/microsoft-edge/webview2/reference/win32/icorewebview2experimentalprofile16?view=webview2-1.0.3965-prerelease&preserve-view=true#setoriginfeatures) + + +* [COREWEBVIEW2_ORIGIN_FEATURE enum](/microsoft-edge/webview2/reference/win32/webview2experimental-idl?view=webview2-1.0.3965-prerelease&preserve-view=true#corewebview2_origin_feature) + * `COREWEBVIEW2_ORIGIN_FEATURE_ENHANCED_SECURITY_MODE` + + +* [COREWEBVIEW2_ORIGIN_FEATURE_STATE enum](/microsoft-edge/webview2/reference/win32/webview2experimental-idl?view=webview2-1.0.3965-prerelease&preserve-view=true#corewebview2_origin_feature_state) + * `COREWEBVIEW2_ORIGIN_FEATURE_STATE_DISABLED` + * `COREWEBVIEW2_ORIGIN_FEATURE_STATE_ENABLED` + +--- + + + +#### Phase 2 (Stable in Prerelease) + +The following APIs have been modified in Phase 2: Stable in Prerelease, and are included in this Prerelease SDK. + + + +###### Granular process failure reasons for the `ProcessFailed` event + +Replaced the `CoreWebView2ProcessFailedReason.Unexpected` enum member by more granular values, for the `CoreWebView2ProcessFailedReason` enum that's returned by the `CoreWebView2ProcessFailedEventArgs.Reason` property. + +This is a breaking change; see [Granular process failure reasons for the `ProcessFailed` event](#granular-process-failure-reasons-for-the-processfailed-event), above. + +These enum members are not a new API that has been introduced; this is a modification of an existing Phase 2: Stable in Prerelease (Phase 2) API. + + + +#### Bug fixes + +This Prerelease SDK includes the following bug fixes. + + + +###### Runtime and SDK + +* Replaced the `CoreWebView2ProcessFailedReason.Unexpected` enum member by more granular values, for the `CoreWebView2ProcessFailedReason` enum that's returned by the `CoreWebView2ProcessFailedEventArgs.Reason` property. This is a breaking change. See [Granular process failure reasons for the `ProcessFailed` event](#granular-process-failure-reasons-for-the-processfailed-event), above. + + + +###### Runtime-only + +* Fixed **Print** dialog dropdown selection issues in `WebView2CompositionControl`. ([Issue #5195](https://github.com/MicrosoftEdge/WebView2Feedback/issues/5195)) + +* Disabled the Domain Actions component for WebView2. + +* Disabled `WebUSBDetector` notification for WebView2. + +* Fixed stale `ICoreWebView2Profile3::get_PreferredTrackingPreventionLevel`. + +* Fixed WDP clients being unable to connect to a remote debugging server. + +* Fixed an issue for the WPF sample app, where closing the window left a lingering WPF process. + + + +###### SDK-only + +* Enabled histogram logging for browser process crashes in WebView2. + + + + + +## Release SDK 1.0.3912.50, for Runtime 147 (Apr. 13, 2026) + +Release Date: Apr. 13, 2026 + +[NuGet package for WebView2 SDK 1.0.3912.50](https://www.nuget.org/packages/Microsoft.Web.WebView2/1.0.3912.50) + +For full API compatibility, this Release version of the WebView2 SDK requires WebView2 Runtime version 147.0.3912.50 or higher. + + + +#### Promotions to Phase 3 (Stable in Release) + +No additional APIs have been promoted from Phase 2: Stable in Prerelease, to Phase 3: Stable in Release, in this Release SDK. + + + +#### Bug fixes + +This Release SDK includes the following bug fixes. + + + +###### Runtime-only + +* Disabled the Domain Actions component for WebView2. + +* Fixed WDP clients being unable to connect to a remote debugging server. + + @@ -39,15 +285,15 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) -No APIs have been promoted from Phase 1: Experimental in Prerelease, to Phase 2: Stable in Prerelease, in this Prerelease SDK. +No Experimental APIs have been added in this Prerelease SDK. #### Promotions to Phase 2 (Stable in Prerelease) -The following APIs skipped Phase 1: Experimental in Prerelease, and have been directly added to Phase 2: Stable in Prerelease, and are included in this Prerelease SDK. +The following APIs skipped Phase 1: Experimental in Prerelease, and have been directly added to Phase 2: Stable in Prerelease, and are included in this Prerelease SDK. @@ -257,7 +503,7 @@ After the LNA feature stabilizes, we'll share an updated timeline for enabling t -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following APIs are in Phase 1: Experimental in Prerelease, and have been added in this Prerelease SDK. @@ -361,10 +607,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) - +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following APIs are in Phase 1: Experimental in Prerelease, and have been added in this Prerelease SDK. @@ -527,7 +770,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following APIs are in Phase 1: Experimental in Prerelease, and have been added in this Prerelease SDK. @@ -683,7 +926,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) No Experimental APIs have been added in this Prerelease SDK. @@ -750,7 +993,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following APIs are in Phase 1: Experimental in Prerelease, and have been added in this Prerelease SDK. @@ -911,7 +1154,7 @@ These foundational improvements provide stable, thoroughly tested functionality -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) No Experimental APIs have been added in this Prerelease SDK. @@ -981,12 +1224,10 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) No Experimental APIs have been added in this Prerelease SDK. ---- - #### Promotions to Phase 2 (Stable in Prerelease) @@ -1021,7 +1262,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) The following APIs are in Phase 1: Experimental in Prerelease, and have been added in this Prerelease SDK. @@ -1699,7 +1940,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) No Experimental APIs have been added in this Prerelease SDK. @@ -1813,7 +2054,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) No Experimental APIs have been added in this Prerelease SDK. @@ -1935,7 +2176,7 @@ For full API compatibility, this Prerelease version of the WebView2 SDK requires -#### Promotions to Phase 1 (Experimental in Prerelease) +#### Experimental APIs (Phase 1: Experimental in Prerelease) No Experimental APIs have been added in this Prerelease SDK. @@ -2001,37 +2242,6 @@ Use this API to manage iframe tracking on a page that contains multiple levels o - -## Release SDK 1.0.3179.45, for Runtime 135 (Apr. 7, 2025) - -Release Date: Apr. 7, 2025, Runtime 135 - -[NuGet package for WebView2 SDK 1.0.3179.45](https://www.nuget.org/packages/Microsoft.Web.WebView2/1.0.3179.45) - -For full API compatibility, this Release version of the WebView2 SDK requires WebView2 Runtime version 135.0.3179.45 or higher. - - - -#### Promotions to Phase 3 (Stable in Release) - -No additional APIs have been promoted from Phase 2: Stable in Prerelease, to Phase 3: Stable in Release, in this Release SDK. - - - -#### Bug fixes - - - -###### Runtime-only - -* Fixed the HTML Select element (\) to make it selectable, in WPF apps. -* Fixed navigation of `edge://crashes` within a WebView2 control. -* Fixed potential crash and UI issues when invoking the Windows Credentials UI from a WebView2 instance. -* Fixed a bug where users were unable to type in an input field with autofill info. ([Issue #5144](https://github.com/MicrosoftEdge/WebView2Feedback/issues/5144)) - - - - ## See also