Contents

Posted on

DotNetBrowser 4.0.0

We are excited to announce the release of DotNetBrowser 4.0.0!

This new major version introduces a number of new features and improvements, including support for trimming and AOT.

We did not change the API significantly, so you can easily migrate your existing code to the new version. However, we recommend that you review the migration guide to learn about the changes and improvements in DotNetBrowser 4.0.0.

More information about the new features and improvements in DotNetBrowser 4.0.0 can be found below.

Trimming and Native AOT Support (.NET 8+) 

Added trimming and Native AOT compatibility for key packages targeting .NET 8+. This feature works with console and Avalonia UI applications.

You can find more information in this article.

Rendering mode per browser 

Previously, the rendering mode was fixed for the entire IEngine. All browsers created from that engine shared the same mode, which made it impossible to share a profile between an off-screen and a hardware-accelerated browser.

In DotNetBrowser 4.0.0, you can specify the rendering mode for each IBrowser instance individually:

IBrowser browser = engine.Profiles.Default.CreateBrowser(RenderingMode.OffScreen);

Browsers created with IEngine.CreateBrowser() or IProfile.CreateBrowser() without arguments still use the engine’s default rendering mode. Popup browsers inherit the rendering mode of their parent browser.

Learn more in the Rendering guide.

New JavaScript types 

In this version, we add two new data types that are automatically converted between .NET and JavaScript:

  • BigIntSystem.Numerics.BigInteger
  • SymbolDotNetBrowser.Js.IJsSymbol

For example:

BigInteger number = IFrame.ExecuteJavaScript<BigInteger>("9007199254740991n").Result;
IJsSymbol symbol = IFrame.ExecuteJavaScript<IJsSymbol>("Symbol('bacf2f')").Result;

Check out the JavaScript guide for more details.

Delegated screen capturing 

DotNetBrowser now supports delegated screen capturing. That is the mode where the OS presents a system dialog for the user to choose the capture source, instead of exposing all windows and screens directly to the application.

Delegated capturing is the default mode on Linux/Wayland.

Chromium 147.0.7727.117 

We upgraded Chromium to a newer version, which introduces 50 security fixes. Among them:

You can read more about it in the Chromium blog posts:

Quality enhancements 

  • Fixed an issue where the IsVisible property of BrowserView could not be bound via AXAML in Avalonia UI.
  • Fixed an issue where default keyboard shortcuts did not work on macOS.
  • Fixed an issue with drop-downs by using the --enable-custom-dropdowns switch in environments where the parent window is not available.
  • Added full support for Wayland systems via XWayland in DotNetBrowser.

How to upgrade 

If you have a valid DotNetBrowser license with active support and updates subscription, you can upgrade to DotNetBrowser 4.0.0 for free.

You can upgrade DotNetBrowser in your project by changing the version of the DotNetBrowser dependency in your project configuration.

If you have any questions or need assistance with the upgrade, please feel free to contact us.

Download DotNetBrowser 4.0.0

Please share your email with us, and we'll send you download instructions.

We couldn’t deliver a message. Please make sure the email address is correct.
Sending…
EmailBox Please check your inbox.

We were unable to send the email. Please try again.

If you are a registered customer you don’t need to do anything to use this update.

If you would like to evaluate the product, you need an evaluation license.

Get free 30-day trial