Skip to content

Releases: cefsharp/CefSharp

v83.3.120-pre

14 Jun 04:13

Choose a tag to compare

v83.3.120-pre Pre-release
Pre-release

June 14, 2020, CEF 83.3.12+g0889ff0+chromium-83.0.4103.97 / Chromium 83.0.4103.97

CEF now supports the Chromium Network Service which brings a huge number of breaking API changes, please make sure you read #2743 for details if you are upgrading from a version prior to 75.1.x.

Visual C++ 2015 is required, see Notes below for more information

Change Log

For a complete list of changes see the 83.3.x Milestone

Notes

Known Issues

Breaking Changes

v81.3.100

23 May 01:43

Choose a tag to compare

May 23, 2020, CEF 81.3.10+gb223419+chromium-81.0.4044.138 / Chromium 81.0.4044.138

CEF now supports the Chromium Network Service which brings a huge number of breaking API changes, please make sure you read #2743 for details if you are upgrading from a version prior to 75.1.x.

Visual C++ 2015 is required, see Notes below for more information

Change Log

For a complete list of changes see the 81.3.x Milestone

Notes

Known Issues

Breaking Changes

  • For Network Service API changes see #2743
  • All paths (CachePath, BrowserSubProcessPath, etc) must be absolute paths, if using a non-absolute path an exception will be throw. See #3102 for details.
  • When using a RequestContext you must ensure that RequestContextSettings.CachePath is equal to or a child of CefSettings.RootCachePath See #3111 (comment) for details
  • CefErrorCode enumerator has been updated see #3106
  • Adobe Flash is now disabled by default, it can be re-enabled if required #3048
    (Flash support is scheduled to be removed from Chromium)
  • AbstractCefSettings was renamed to CefSettingsBase #3093
  • Migrating from ResourceHandler.GetMimeType to Cef.GetMimeType for mimeType mapping see #3041
  • See also https://github.com/cefsharp/CefSharp/issues?q=is%3Aissue+label%3Abreaking-change+milestone%3A81.3.x+is%3Aclosed

v81.3.20-pre

10 May 05:47

Choose a tag to compare

v81.3.20-pre Pre-release
Pre-release

May 10, 2020, January 29, 2020, CEF 81.3.2+gb9282cc+chromium-81.0.4044.138 / Chromium 81.0.4044.138

CEF now supports the Chromium Network Service which brings a huge number of breaking API changes, please make sure you read #2743 for details if you are upgrading from a version prior to 75.1.x.

Visual C++ 2015 is required, see Notes below for more information

For changes see the 81.3.x Milestone

Notes

Known Issues

Breaking Changes

v79.1.360

10 Feb 21:34

Choose a tag to compare

11 February 2020, CEF 79.1.36+g90301bd+chromium-79.0.3945.130 / Chromium 79.0.3945.130

Bug Fix Release

  • #3038 ResourceHandler.Read throws System.NotSupportedException [@amaitland]
  • #3037 WPF - NullReferenceException when Dispose called before browser initialized [@amaitland]
  • #3032 WPF - ThrowExceptionIfBrowserNotInitialized incorrectly throws InvalidOperationException when called on non UI Thread. [@amaitland]

This version includes an updated version of CEF which resolves https://bitbucket.org/chromiumembedded/cef/issues/2843/race-condition-in-openinputstreamwrapper

See also https://github.com/cefsharp/CefSharp/releases/tag/v79.1.350

v79.1.350

29 Jan 01:35

Choose a tag to compare

January 29, 2020, CEF 79.1.35+gfebbb4a+chromium-79.0.3945.130 / Chromium 79.0.3945.130

CEF now supports the Chromium Network Service which brings a huge number of breaking API changes, please make sure you read #2743 for details if you are upgrading from a version prior to 75.1.x.

Visual C++ 2015 is required, see Notes below for more information

  • #3026 Update ReferrerPolicy enum values [@amaitland]
  • #3018 WinForms - Load/LoadHtml does nothing when called from Form/Control.OnLoad [@amaitland]
  • #3016 API Change - IJavascriptObjectRepository.Register remove isAsync default param [@amaitland]
  • #3009 CefSharp.Common.targets - Improve PlatformCheck error message [@amaitland]
  • #2997 Dev tools shows up as an MDI window on the desktop [@amaitland]
  • #2990 Remove CefSharp.WebBrowserExtensions.RegisterJsObject/RegisterAsyncJsObject [@amaitland]
  • #2988 Feature Request - Add StreamResponseFilter [@amaitland]
  • #2986 GetVisibleNavigationEntry always returns null [@amaitland]
  • #2983 WinForms - Make CefSharp.WinForms.Internals.ControlExtensions.InvokeOnUiThreadIfRequired internal [@amaitland]
  • #2973 WPF IME - Fixed last hangul letter being duplicated [@nyjin]
  • #2957 Feature Request - Add RequestContext.ClearHttpAuthCredentials [@vwmberry95]
  • #2955 Remove IFrame.LoadStringForUrl [@amaitland]
  • #2954 Remove CefSettings.EnableNetSecurityExpiration and RequestContextSettings.EnableNetSecurityExpiration [@amaitland]
  • #2946 Accessing Request/Response Headers for ReadOnly Request/Response throws NotSupportedException [@amaitland]
  • #2932 IFrame.LoadRequest - Add xml doc warning [@amaitland]
  • #2918 Remove IAudioHandler [@amaitland]
  • #2909 JSB - Pass params to IMethodInterceptor.Intercept [@amaitland]
  • #2908 JSB - Pass all params to IBinder.Bind [@amaitland]
  • #2903 ResourceHandler - Reset Stream.Position when CanSeek [@amaitland]
  • #2891 BrowserSubprocess - Refactor to support .Net Core [@amaitland]
  • #2885 WPF - Modify CopyMemory EntryPoint to work with .Net Core [@kpreisser]
  • #2873 MethodRunningQueue DeadLock when attempting to Dispose ChromiumWebBrowser [@amaitland]
  • #2332 Feature Request - Add Print preview (WinForms Only)
  • #2258 WPF Improve Scrollbar/Scroll Drag Usability [@mol @amaitland]
  • #1721 Feature Request - Add IUrlRequest [@davidmi]
  • #228 Feature Request - Add WPF TouchScroll/Multitouch Support [@GSonofNun @kkwpsv]

Notes

Known Issues

Breaking Changes

  • For Network Service API changes see #2743
  • IJavascriptObjectRepository.Register removed isAsync default param, you must now specify the third method param see #3016 for details and example
  • CefSharp.WinForms.Internals.ControlExtensions.InvokeOnUiThreadIfRequired is now internal, it was never intended to be part of the public API #2983
  • CefSettings.EnableNetSecurityExpiration and RequestContextSettings.EnableNetSecurityExpiration were removed #2954
  • IFrame.LoadStringForUrl has been removed as CEF removed CefFrame::LoadString see #2955
  • CefSharp.WebBrowserExtensions.RegisterJsObject/RegisterAsyncJsObject methods have been removed, you must now directly register your objects with the IJavascriptObjectRepository see #2990 for details and examples for migration.
  • IAudioHandler has been removed as CEF now longer supports this feature #2918 (it's likely to be re-added at some point)
  • IMethodInterceptor.Intercept now has the paramaters passed to allow for more advanced scenarios see #2909
  • IBinder.Bind now has all arguments passed instead of just IDictionary/IList to allow for more flexible type conversion see #2908
  • Javascript Binding methods are now executed on the ThreadPool instead of their own dedicated thread, see 2873
  • Updated ReferrerPolicy enum values to reflect CEF changes see #3026

v79.1.310-pre

22 Jan 01:33

Choose a tag to compare

v79.1.310-pre Pre-release
Pre-release

January 22, 2020, CEF 79.1.31+gfc9ef34+chromium-79.0.3945.117 / Chromium 79.0.3945.117

CEF now supports the Chromium Network Service which brings a huge number of breaking API changes, please make sure you read #2743 for details if you are upgrading from a version prior to 75.1.x.

Visual C++ 2015 is required, see Notes below for more information

  • #3018 WinForms - Load/LoadHtml does nothing when called from Form/Control.OnLoad [@amaitland]
  • #3016 API Change - IJavascriptObjectRepository.Register remove isAsync default param [@amaitland]
  • #3009 CefSharp.Common.targets - Improve PlatformCheck error message [@amaitland]
  • #2997 Dev tools shows up as an MDI window on the desktop [@amaitland]
  • #2990 Remove CefSharp.WebBrowserExtensions.RegisterJsObject/RegisterAsyncJsObject [@amaitland]
  • #2988 Feature Request - Add StreamResponseFilter [@amaitland]
  • #2986 GetVisibleNavigationEntry always returns null [@amaitland]
  • #2983 WinForms - Make CefSharp.WinForms.Internals.ControlExtensions.InvokeOnUiThreadIfRequired internal [@amaitland]
  • #2973 WPF IME - Fixed last hangul letter being duplicated [@nyjin]
  • #2957 Feature Request - Add RequestContext.ClearHttpAuthCredentials [@vwmberry95]
  • #2955 Remove IFrame.LoadStringForUrl [@amaitland]
  • #2954 Remove CefSettings.EnableNetSecurityExpiration and RequestContextSettings.EnableNetSecurityExpiration [@amaitland]
  • #2946 Accessing Request/Response Headers for ReadOnly Request/Response throws NotSupportedException [@amaitland]
  • #2932 IFrame.LoadRequest - Add xml doc warning [@amaitland]
  • #2918 Remove IAudioHandler [@amaitland]
  • #2909 JSB - Pass params to IMethodInterceptor.Intercept [@amaitland]
  • #2908 JSB - Pass all params to IBinder.Bind [@amaitland]
  • #2891 BrowserSubprocess - Refactor to support .Net Core [@amaitland]
  • #2885 WPF - Modify CopyMemory EntryPoint to work with .Net Core [@kpreisser]
  • #2873 MethodRunningQueue DeadLock when attempting to Dispose ChromiumWebBrowser [@amaitland]
  • #2332 Feature Request - Add Print preview
  • #2258 WPF Improve Scrollbar/Scroll Drag Usability [@mol @amaitland]
  • #1721 Feature Request - Add IUrlRequest [@davidmi]
  • #228 Feature Request - Add WPF TouchScroll/Multitouch Support [@GSonofNun @kkwpsv]

Notes

Known Issues

Breaking Changes

  • For Network Service API changes see #2743
  • IJavascriptObjectRepository.Register removed isAsync default param, you must now specify the third method param see #3016 for details and example
  • CefSharp.WinForms.Internals.ControlExtensions.InvokeOnUiThreadIfRequired is now internal, it was never intended to be part of the public API #2983
  • CefSettings.EnableNetSecurityExpiration and RequestContextSettings.EnableNetSecurityExpiration were removed #2954
  • IFrame.LoadStringForUrl has been removed as CEF removed CefFrame::LoadString see #2955
  • CefSharp.WebBrowserExtensions.RegisterJsObject/RegisterAsyncJsObject methods have been removed, you must now directly register your objects with the IJavascriptObjectRepository see #2990 for details and examples for migration.
  • IAudioHandler has been removed as CEF now longer supports this feature #2918 (it's likely to be re-added at some point)
  • IMethodInterceptor.Intercept now has the paramaters passed to allow for more advanced scenarios see #2909
  • IBinder.Bind now has all arguments passed instead of just IDictionary/IList to allow for more flexible type conversion see #2908
  • Javascript Binding methods are now executed on the ThreadPool instead of their own dedicated thread, see 2873

v75.1.143

03 Nov 02:51

Choose a tag to compare

03 November 2019, CEF 75.1.14+gc81164e+chromium-75.0.3770.100 / Chromium 75.0.3770.100

Bug Fix Release

  • #2930 WPF - Crash after removing browser with height 0 from visual tree and re-attaching [@amaitland]
  • #2642 WinForms/WPF does not work when packaged as WAP (Desktop Bridge) project. [@amaitland]
  • #2881 Add IURLRequest [@davidmi]
  • #2856 WPF - Content appears blurry when the system dpi changes on a per monitor dpi aware app [@amaitland]

See also https://github.com/cefsharp/CefSharp/releases/tag/v75.1.142
See also https://github.com/cefsharp/CefSharp/releases/tag/v75.1.141

v75.1.142

09 Sep 08:12

Choose a tag to compare

09 September 2019, CEF 75.1.14+gc81164e+chromium-75.0.3770.100 / Chromium 75.0.3770.100

Bug Fix Release

#2872 LoadHtml/RegisterResourceHandler displays empty page [@amaitland]
#2879 WPF - Updated #2779 hack to run asynchronous without crashing. [@mol]
#2894 Add a ".NETCoreApp3.0" dependency to the .nuspec files [@kpreisser]

See https://github.com/cefsharp/CefSharp/releases/tag/v75.1.141 for full details

v75.1.141

15 Aug 10:07

Choose a tag to compare

August 15, 2019, CEF 75.1.14+gc81164e+chromium-75.0.3770.100 / Chromium 75.0.3770.100

CEF now supports the Chromium Network Service which brings a huge number of breaking API changes, please make sure you read #2743 for details.

Visual C++ 2015 is required, see Notes below for more information

The Nuget packages now use a slightly different versioning scheme, see #2706 for details

  • #2250 SendProcessMessage message not recieved after process switch
  • #2671 IRequest.Headers uses copy semantics instead of reference semantics [@amaitland]
  • #2690 Change ISchemeRegistrar.AddCustomScheme to use SchemeOptions enum [@amaitland]
  • #2710 Refactoring - Remove IsBrowserInitializedChangedEventArgs [@merceyz]
  • #2743 Chromium NetworkService API Changes [@amaitland]
  • #2747 Remove IRequestContext.ResolveHostCached [@amaitland]
  • #2749 IME implementation in WPF [@a-marmer]
  • #2755 UrlRequestFlags.AllowCachedCredentials rename to AllowStoredCredentials [@amaitland]
  • #2756 Kill sub process to avoid hanging forever [@joaompneves]
  • #2758 Feature Request - Async Javascript Binding Add support for returning Task [@amaitland]
  • #2767 Refactor to avoid loading System.ServiceModel assembly [@slozier]
  • #2775 Feature Request - Add Javascript CefSharp.PostMessage [@amaitland]
  • #2776 WinForms - Initial Touch Activation Not Working [@amaitland]
  • #2782 WPF Experimental IME - Fixed IME window not showing or showing at the wrong location [@mol]
  • #2784 WinForms - Remove EditorBrowsableState.Never [@amaitland]
  • #2792 Async JavaScript Binding - Long running method response incorrectly resolves promise after navigation [@amaitland]
  • #2809 CEF/Chromium NetworkService API Changes [@amaitland]
  • #2812 OffScreen - ChromiumWebBrowser constructor change RequestContext to IRequestContext [@medoni]
  • #2814 WinForms - Add Shift+Tab to IsInputKey (used when MultiThreadedMessageLoop is disabled) [@eklavyamirani]
  • #2817 WPF - Fix and improve touch and stylus @[kkwpsv]
  • #2822 PdfPrintSettings margin measured in points, not mm [@matthew-a-thomas]
  • #2829 Javascript Integration - Passing empty array in JS now maps to empty list/array instead of null [@angshuman-agarwal]
  • #2834 WPF - Update ZoomLevel xml doc re same origin behaviour [@amaitland]
  • #2839 WcfEnabledSubProcess::OnBrowserDestroyed crashes render process when channelFactory null [@amaitland]
  • #2843 WPF - Image Jumps Vertically on Height Change [@chenhuang444]

Notes

  • CefSharp requires Visual C++ 2015. See #1983 for details. You can bin deploy the VC++ dependencies, read the FAQ for more.
  • Starting in June 2019 Google will require OAuth authentication when accessing web services that rely only Google Account Data, this includes Gmail, Drive, Docs, see https://security.googleblog.com/2019/04/better-protection-against-man-in-middle.html?m=1 for further discussion see https://groups.google.com/a/chromium.org/d/msg/embedder-dev/STyM5ZNTHMM/POj1v_cqBgAJ
  • Chromium has removed support for Windows XP, Windows Vista, Windows Server 2003 and Windows Server 2008. See https://chrome.googleblog.com/2015/11/updates-to-chrome-platform-support.html
  • MP3 audio is now supported by default.
  • Due to licensing issues default builds do not support proprietary codecs like H264/AAC, sites like Netflix/Twitter/Instagram/Facebook won't play video/audio. See #1479 for more info.
  • Anyone new to CefSharp should read the General Usage Guide
  • This project uses GitLink for better debugging, see #1680
  • WPF now has a VirtualKeyboardRequested event that can be used to display a virtual keyboard see #1736 for full details
  • WPF now has experimental touch support, it's not enabled by default, see #228 (comment) for further details
  • BrowserSettings life cycle has changed, if created by CefSharp the object will be disposed automatically, if user created then it will be up to the user Disposed or Garbage collected. See for full details #2643
  • Legacy Javascript binding registered JavaScript objects no longer get lost when navigating to another domain.

Known Issues

Breaking Changes

  • For Network Service API changes see #2743
  • UrlRequestFlags.AllowCachedCredentials rename to AllowStoredCredentials
  • Remove IRequestContext.ResolveHostCached
  • Change ISchemeRegistrar.AddCustomScheme to use SchemeOptions enum
  • Javascript Integration - Passing empty array in JS now maps to empty list/array instead of null
  • CefSharp.WinForms.ChromiumWebBrowser.IsBrowserInitializedChanged removed custom IsBrowserInitializedChangedEventArgs (wasn't being used) see #2710 for an example

v75.1.140-pre01

27 Jul 11:55

Choose a tag to compare

v75.1.140-pre01 Pre-release
Pre-release

July 27, 2019, CEF 75.1.14+gc81164e+chromium-75.0.3770.100 / Chromium 75.0.3770.100

CEF now supports the Chromium Network Service which brings a huge number of breaking API changes see
breaking changes section below

Visual C++ 2015 is required, see Notes below for more information

The Nuget packages now use a slightly different versioning scheme, see #2706 for details

  • #2250 SendProcessMessage message not recieved after process switch
  • #2671 IRequest.Headers uses copy semantics instead of reference semantics [@amaitland]
  • #2690 Change ISchemeRegistrar.AddCustomScheme to use SchemeOptions enum [@amaitland]
  • #2710 Refactoring - Remove IsBrowserInitializedChangedEventArgs [@merceyz]
  • #2747 Remove IRequestContext.ResolveHostCached [@amaitland]
  • #2749 IME implementation in WPF [@a-marmer]
  • #2755 UrlRequestFlags.AllowCachedCredentials rename to AllowStoredCredentials [@amaitland]
  • #2756 Kill sub process to avoid hanging forever [@joaompneves]
  • #2758 Feature Request - Async Javascript Binding Add support for returning Task [@amaitland]
  • #2767 Refactor to avoid loading System.ServiceModel assembly [@slozier]
  • #2775 Feature Request - Add Javascript CefSharp.PostMessage [@amaitland]
  • #2782 WPF Experimental IME - Fixed IME window not showing or showing at the wrong location [@mol]
  • #2784 WinForms - Remove EditorBrowsableState.Never [@amaitland]
  • #2809 CEF/Chromium NetworkService API Changes [@amaitland]
  • #2812 OffScreen - ChromiumWebBrowser constructor change RequestContext to IRequestContext [@medoni]
  • #2814 WinForms - Add Shift+Tab to IsInputKey (used when MultiThreadedMessageLoop is disabled) [@eklavyamirani]
  • #2817 WPF - Fix and improve touch and stylus @[kkwpsv]
  • #2822 PdfPrintSettings margin measured in points, not mm [@matthew-a-thomas]
  • #2829 Javascript Integration - Passing empty array in JS now maps to empty list/array instead of null [@angshuman-agarwal]
  • #2834 WPF - Update ZoomLevel xml doc re same origin behaviour [@amaitland]
  • #2839 WcfEnabledSubProcess::OnBrowserDestroyed crashes render process when channelFactory null [@amaitland]
  • #2843 WPF - Image Jumps Vertically on Height Change [@chenhuang444]

Notes

  • CefSharp requires Visual C++ 2015. See #1983 for details. You can bin deploy the VC++ dependencies, read the FAQ for more.
  • Starting in June 2019 Google will require OAuth authentication when accessing web services that rely only Google Account Data, this includes Gmail, Drive, Docs, see https://security.googleblog.com/2019/04/better-protection-against-man-in-middle.html?m=1 for further discussion see https://groups.google.com/a/chromium.org/d/msg/embedder-dev/STyM5ZNTHMM/POj1v_cqBgAJ
  • Chromium has removed support for Windows XP, Windows Vista, Windows Server 2003 and Windows Server 2008. See https://chrome.googleblog.com/2015/11/updates-to-chrome-platform-support.html
  • MP3 audio is now supported by default.
  • Due to licensing issues default builds do not support proprietary codecs like H264/AAC, sites like Netflix/Twitter/Instagram/Facebook won't play video/audio. See #1479 for more info.
  • Anyone new to CefSharp should read the General Usage Guide
  • This project uses GitLink for better debugging, see #1680
  • WPF now has a VirtualKeyboardRequested event that can be used to display a virtual keyboard see #1736 for full details
  • WPF now has experimental touch support, it's not enabled by default, see #228 (comment) for further details
  • BrowserSettings life cycle has changed, if created by CefSharp the object will be disposed automatically, if user created then it will be up to the user Disposed or Garbage collected. See for full details #2643
  • Legacy Javascript binding registered JavaScript objects no longer get lost when navigating to another domain.

Known Issues

Breaking Changes

  • For Network Service API changes see #2743
  • UrlRequestFlags.AllowCachedCredentials rename to AllowStoredCredentials
  • Remove IRequestContext.ResolveHostCached
  • Change ISchemeRegistrar.AddCustomScheme to use SchemeOptions enum
  • Javascript Integration - Passing empty array in JS now maps to empty list/array instead of null
  • CefSharp.WinForms.ChromiumWebBrowser.IsBrowserInitializedChanged removed custom IsBrowserInitializedChangedEventArgs (wasn't being used) see #2710 for an example