English Italiano

Let's make your life Easy...



12/17/2023

Easy Edge (Chromium) ver 2.01 released!

SDK: 1.0.2210.55
WebView2 Runtime: For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 120.0.2210.55 or higher. Release notes: https://learn.microsoft.com/en-us/microsoft-edge/webview2/release-notes?tabs=dotnetcsharp#10221055

Delivering the Microsoft Edge WebView2 Runtime to Windows 10 Consumers: https://blogs.windows.com/msedgedev/2022/06/27/delivering-the-microsoft-edge-webview2-runtime-to-windows-10-consumers/

Microsoft: We're bringing Edge WebView2 to more Windows 10 devices, and here's why: https://www.zdnet.com/article/microsoft-is-bringing-more-loop-components-to-microsoft-teams-and-outlook/

[Announcement] Microsoft Edge and Adobe partner to improve the PDF experience (Issue #81): https://github.com/MicrosoftEdge/WebView2Announcements/issues/81


The browser extension API
Developers would like to ensure a browser extension is installed so that they may take advantage of the functionality the extension is providing. https://github.com/MicrosoftEdge/WebView2Feedback/blob/main/specs/Extensions.md

NEW: AreBrowserExtensionsEnabled environment option/template prompt: enable/disable browser extensions.
NEW: TBrowserExtensionManager class: allows to install, remove, enable, get a browser extension.
NEW: OnBrowserExtensionsChanged event.
NEW: Browser extensions example.


Default script locale
ScriptLocale property is to specify the default script locale. It sets the default locale for all Intl JavaScript APIs and other JavaScript APIs that depend on it, namely Intl.DateTimeFormat() which affects string formatting like in the time/date formats. https://learn.microsoft.com/en-us/dotnet/api/microsoft.web.webview2.core.corewebview2controlleroptions.scriptlocale?view=webview2-dotnet-1.0.1661.34&preserve-view=true

NEW: ScriptLocale environment option/template prompt.


Exceptions
NEW: OnExceptionThrown event: provides an info about thrown handled exception. The info contains exception type, message, hresult, source, and stack trace.


TCookieManager class
FIX: GetCookies method didn't work in Release mode.

This release is available, free of charge, to all customers who have an active maintenance and support subscription plan.
11/11/2023

EasyHTML ver 2.08 released!

Requirements: min .Net 4.5.2

  • CHG: InsertingImagePrompt event now accepts image width and height arguments.
  • NEW: BeforeProcessCommand and AfterProcessCommand events allow custom code injection before and after an action calling by the toolbar buttons and context menu items.
  • NEW: A list of command constants used in BeforeProcessCommand and AfterProcessCommand events.
This release is available, free of charge, to all customers who have an active maintenance and support subscription plan.
7/29/2023

Easy Edge (Chromium) ver 2.00 released!

SDK: 1.0.1901.177
WebView2 Runtime: For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 115.0.1901.177 or higher. Release notes:
https://learn.microsoft.com/en-us/microsoft-edge/webview2/release-notes?tabs=dotnetcsharp#10166134
https://learn.microsoft.com/en-us/microsoft-edge/webview2/release-notes?tabs=dotnetcsharp#10172245
https://learn.microsoft.com/en-us/microsoft-edge/webview2/release-notes?tabs=dotnetcsharp#10177430
https://learn.microsoft.com/en-us/microsoft-edge/webview2/release-notes?tabs=dotnetcsharp#10182332
https://learn.microsoft.com/en-us/microsoft-edge/webview2/release-notes?tabs=dotnetcsharp#101901177

Delivering the Microsoft Edge WebView2 Runtime to Windows 10 Consumers:
https://blogs.windows.com/msedgedev/2022/06/27/delivering-the-microsoft-edge-webview2-runtime-to-windows-10-consumers/

Microsoft: We're bringing Edge WebView2 to more Windows 10 devices, and here's why:
https://www.zdnet.com/article/microsoft-is-bringing-more-loop-components-to-microsoft-teams-and-outlook/

The Managing SmartScreen API
Edge SmartScreen (https://support.microsoft.com/en-us/microsoft-edge/how-can-smartscreen-help-protect-me-in-microsoft-edge-1c9a874a-6826-be5e-45b1-67fa445a74c8) helps end users identify reported phishing and malware websites, and also helps end users make informed decisions about downloads.
The IsReputationCheckingRequired property controls whether SmartScreen is enabled.

NEW: IsReputationCheckingRequired property determines whether SmartScreen is enabled when visiting web pages.
NEW: "Enable SmartScreen" template prompt.

The SharedBuffer API
For some advanced scenarios, there is a need to exchange large amounts of data between the WebView2 application process and trusted web pages that are considered as part of the app. Some examples:
  • Web page generates a large amount of data, and passes it to the native side to be further processed or fed to other parts of the app or OS. For example, the web page generates 100MBs of high DPI images to be printed and needs to pass that to the native code to print.
  • Native side generates a large amount of data for the web side to consume. The data might or might not come directly from files. For example the native side has generated terabytes of data to produce different graphs on the web side.
To support these scenarios, we added SharedBuffer API to support sharing buffers between the WebView2 host app process and WebView2 renderer process, based on shared memory from the OS.

The application code can use the APIs to create a shared buffer object, and share to scripts as ArrayBuffer object. Then both the native application code and the script will be able to access the same memory.

NEW: TSharedBuffer class that allows to create shared buffer, send and receive data to/from a script.
NEW: TClaEdgeBase.PostBinaryData and TClaEdgeBase.FramePostBinaryData methods which post binary data to a script (implicit shared buffers).
NEW: PostBinaryData and ReadBinaryData examples.
 
Tracking Prevention API
The API to control levels of tracking prevention and also to turn off tracking prevention feature (https://github.com/MicrosoftEdge/WebView2Feedback/blob/main/specs/TrackingPrevention.md).

NEW: PreferredTrackingPreventionLevel property allows you to control levels of tracking prevention for WebView2 which are associated with a profile and persisted in the user data folder.
NEW: EnableTrackingPrevention property is used to enable/disable tracking prevention feature.
 
Permission Management API
With the extended OnPermissionRequested and OnFramePermissionRequested events args and new permission APIs you will be able to:
  • Set permission for a site at any time
  • List all nondefault permissions
  • Control more permission kinds
NEW: SavesInProfile argument in OnPermissionRequested and OnFramePermissionRequested events lets you turn off the caching of permission state so that you can intercept all permission requests.
NEW: TClaEdgeProfile.SetPermissionState method sets permission state for the given permission kind and origin.
NEW: TClaEdgeProfile.GetNonDefaultPermissionSettings method requests for a collection of all nondefault permission settings.
NEW: OnNonDefaultPermissionSettings event returns a collection of all nondefault permission settings as a json string.
NEW: PermissionKind.MidiSystemExclusiveMessages equate indicates permission to send and receive system exclusive messages to/from MIDI (Musical Instrument Digital Interface) devices.
NEW: PermissionKind.WindowManagement equate indicates permission to open and place windows on the screen.
 
LaunchingExternalUriScheme API
OnLaunchingExternalUriScheme is the event that will be raised when an attempt to launch a URI scheme that is registered with the OS (external URI scheme) is made. When navigating to a URI, the URI scheme determines how to handle the URI. Some schemes like http, and https, are resolved by the WebView2 and the navigation is handled in the WebView2. Other URI schemes may be registered externally to the WebView2 with the OS by other applications. Such schemes are handled by launching the external URI scheme (https://github.com/MicrosoftEdge/WebView2Feedback/blob/main/specs/LaunchingExternalUriScheme.md).

Registering an Application to a URI Scheme: https://learn.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/platform-apis/aa767914(v=vs.85)?redirectedfrom=MSDN

NEW: OnLaunchingExternalUriScheme event is raised when there's an attempt to launch a URI scheme that is registered with the OS (external URI scheme).
NEW: "Launch external scheme" example.

Memory usage API
Some Easy Edge apps want to continue to run scripts while inactive and therefore cannot make usage of TrySuspend and Resume APIs to reduce resource consumption. We are introducing an API to reduce memory usage only for this type of inactive WebViews.

NEW: MemoryUsageTargetLevel property allows specifying memory consumption levels, such as low or normal.
 
ScriptToExecuteOnCreate API
CHG: AddScriptToExecuteOnCreate now accepts scriptId parameter that may be passed when calling RemoveScriptToExecuteOnCreate.
NEW: RemoveScriptToExecuteOnCreate method removes the corresponding JavaScript added via AddScriptToExecuteOnCreate with the specified script ID.

Host objects API
NEW: RemoveHostObjectFromScript and RemoveFrameHostObjectFromScript methods remove the host object specified by the name so that it is no longer accessible from JavaScript code in the WebView or iframe.
 
DOM objects
The File API allows accessing a DOM File object passed via WebMessage.
Representation of a DOM File (https://developer.mozilla.org/docs/Web/API/File) object passed via WebMessage.
You can use this object to obtain the path of a File dropped on the control.

CHG: OnWebMessageStringReceived and OnWebMessageJsonReceived events have pAdditionalObjectsCount arg which gets the number of additional objects.
NEW: GetAdditionalObjectProp method returns a property of the object.
 
Multiple profiles
NEW: TClaEdgeProfile.GetCookieManager property enables the host app to get the cookie manager for the profile.
NEW: TClaEdgeProfile.IsGeneralAutofillEnabled property determines whether general form information will be saved and autofilled.
NEW: TClaEdgeProfile.IsPasswordAutosaveEnabled property determines whether password information will be autosaved.

ClearBrowsingData API
NEW: The ServiceWorkers enum value in the BrowsingDataKinds enum specifies service workers that are registered for an origin.
 
NavigationStarting API
NEW: In OnNavigationStarting event NavigationKind argument gets the navigation kind of each navigation, such as Back/Forward, Reload, or navigation to a new document.
 
Misc
FIX: (C6.3 templates) Syntax error in an embed point identifier (EasyEdgeChromiumG.tpw). Check the embed tree to orphaned embeds "Init method body|Data" and "Init method body|Code".
CHG: Removed conditional linking of win32ext.lib for C8 only in DLL mode. If you use C8 in DLL mode, link win32ext.lib manually. The same is true for some of C6.3 versions regardless of linking mode.

This release is available, free of charge, to all customers who have an active maintenance and support subscription plan.
4/29/2023

EasyCam ver 2.01 released!

  • NEW: Decode multiple barcodes on same image.
  • CHG: The demo app can decode multiple barcodes from single image file.
This release is available, free of charge, to all customers who have an active maintenance and support subscription plan.
4/7/2023

EasyCam ver 2.00 released!

  • NEW: Playing local and remote video files (.avi). New class methods are: RenderMediaFile, RenderMediaUrl, GetMediaDuration, GetMediaCurrentPosition, SetMediaCurrentPosition, GetMediaStopPosition, SetMediaStopPosition, GetMediaRate, SetMediaRate, IsMediaOpened, IsPlaybackComplete.
  • NEW: "Playback" tab in the demo app allows you to play local and remote video, pause it, rewind, change the speed.
  • FIX: Camera resolutions which use MJPG encoding did not work properly.
  • CHG: SetTextLogo method now accepts font style and text position. The logo can be docked to any edge of the video area.
  • CHG: ZXing.Net upgraded from 0.16.4.0 to 0.16.9.0.
  • CHG: EasyCam6.tpw removed, EasyCamZoomCtrl.tpw added.
  • FIX: Internal bug fixes and improvements.

This release is available, free of charge, to all customers who have an active maintenance and support subscription plan.
3/19/2023

Easy Edge (Chromium) ver 1.13 released!

SDK: 1.0.1587.40
WebView2 Runtime: For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 110.0.1587.40 or higher.

Release notes: https://learn.microsoft.com/en-us/microsoft-edge/webview2/release-notes?tabs=dotnetcsharp#10158740

Delivering the Microsoft Edge WebView2 Runtime to Windows 10 Consumers: https://blogs.windows.com/msedgedev/2022/06/27/delivering-the-microsoft-edge-webview2-runtime-to-windows-10-consumers/

Microsoft: We're bringing Edge WebView2 to more Windows 10 devices, and here's why: https://www.zdnet.com/article/microsoft-is-bringing-more-loop-components-to-microsoft-teams-and-outlook/

Custom Scheme Registration API
  • NEW: CustomSchemeRegistrations additional option used to create a WebView2 Environment to manage custom scheme registration. This allows the app to be able to handle OnWebResourceRequested event for requests with the specified scheme and be able to navigate the WebView2 to the custom scheme.
  • NEW: "Custom scheme" example demonstrates a navigation to the addresses like school://students/list/json.
Web resource API
  • NEW: EnableWebResourceRequestedEvent method enables or disables OnWebResourceRequested event.
  • NEW: IsWebRequestContentEnabled property determines whether OnWebRequestReceived event receives request content.
  • NEW: "Web resources" template tab.
NavigateWithWebResourceRequest API
  • FIX: POST data not sent.
  • NEW: Overloaded Navigate methods allow you to send binary POST data.
  • CHG: "Resource request" example (renamed to "Navigate with web resource request" in main menu) now uses www.w3schools.com page to send POST data and receive a server response.
Permission management API
  • CHG: OnPermissionRequested event: extended CoreWebView2PermissionKind itemize (pKind argument), new equates:
  • MultipleAutomaticDownloads (Permission is requested when multiple downloads are triggered in quick succession)
  • FileReadWrite (Permission is requested when developers use the File System Access API)
  • Autoplay (This permission affects the autoplay attribute and play method of the audio and video HTML elements, and the start method of the Web Audio API)
  • LocalFonts (Permission is requested when developers use the Local Font Access API)
HiddenPdfToolbarItems API
  • CHG: HiddenPdfToolbarItems now allows to hide any toolbar item.

DownloadStarting API
  • CHG: OnDownloadStarting event: added uri and mimeType parameters.
Misc
  • FIX: Some ITEMIZE equates had wrong values.
  • NEW: "Save web page as mhtml" sample code in the demo.
This release is available, free of charge, to all customers who have an active maintenance and support subscription plan.
2/10/2023

EasyDotNet ver 1.10 released!

  • NEW: TMD5Managed class allows computing MD5 hash values.
  • FIX: THMACManaged class used only randomly generated keys.
  • FIX: TEventLogGrp.logName changed size to 256; same change in the demo app.
This release is available, free of charge, to all customers who have an active maintenance and support subscription plan.
1/21/2023

Easy Edge (Chromium) ver 1.12 released!

SDK: 1.0.1518.46
WebView2 Runtime: For full API compatibility, this version of the WebView2 SDK requires WebView2 Runtime version 109.0.1518.46 or higher.
Release notes: https://learn.microsoft.com/en-us/microsoft-edge/webview2/release-notes?tabs=dotnetcsharp#10151846

Delivering the Microsoft Edge WebView2 Runtime to Windows 10 Consumers: https://blogs.windows.com/msedgedev/2022/06/27/delivering-the-microsoft-edge-webview2-runtime-to-windows-10-consumers/

Microsoft: We're bringing Edge WebView2 to more Windows 10 devices, and here's why: https://www.zdnet.com/article/microsoft-is-bringing-more-loop-components-to-microsoft-teams-and-outlook/


The Print API
  • NEW: PrintAsync method prints the current web page asynchronously to the specified printer with the provided settings.
  • NEW: PrintToPdfStream method provides the Pdf data of current web page asynchronously for the provided settings.
  • NEW: ShowPrintUI method opens the print dialog to print the current web page.
  • NEW: OnPrintCompleted event raised when a call of PrintAsync is completed and indicates the status for printing.
  • NEW: OnPrintToPdfStreamCompleted event raised when a call of PrintToPdfStream is completed and provides the Pdf data of current web page.
  • CHG: TWebView2PrintSettings class has new print settings: PageRanges, PagesPerSide, Copies, Collation, ColorMode, Duplex, MediaSize, PrinterName.

The Custom Crash Reporting API
  • NEW: TClaEdgeEnvironmentOptions.IsCustomCrashReportingEnabled property: when set to true, Windows won't send crash data to Microsoft endpoint.
  • NEW: TClaEdgeBase.FailureReportFolderPath method returns the failure report folder.

The Frame API
  • NEW: TFrameManager.FindFrame method finds a frame by its name.

WebResource request API
  • NEW: TWebResourceRequest.SetHeader method adds or updates request header.

Templates
  • NEW: Customizable Init error messages.
  • NEW: Optional BEEP on Init error.
  • NEW: Additional embed points in "Initialization|Fail reason" branch.
  • NEW: "Set focus after navigation completes" checkbox.
This release is available, free of charge, to all customers who have an active maintenance and support subscription plan.