Change8

v40.9.0

📦 electronView on GitHub →
1 features🐛 10 fixes🔧 8 symbols

Summary

This release introduces the `allowExtensions` privilege for custom protocols and resolves numerous bugs related to memory leaks, crashes during shutdown, macOS window behavior, and DevTools attachment.

✨ New Features

  • Added `allowExtensions` privilege to `protocol.registerSchemesAsPrivileged()` to enable Chrome extensions on custom protocols.

🐛 Bug Fixes

  • Fixed `fs.stat` on files inside asar archives returning `undefined` for `blksize` and `blocks` instead of numeric values.
  • Fixed a memory leak where Menu items were not cleaned up after Menu.setApplicationMenu was called repeatedly.
  • Fixed an intermittent `Invoke in DisallowJavascriptExecutionScope` crash on application quit when a `WebContents` (or other JS-emitting native object) is garbage-collected during shutdown.
  • Fixed an issue on macOS where `show`/`hide` events and `WebContents` visibility state could be reported incorrectly when multiple `WebContentsView`s were attached to a window.
  • Fixed an issue where DevTools would re-attach to the window when opened after previously being detached.
  • Fixed an issue where `setSimpleFullScreen` on macOS would exit when web content called `requestFullscreen()`.
  • Fixed an issue where concurrent `getFileHandle` requests on the same path could stall indefinitely.
  • Fixed aspect ratio min/max size clamping to correctly account for extraSize on macOS.
  • Fixed the crash keys being lost and the crash reporter hanging on macOS when many dynamic crash keys were registered.
  • Moved Electron-specific help menu links to the default app only; unpackaged apps will no longer see these items in their default menu.

Affected Symbols