Release Notes for the WebView2 SDK

These Release Notes provide information about new features and bug fixes that are included in the WebView2 Release SDK and the WebView2 Prerelease SDK.

1.0.2957.106

Release Date: January 20, 2025

NuGet package for WebView2 SDK 1.0.2957.106

For full API compatibility, this Release version of the WebView2 SDK requires WebView2 Runtime version 132.0.2957.106 or higher.

Promotions

The following APIs have been promoted to Stable and are now included in this Release SDK.

Show WPF elements on top of the WebView2 layer (WebView2CompositionControl)

The WebView2CompositionControl prevents the WebView2 control from being the topmost layer in a WPF app and obscuring any WPF elements. Microsoft.Web.WebView2.Wpf.WebView2CompositionControl is a drop-in replacement for the standard WPF WebView2 control. Both the WebView2 control and WebView2CompositionControl implement the Microsoft.Web.WebView2.Wpf.IWebView2 interface. Both of them derive from FrameworkElement, as follows:

  • FrameworkElement -> HwndHost -> WebView2.
  • FrameworkElement -> Control -> WebView2CompositionControl.

Background: If you're building a Windows Presentation Foundation (WPF) app and using the WebView2 control, you may find that your app runs into "airspace" issues, where the WebView2 control is always displayed on top, hiding any WPF elements in the same location, even if you try to specify the WPF elements to be above the WebView2 control (using visual tree order or the z-index property, for example).

This issue occurs because the WPF control uses the WPF HwndHost to host the Win32 WebView2 control, and HwndHost has an issue with airspace; see Mitigating Airspace Issues In WPF Applications.

See also:

Bug fixes

Runtime-only
  • Fixed a regression where display changes can cause WebView2 to render smaller than the app window.
SDK-only
  • Fixed an issue in the WPF WebView2CompositionControl where it's not displayed if it's initialized with size (0,0), such as when it's initialized in a TabItem of a TabControl. (Issue #4941)

1.0.3079-prerelease

Release Date: January 24, 2025

NuGet package for WebView2 SDK 1.0.3079-prerelease

For full API compatibility, this Prerelease version of the WebView2 SDK requires the WebView2 Runtime that ships with Microsoft Edge version 134.0.3079.0 or higher.

Experimental APIs

The following Experimental APIs have been added in this Prerelease SDK.

Customize the Find behavior (Find API)

The Find API allows you to programmatically control Find operations, and enables adding the following functionality to your app:

  • Customize Find options, including Find Term, Case Sensitivity, Word Matching, Match Highlighting, and Default UI Suppression.
  • Find text strings and navigate among them within a WebView2 control.
  • Programmatically initiate Find operations, and navigate Find results.
  • Suppress the default Find UI.
  • Track the status of Find operations.

There are known issues with the Find API for PDF documents. When you view a PDF document within a WebView2 control, the Find feature currently only provides the first index and the number of matches found. For example, if the string occurs three times in a PDF, the UI would say 1/3 and would not support programmatically calling Next or Previous. We are actively investigating these issues, and we encourage you to report any problems you encounter, by using the WebView2Feedback repo.

Customize the drag and drop behavior (DragStarting API)

The DragStarting API overrides the default drag and drop behavior when running in visual hosting mode. The DragStarting event notifies your app when the user starts a drag operation in the WebView2, and provides the state that's necessary to override the default WebView2 drag operation with your own logic.

  • Use DragStarting on the ICoreWebView2ExperimentalCompositionController6 to add an event handler that's invoked when the drag operation is starting.
  • Use ICoreWebView2ExperimentalDragStartingEventArgs to start your own drag operation.
    • Use the GetDeferral method to execute any async drag logic and call back into the WebView at a later time.
    • Use the Handled property to let the WebView2 know whether to use its own drag logic.
Track navigation history for nested iframes (FrameCreatedEvent API)

The FrameCreatedEvent API supports nested iframes, such as recording the navigation history for a second-level iframe. Without this API, WebView2 only tracks first-level iframes, which are the direct child iframes of the main frame. Using this API, your app can subscribe to the nested iframe creation event, giving the app access to all properties, methods, and events of CoreWebView2Frame for the nested iframe.

Use this API to manage iframe tracking on a page that contains multiple levels of iframes. You can choose to track any of the following:

  • Only the main page and first-level iframes (the default behavior).
  • A partial WebView2 frames tree with specific iframes of interest.
  • The full WebView2 frames tree.
Set default background color on WebView2 initialization (DefaultBackgroundColor API)

The DefaultBackgroundColor API allows users to set the DefaultBackgroundColor property at initialization. This prevents a disruptive white flash during the WebView2 loading process.

Promotions

The following APIs have been promoted from Experimental to Stable in this Prerelease SDK.

Show WPF elements on top of the WebView2 layer (WebView2CompositionControl)

The WebView2CompositionControl prevents the WebView2 control from being the topmost layer in a WPF app and obscuring any WPF elements. Microsoft.Web.WebView2.Wpf.WebView2CompositionControl is a drop-in replacement for the standard WPF WebView2 control. Both the WebView2 control and WebView2CompositionControl implement the Microsoft.Web.WebView2.Wpf.IWebView2 interface. Both of them derive from FrameworkElement, as follows:

  • FrameworkElement -> HwndHost -> WebView2.
  • FrameworkElement -> Control -> WebView2CompositionControl.

Background: If you're building a Windows Presentation Foundation (WPF) app and using the WebView2 control, you may find that your app runs into "airspace" issues, where the WebView2 control is always displayed on top, hiding any WPF elements in the same location, even if you try to specify the WPF elements to be above the WebView2 control (using visual tree order or the z-index property, for example).

This issue occurs because the WPF control uses the WPF HwndHost to host the Win32 WebView2 control, and HwndHost has an issue with airspace; see Mitigating Airspace Issues In WPF Applications.

See also:

Bug fixes

Runtime-only
  • Fixed a regression where display changes can cause WebView2 to render smaller than app window.
  • Enabled the IsolateSandboxedIframes upstream feature for WebView2.
  • Prevented deleting a service worker when the version changes.
  • The CleanUpSome API in Hostobject now only does garbage collection for the full heap. CleanUpSome has been removed from the V8 engine.
  • Fixed a regression of AreBrowserAcceleratorKeysEnabled. (Issue #5033)
  • Fixed a bug where IsDefaultDownloadDialogOpenChanged wasn't triggered when a dialog is closed by using the keyboard. (Issue #4807)
SDK-only
  • Fixed an issue in the WPF WebView2CompositionControl where it's not displayed if it's initialized with size (0,0), such as when it's initialized in a TabItem of a TabControl. (Issue #4941)

1.0.2903.40

Release Date: November 18, 2024

NuGet package for WebView2 SDK 1.0.2903.40

For full API compatibility, this Release version of the WebView2 SDK requires WebView2 Runtime version 131.0.2903.40 or higher.

Promotions

The following APIs have been promoted to Stable and are now included in this Release SDK.

Control whether the screen capture UI is shown (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. The app can then block the UI from being displayed, or allow the UI to be displayed.

Bug fixes

Runtime-only
  • Allowed the Download dialog to receive initial focus on launch.

General changes

  • The Microsoft Edge WebView2 Runtime is no longer listed in Windows Settings > Apps > Installed apps, because it is a persistent system component.

1.0.2950-prerelease

Release Date: November 18, 2024

NuGet package for WebView2 SDK 1.0.2950-prerelease

For full API compatibility, this Prerelease version of the WebView2 SDK requires the WebView2 Runtime that ships with Microsoft Edge version 132.0.2950.0 or higher.

Experimental APIs

No Experimental APIs have been added in this Prerelease SDK.

Promotions

No APIs have been promoted from Experimental to Stable in this Prerelease SDK.

Bug fixes

Runtime-only
  • Allowed the Download dialog to receive initial focus on launch.
  • Fixed a crash while cancelling navigation to certain sites in FrameNavigationStarting. (Issue #4843)
  • Postponed customizing the context menu when the touch selection menu is being displayed. (Issue #4737)
SDK-only
  • Added Arm64ec support.
  • Fixed an issue where WebView2 running in "Window to Visual" mode couldn't receive accelerator input.

1.0.2849.39

Release Date: October 21, 2024

NuGet package for WebView2 SDK 1.0.2849.39

For full API compatibility, this Release version of the WebView2 SDK requires WebView2 Runtime version 130.0.2849.39 or higher.

Promotions

The following APIs have been promoted to Stable and are now included in this Release SDK.

Configure the security warning when saving a file (SaveFileSecurityCheckStarting event)

Added a new SaveFileSecurityCheckStarting event. Your app can register a handler on this event to get the file path, filename extension, and document origin URI information. You can then 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.

Bug fixes

Runtime-only
  • Fixed a Download dialog focus issue when pressing Tab or Shift+Tab to switch into the Webview2 control.
SDK-only
  • Using CoreWebView2.AddWebResourceRequestedFilter without a CoreWebView2WebResourceRequestSourceKinds parameter is now deprecated. See the .NET CoreWebView2.AddWebResourceRequestedFilter Method.
  • Added the .NET 8 TargetFramework for C# WinRT, enabled AOT (ahead-of-time) compatibility, and disabled runtime marshalling.

1.0.2895-prerelease

Release Date: October 21, 2024

NuGet package for WebView2 SDK 1.0.2895-prerelease

For full API compatibility, this Prerelease version of the WebView2 SDK requires the WebView2 Runtime that ships with Microsoft Edge version 131.0.2895.0 or higher.

Experimental APIs

The following Experimental APIs have been added in this Prerelease SDK.

RestartRequested event when WebView2 needs to restart

Added a new RestartRequested event. The RestartRequested event is raised whenever WebView2 needs to restart to apply updates or configuration changes. You can use this API to detect when WebView2 needs to restart, and take appropriate actions. The Priority property of the RestartRequested event arguments indicates the priority of the restart request:

  • High indicates that the app should prompt users to restart as soon as possible.
  • Normal indicates that the app should remind users to restart, on a best-effort basis.

Promotions

The following APIs have been promoted from Experimental to Stable in this Prerelease SDK.

Control whether the screen capture UI is shown (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. The app can then block the UI from being displayed, or allow the UI to be displayed.

Configure the security warning when saving a file (SaveFileSecurityCheckStarting event)

Added a new SaveFileSecurityCheckStarting event. Your app can register a handler on this event to get the file path, filename extension, and document origin URI information. You can then 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.

Bug fixes

SDK-only
  • Fixed Arm64 incompatibility with WindowsAppSDK 1.6.
  • Removed extra WebView2Loader.dll in WinAppSDK case.
  • Using CoreWebView2.AddWebResourceRequestedFilter without a CoreWebView2WebResourceRequestSourceKinds parameter is now deprecated. See the .NET CoreWebView2.AddWebResourceRequestedFilter Method.

1.0.2792.45

Release Date: September 23, 2024

NuGet package for WebView2 SDK 1.0.2792.45

For full API compatibility, this Release version of the WebView2 SDK requires WebView2 Runtime version 129.0.2792.45 or higher.

Promotions

No additional APIs have been promoted to Stable and added in this Release SDK.

Bug fixes

SDK-only
  • Fixed an SDK dependency for .NET projects. (Issue #4743)

1.0.2839-prerelease

Release Date: September 23, 2024

NuGet package for WebView2 SDK 1.0.2839-prerelease

For full API compatibility, this Prerelease version of the WebView2 SDK requires the WebView2 Runtime that ships with Microsoft Edge version 130.0.2839.0 or higher.

Experimental APIs

No Experimental APIs have been added in this Prerelease SDK.

Promotions

No APIs have been promoted from Experimental to Stable in this Prerelease SDK.

Bug fixes

Runtime-only
  • Fixed an issue where focusing on a WebView2 control in WinAppSDK with the Windows "Scroll inactive windows" setting disabled caused scrolling to fail.
  • Blocked edge://wallet in WebView2. (Issue #4710)
  • Cleared the environment variable for default background color in .NET WebView2 controls after the controller has finished creation.
  • Enabled accessibility support for Webview2 in visual hosting mode.
  • Fixed a bug with removing a "web resource requested" filter for multiple sources when one of them is Document.
  • Fixed a regression where DataList was not visible in WinUI or in other visually hosted WebView2 instances.
SDK-only
  • Fixed an SDK dependency for .NET projects. (Issue #4743)
  • Fixed a compatibility issue when calling GetAvailableBrowserVersionString() with an older WebView2Loader.dll. (Issue #4395)
  • Fixed issues when compiling wv2winrt-generated code with the cpp20 and /permissive- options.
  • Added the .NET 8 TargetFramework for C# WinRT, enabled AOT (ahead-of-time) compatibility, and disabled runtime marshalling.

1.0.2739.15

Release Date: August 26, 2024

NuGet package for WebView2 SDK 1.0.2739.15

For full API compatibility, this Release version of the WebView2 SDK requires WebView2 Runtime version 128.0.2739.15 or higher.

Promotions

The following APIs have been promoted to Stable and are now included in this Release SDK.

Web notification handling

Added support for Web Notification, for non-persistent notifications. The NotificationReceived event for CoreWebView2 controls web notification handling, allowing customization or suppression by the host app. Unhandled notifications default to WebView2's UI.

Save as

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.

Bug fixes

There are no bug fixes in this Release SDK.

1.0.2783-prerelease

Release Date: August 26, 2024

NuGet package for WebView2 SDK 1.0.2783-prerelease

For full API compatibility, this Prerelease version of the WebView2 SDK requires the WebView2 Runtime that ships with Microsoft Edge version 129.0.2783.0 or higher.

Experimental APIs

No Experimental APIs have been added in this Prerelease SDK.

Promotions

No APIs have been promoted from Experimental to Stable in this Prerelease SDK.

Bug fixes

Runtime and SDK
  • Re-enabled the default behavior of SetUserAgent: by default, SetUserAgent is effective for cross-origin iframes.
Runtime-only
  • Enabled the interactive dragging feature by default. See edge-webview-interactive-dragging in WebView2 browser flags.

  • Disabled IsolateSandboxedIframes for WebView2.

  • Fixed an issue where WebView creation fails when multiple instances are launched at the same time. (Issue #4731)

  • Fixed a bug in WinRT JavaScript projection where caching existing properties in objects whose name contains Proxy or Function caused an error due to name collision.

  • Fixed a bug where the WebView2 control became the wrong size after disconnecting and reconnecting a monitor.

  • Fixed an issue where "mailto:" links leave an untitled popup window open, instead of automatically closing the popup window.

SDK-only
  • C# WinRT projection now works on UWP.

  • Fixed an issue to ensure that GeneratedFilesDir no longer appears in Visual Studio for C# WinRT projection.

See also