Change8

v41.4.0

📦 electronView on GitHub →
1 features🐛 11 fixes🔧 6 symbols

Summary

This release introduces heap profiling support via contentTracing and resolves numerous bugs related to network requests, crashes during window closing, offscreen rendering, and printing regressions.

Migration Steps

  1. If using custom protocols with `supportFetchAPI: true`, ensure `corsEnabled: true` is set if cross-origin fetch/XHR requests should be allowed.
  2. If using offscreen rendering, consider setting `webPreference.offscreen.deviceScaleFactor` to explicitly define the device scale factor instead of relying on the primary display's value.

✨ New Features

  • Added support for heap profiling via contentTracing.enableHeapProfiling().

🐛 Bug Fixes

  • Ensured cross-origin fetch() and XHR are blocked for custom protocols registered with supportFetchAPI: true unless corsEnabled: true is also set; cross-origin mode: 'no-cors' requests now receive an opaque response.
  • Fixed a crash when providing invalid HTTP header names or values in the webRequest.onBeforeSendHeaders() callback.
  • Fixed a bug that cause offscreen rendering doesn't have valid screen info and unable to get valid result of related media queries; added webPreference.offscreen.deviceScaleFactor to allow user specify a value.
  • Fixed a bug where errors would occur when using the Chrome DevTools Fetch API.
  • Fixed a crash that could occur when an autofill suggestion popup was shown while a window was closing.
  • Fixed a regression where frameless fullscreen windows had white borders on Windows.
  • Fixed a renderer crash when a page uses the <geolocation> HTML element.
  • Fixed an issue where calling contentTracing APIs before app.whenReady() would crash the application.
  • Fixed an issue where some toast notification properties didn't work as expected in WinRT.
  • Fixed buggy behavior where Backspace would accept macOS text replacements inside contenteditable elements.
  • Fixed a regression in silent printing where custom DPI values from webContents.print were not honored, causing incorrect output scaling.

Affected Symbols