electron v13.0.0
Release Notes for v13.0.0
Stack Upgrades
- Chromium 91.0.4472.69.
- Node v14.17.0
- V8 v9.1
Breaking Changes
- Fixed so window.open() parameter frameName is no longer set as window title. #27481
- Changed
session.setPermissionCheckHandler(handler)to allow forhandler's first parameter,webContentsto benull. #19903
Features
Additions
- Added
process.contextIdused by@electron/remote. #28251 - Added
process.contextIsolatedproperty that indicates whether the current renderer context hascontextIsolationenabled. #28252 - Added
process.uptime()to sandboxed renderers. #26684 - Added
roundedCornersoption forBrowserWindow. #27572 - Added missing fields to the parameters emitted as part of the
context-menuevent. #26788 - Added new
session.storagePathAPI to get the path on disk for session-specific data. #28866 - Added support for passing DOM elements over the context bridge. #26776
- Added support for registering Manifest V3 extension service workers.
- Added 'registration-completed' event to
ServiceWorkers. #27562
- Added 'registration-completed' event to
- Added
disposition,referrerandpostBodyto the details object passed to the window open handler registered withsetWindowOpenHandler. #29277
Improvements
- Additional permission checks are now routed through
session.setPermissionCheckHandler. These includeNotification.permission, andpermission.query. Please note that thewebContentsparameter to the check handler can now be null. #19903 - Allowed skipping process type transformation in win.SetVisibleOnAllWorkspaces on macOS. #27200
- Reverted
WebFrameMain.executeJavaScriptInIsolatedWorld(). #27926 - Made
trafficLightPositionoption work forcustomButtonOnHoverwindow. #26789 - The
submitURLoption forcrashReporter.startis no longer a required argument whenuploadToServeris false. #28283 - Improved performance of
napi_threadsafe_function. #29048 (Also in 12)
Removed/Deprecated
- Removed deprecated
BrowserWindowextension APIs. #26696 - Removed deprecated
shell.moveItemToTrash(). #26723 - Removed deprecated
systemPreferencesmethods. #26849
Fixes
- Fixed
hiddenInsettitleBarStyle's abnormal fullscreen titlebar. FixhiddenInsettitleBarStyle not working withtrafficLightPositionoption. #27489 - Fixed a use-after-free bug during shutdown when using off-the-record sessions. #26680
- Fixed an issue where
contextBridgemight incorrectly try to serialize some WebAssembly objects. #27518 - Fixed behavior of 302/303/307 redirect responses in the protocol module. #26297
- Made
BrowserWindow.setWindowButtonVisibilitywork for window withcustomButtonsOnHovertitlebar style. #27073 - Fixed a rare crash on boot. #29109
- Fixed permissions issue that was preventing the PDF viewer from displaying. #29252
- Fixed the possibility for incorrect visual artifacts when using vibrancy and making frameless windows fullscreen on macOS. #29099
- Fixed using vibrancy with titleBarStyle together resulting in weird window shadow on macOS. #29165
- Restored cross-platform noop implementation of
app.setAppUserModelId. #28921 - Security: backported fix for chromium:1196683. #28637
Also in earlier versions....
- Allow Node.js to manage microtasks queue by using explicit microtasks policy before calling
uv_run(). #28973 (Also in 11, 12) - Allow loading source maps from custom protocols and asar bundles. #28615 (Also in 12)
- Child windows with specified background colors or transpency now work as intended. #28112 (Also in 12)
- Colors returned from
systemPreferences.getAccentColor(),getSystemColorandgetColorare now correctly converted into the devices color space. Previously the color would have been subtly incorrect. #28173 (Also in 11, 12) - Fixed ECDH.setPrivateKey() not updating the key. #27688 (Also in 12)
- Fixed
<webview>focus/blurevents not working withcontextIsolationenabled. #29025 (Also in 10, 11, 12) - Fixed
desktopCapturer.getSources()promise result sometimes never resolving. #28280 (Also in 10, 11, 12) - Fixed
postDataparameter missing fromnew-windowevent. #28542 (Also in 12) - Fixed
webFramespell checker APIs crashing when called in sandboxed renderer. #29087 (Also in 12) - Fixed a bug where, when a JumpList task description exceeded 260 characters, the JumpList was empty, despite valid entries. #28526 (Also in 11, 12)
- Fixed a crash when calling
shell.trashItem()from the renderer process. #28788 (Also in 12) - Fixed a crash when loading pepper plugins. #28372 (Also in 12)
- Fixed a network process crash that could happen when using
setCertificateVerifyProcwith many concurrent verification requests. #28433 (Also in 11, 12) - Fixed a potential crash when resetting
BrowserViews. #27786 (Also in 12) - Fixed a rare crash on Windows that could occur when emitting certain
Trayevents. #26668 (Also in 12) - Fixed an issue where
BrowserViews could have mismatched draggable regions to their bounds. #27952 (Also in 10, 11, 12) - Fixed an issue where
illegal access errorcould be thrown whennodeIntegrationInSubFramesis enabled. #29170 (Also in 12) - Fixed an issue where
select-serial-portcallback crashes when called with an invalid serial port ID. #28619 (Also in 12) - Fixed an issue where
win.capturePage()never called back after callinghide()for a hidden window on some platforms. #28076 (Also in 11, 12) - Fixed an issue where
window.print()did not work properly when printing a pdf from the pdf plugin. #28351 (Also in 12) - Fixed an issue where drag regions on macOS would be offset incorrectly when no drag regions were set,. #29017 (Also in 11, 12)
- Fixed an issue where errors thrown in functions passed over the
contextBridgecould be displayed incorrectly. #28446 (Also in 12) - Fixed an issue where extensions without a background page might not have file access. #29171 (Also in 12)
- Fixed an issue where libuv might hang with multiple subframes when
nodeIntegrationInSubframesis enabled. #27582 (Also in 10, 11, 12) - Fixed an issue where multiple calls to
window.setFullScreencould cause problems. #28763 (Also in 11, 12) - Fixed an issue where some Node.js modules would hang on page reload on Windows. #28335 (Also in 11, 12)
- Fixed an issue where some dialogs would stop working on macOS if
window.hide()was called while they were open. #28694 (Also in 11, 12) - Fixed an issue where the drag regions in BrowserViews on macOS could be off in their y-axis. #28298 (Also in 10, 11, 12)
- Fixed an issue where the thumbar disappeared after
win.hide()on Windows. #28390 (Also in 10, 11, 12) - Fixed an issue where the void function
Menu.setApplicationMenuwould return a value on some platforms. #29129 (Also in 12) - Fixed an issue where the window couldn't be closed if a user tried to quit with a message box showing. #28988 (Also in 12)
- Fixed an issue where windows in
simpleFullscreenmode were not properly resizing when display metrics changed. #28216 (Also in 11, 12) - Fixed an out-of-bounds access in
WebContents.sendInputEvent. #27827 (Also in 10, 11, 12) - Fixed background color not being applied for child windows created by native window.open path. #27593 (Also in 10, 11, 12)
- Fixed bug where TouchBarPopover and TouchBarGroup were no longer rendering. #27901 (Also in 11, 12)
- Fixed context menus not being positioned correctly when near the edge of the screen. #28276 (Also in 11, 12)
- Fixed corner radius for vibrancy view in macOS 11. #28679 (Also in 11, 12)
- Fixed crash when an exception occurs within the event emitter. #29106
- Fixed crash when calling
getBackgroundColoron a transparent window with no assigned background color. #28187 (Also in 11, 12) - Fixed failing to request file:// resources when web security is disabled. #28557 (Also in 11, 12)
- Fixed intensive I/O from asar files causing ERR_FILE_NOT_FOUND after a while. #28203 (Also in 11, 12)
- Fixed issue where
window.open()would not return an object with alocation.hrefsetter whencontextIsolationis enabled andnativeWindowOpenis disabled. #27899 (Also in 12) - Fixed navigator.bluetooth.requestDevice. #27902 (Also in 11, 12)
- Fixed rare crash when initializing the internal PDF extension. #28453 (Also in 12)
- Fixed service worker not working with custom protocol. #28354 (Also in 11, 12)
- Fixed the handler set with
setWindowOpenHandlernot being invoked when a link was middle-clicked or shift-clicked. #28536 (Also in 12) - Fixed the window-all-closed event being emitted while the last BrowserWindow was still in the process of being closed. #28914 (Also in 11, 12)
- Fixed warning when
worldSafeExecuteJavaScriptis disabled. #27928 (Also in 10, 11, 12) - No longer set backgroundColor in default-app when opening custom files / URLs. #28842 (Also in 10, 11, 12)
- Support
wasm-evalcsp behindWebAssemblyCSPflag. #28569 (Also in 11, 12) - Transparent windows cannot be maximized using the Windows system menu or by double clicking the title bar. #28527 (Also in 12)
- URLS passed to
shell.openExternalon windows are now correctly URI encoded. This was already occurring on macOS and Linux. #28342 (Also in 10, 11, 12) - Fixed native module compilation with AsyncCleanupHooks on windows. #28110 (Also in 11, 12)
- Fixed
will-resizeandwill-moveevents not scaling the emittednewBoundsrectangle to the appropriate Windows display scale factor. #29227 (Also in 11, 12) - Fixed drag and drop not working correctly for some x11 window managers. #29233 (Also in 11, 12)
Other Changes
- Non-functional change; updates repository's issue template file. #27825
- Updated community discussions link in default Electron menu. #28459 (Also in 12)
Documentation
- Documentation changes:
- #26239
- tutorial/application-distribution
- tutorial/application-packaging (Removed)
- #26501
- #26542 - tutorial/offscreen-rendering
- #27387 - tutorial/native-file-drag-drop
- #27486 - tutorial/support
- #27770 - api/menu
- #28213 - api/browser-window
- #28365
- #29149
- #26239
End of Support for 10.x.y
Electron 10.x.y has reached end-of-support as per the project's support policy. Developers and applications are encouraged to upgrade to a newer version of Electron.