npm install electron@v15.0.0-alpha.1
yarn add electron@v15.0.0-alpha.1
Release Notes
New Release Cadence
https://www.electronjs.org/blog/8-week-cadence
Features
- Added
BrowserWindow.isFocusable()
to determine whether a window is focusable. #28642 - Added
WebFrameMain.visibilityState
instance property. #28706 - Added
disposition
,referrer
andpostBody
to the details object passed to the window open handler registered withsetWindowOpenHandler
. #28518 (Also in 13) - Added
location
andmodifiers
to the event properties provided in the'before-input-event'
WebContents event. #29850 - Added
process.contextId
used by@electron/remote
. #28007 (Also in 13) - Added
signal
option todialog.showMessageBox
. #26102 - Added experimental cookie encryption support behind an Electron Fuse. #27524 (Also in 13, 14)
- Added missing
resourceType
conversions forwebRequest
listener details:font
,ping
,cspReport
,media
,webSocket
. #29902 (Also in 14) - Added new
MenuItem.userAccelerator
property to read user-assigned macOS accelerator overrides. #26682 - Added new
app.runningUnderARM64Translation
property to detect when running under Rosetta on Apple Silicon, or WOW on Windows for ARM. #29168 - Added new
imageAnimationPolicy
web preference to control how images are animated. #29095 - Added new
session.storagePath
API to get the path on disk for session-specific data. #28665 (Also in 13) - Added resize
edge
info toBrowserWindow
'swill-resize
event. #29199 - Added support for Windows Control Overlay on macOS. #29253 (Also in 14)
- Added support for debug URLs such as
chrome://gpucrash
. #29404 (Also in 13, 14) - Added support for directing Chromium logging to a file with
--log-file=.../path/to/file.log
. Also, it's now possible to enable logging from JavaScript by appending command-line switches during the first JS tick. #25089 (Also in 14) - Added support for sending Blobs over the context bridge. #29247
- Added support for the des-ede3 cipher in node crypto. #27897 (Also in 11, 12)
- Adding
ContextBridgeMutability
feature that skips context bridgeDeepFreeze
andSetReadOnlyNonConfigurable
when exposing a value. #27348 - Child windows no longer inherit BrowserWindow construction options from their parents. #28550
- Extended
continue-activity
event API to supportwebpageURL
property fromNSUserActivity
. #30042 - Removed deprecated
additionalFeatures
property fromnew-window
anddid-create-window
WebContents events. #28548 - The
submitURL
option forcrashReporter.start
is no longer a required argument whenuploadToServer
is false. #28105 (Also in 13) nativeWindowOpen: true
is now the default. #28552
Fixes
- Allow Node.js to manage microtasks queue by using explicit microtasks policy before calling
uv_run()
. #28957 (Also in 11, 12, 13) - Allow loading source maps from custom protocols and asar bundles. #28573 (Also in 12, 13)
- Child windows with specified background colors or transpency now work as intended. #28054 (Also in 12, 13)
- Colors returned from
systemPreferences.getAccentColor()
,getSystemColor
andgetColor
are now correctly converted into the devices color space. Previously the color would have been subtly incorrect. #28121 (Also in 11, 12, 13) - Electron Fuses are now in a consistent order across platforms. #29599 (Also in 13, 14)
- Fixd an issue where
fs.promises.readFile
would improperly error when passing aFileHandle
to thepath
argument. #29528 (Also in 12, 13, 14) - Fixed CORS preflight request always being cancelled when connecting via proxy requiring authentication for apps that had registered WebRequest listeners. #29266 (Also in 12, 13, 14)
- Fixed
<webview>
focus
/blur
events not working withcontextIsolation
enabled. #29004 (Also in 10, 11, 12, 13) - Fixed
desktopCapturer.getSources()
promise result sometimes never resolving. #28273 (Also in 10, 11, 12, 13) - Fixed
postData
parameter missing fromnew-window
event. #28513 (Also in 12, 13) - Fixed
requestFullscreen
inside webview does not make the element take fullscreen. #29952 (Also in 12, 13, 14) - Fixed
select-bluetooth-device
firing on Windows. #29591 (Also in 12, 13, 14) - Fixed
webFrame
spell checker APIs crashing when called in sandboxed renderer. #29053 (Also in 12, 13) - Fixed
will-resize
andwill-move
events not scaling the emittednewBounds
rectangle to the appropriate Windows display scale factor. #29162 (Also in 11, 12, 13) - Fixed a bug where, when a JumpList task description exceeded 260 characters, the JumpList was empty, despite valid entries. #28485 (Also in 11, 12, 13)
- Fixed a crash when calling
shell.trashItem()
from the renderer process. #28748 (Also in 12, 13) - Fixed a crash when calling the
webContents.on('login')
callback synchronously. #30068 (Also in 12, 13, 14) - Fixed a hang when denying a
window.open
usingsetWindowOpenHandler
whennativeWindowOpen: false
. #29851 (Also in 12, 13, 14) - Fixed a network process crash that could happen when using
setCertificateVerifyProc
with many concurrent verification requests. #28358 (Also in 11, 12, 13) - Fixed a potential crash when calling
app.quit()
on macOS. #29941 (Also in 12, 13, 14) - Fixed a potential crash when setting vibrancy on macOS. #29677 (Also in 13, 14)
- Fixed an issue where BrowserWindows would not properly honor
transparency: true
or abackgroundColor
being set in their constructor options. #30136 (Also in 14) - Fixed an issue where Electron would sometimes not honor the user-defined Downloads directory. #29938 (Also in 12, 13, 14)
- Fixed an issue where
GDK_BACKEND
was being propagated to subprocesses on Linux. #28898 - Fixed an issue where
beforeunload
andunload
weren't firing properly inBrowserView
s. #28382 - Fixed an issue where
illegal access error
could be thrown whennodeIntegrationInSubFrames
is enabled. #29093 (Also in 12, 13) - Fixed an issue where
select-serial-port
callback crashes when called with an invalid serial port ID. #28602 (Also in 12, 13) - Fixed an issue where
self.module.paths
wouldn't work in Workers. #29955 (Also in 12, 13, 14) - Fixed an issue where
win.capturePage()
never called back after callinghide()
for a hidden window on some platforms. #27883 (Also in 11, 12, 13) - Fixed an issue where
window.print()
did not work properly when printing a pdf from the pdf plugin. #28328 (Also in 12, 13) - Fixed an issue where custom traffic lights could be covered by BrowserViews on macOS. #29595 (Also in 13, 14)
- Fixed an issue where drag regions on macOS would be offset incorrectly when no drag regions were set,. #28984 (Also in 11, 12, 13)
- Fixed an issue where draggable regions sometimes did not work properly when DevTools is open. #29696 (Also in 12, 13, 14)
- Fixed an issue where dropdown menus did not work in DevTools when
contextIsolation
was enabled. #29841 (Also in 13, 14) - Fixed an issue where errors thrown in functions passed over the
contextBridge
could be displayed incorrectly. #28346 (Also in 12, 13) - Fixed an issue where extensions without a background page might not have file access. #29123 (Also in 12, 13)
- Fixed an issue where multiple calls to
window.setFullScreen
could cause problems. #25470 (Also in 11, 12, 13) - Fixed an issue where request headers were cleared if the optional "requestHeaders" parameter was not included in the webRequest.onBeforeSendHeaders callback response object. #29798 (Also in 12, 13, 14)
- Fixed an issue where right-clicking in the devtools console throws an error. #29436 (Also in 14)
- Fixed an issue where some Node.js modules would hang on page reload on Windows. #28175 (Also in 11, 12, 13)
- Fixed an issue where some dialogs would stop working on macOS if
window.hide()
was called while they were open. #28671 (Also in 11, 12, 13) - Fixed an issue where the
setAlwaysOnTop
value would sometimes not be preserved for child windows on macOS. #29813 (Also in 12, 13, 14) - Fixed an issue where the drag regions in BrowserViews on macOS could be off in their y-axis. #28268 (Also in 10, 11, 12, 13)
- Fixed an issue where the thumbar disappeared after
win.hide()
on Windows. #28366 (Also in 10, 11, 12, 13) - Fixed an issue where the traffic lights would get double-drawn when exiting fullscreen and adding a
BrowserView
on macOS. #30114 (Also in 13, 14) - Fixed an issue where the user-data directory was incorrect in unpackaged apps. #30113 (Also in 14)
- Fixed an issue where the void function
Menu.setApplicationMenu
would return a value on some platforms. #29118 (Also in 12, 13) - Fixed an issue where the window couldn't be closed if a user tried to quit with a message box showing. #28967 (Also in 12, 13)
- Fixed an issue where windows in
simpleFullscreen
mode were not properly resizing when display metrics changed. #28150 (Also in 11, 12, 13) - Fixed an issue with PDF loading on Windows, where metadata was not loading correctly and causing the PDF to load as a blank page. #29827 (Also in 13, 14)
- Fixed context menus not being positioned correctly when near the edge of the screen. #28224 (Also in 11, 12, 13)
- Fixed corner radius for vibrancy view in macOS 11. #28655 (Also in 11, 12, 13)
- Fixed crash when an exception occurs within the event emitter. #28971 (Also in 13)
- Fixed crash when calling
getBackgroundColor
on a transparent window with no assigned background color. #28120 (Also in 11, 12, 13) - Fixed crash when clicking links with
target=_blank
from webview. #29874 (Also in 12, 13, 14) - Fixed crashes in debug builds caused by microtasks policy mismatch. #29531 (Also in 12, 13, 14)
- Fixed crashes on latest gen Intel and Ryzen processors. #29689 (Also in 14)
- Fixed crashes on macOS when
Geolocation
was used. #29913 (Also in 13, 14) - Fixed failing to request file:// resources when web security is disabled. #28489 (Also in 11, 12, 13)
- Fixed hover state not clear bug when BrowserWindow is not resizable. #29721 (Also in 12, 13, 14)
- Fixed incorrect value of
document.focus
when opening multiple windows on macOS. #29204 (Also in 12, 13) - Fixed intensive I/O from asar files causing ERR_FILE_NOT_FOUND after a while. #28137 (Also in 11, 12, 13)
- Fixed issue where the update permission prompt would cause 100% CPU spin while the prompt was open. #29791 (Also in 13, 14)
- Fixed key window status on mac when opening panels or using custom window switchers. #29857 (Also in 12, 14)
- Fixed memory leak when creating notification on macOS. #29990 (Also in 12, 13, 14)
- Fixed memory leak when requesting files in ASAR archive from renderer. #29293 (Also in 12, 13, 14)
- Fixed missing 'fetch' event in service workers for requests using a registered protocol. #29425 (Also in 12, 13, 14)
- Fixed page title not being updated on child windows without navigation entries under nativeWindowOpen. #29946 (Also in 12, 13, 14)
- Fixed permissions issue that was preventing the PDF viewer from displaying. #29210 (Also in 13)
- Fixed potential corruption of piped response data when using interceptHttpProtocol/registerHttpProtocol. #29567 (Also in 11, 12, 13, 14)
- Fixed pressing Alt with mouse click results in toggling menu bar. #29318 (Also in 12, 13, 14)
- Fixed pressing ESC not exiting fullscreen from
webview
. #30063 (Also in 12, 14) - Fixed pressing
Alt+Shift
andAlt+Ctrl
toggling menu bar on KDE. #29328 (Also in 12, 13, 14) - Fixed rare crash when initializing the internal PDF extension. #28432 (Also in 12, 13)
- Fixed redirects between locations in custom protocols. #29796
- Fixed sending intermediate certificates with 'select-client-certificate' event callback. #29552 (Also in 12, 13, 14)
- Fixed service worker not working with custom protocol. #28326 (Also in 11, 12, 13)
- Fixed shifted character getting changed in menu accelerator. #29202 (Also in 12, 13, 14)
- Fixed systemPreferences.getSystemColor returning colors missing alpha values. #30055 (Also in 13, 14)
- Fixed the 'did-fail-load' event not being emitted when the 'certificate-error' handler allowed an error through. #29826 (Also in 14)
- Fixed the
<select>
element dropdown not appearing on Windows or Linux. #29742 (Also in 14) - Fixed the color select eyedropper not working within DevTools. #29729 (Also in 13, 14)
- Fixed the handler set with
setWindowOpenHandler
not being invoked when a link was middle-clicked or shift-clicked. #28498 (Also in 12, 13) - Fixed the possibility for incorrect visual artifacts when using vibrancy and making frameless windows fullscreen on macOS. #29084 (Also in 13)
- Fixed the spelling of 'attachment' in 'Content-Disposition' header when using the webRequest module. #29621 (Also in 12, 13, 14)
- Fixed the window-all-closed event being emitted while the last BrowserWindow was still in the process of being closed. #28867 (Also in 11, 12, 13)
- Fixed tray.setTitle not respecting ANSI colors if a font type was specified. #30146
- Fixed typescript export definitions such that not-exported values are not declared in the exports interface. #28712
- Fixed using navigator.setAppBadge and navigator.clearAppBadge from a service worker in Electron. #27950 (Also in 12)
- Fixed using vibrancy with titleBarStyle together resulting in weird window shadow on macOS. #29114 (Also in 13)
- Installing the
electron
package on an M1 macbook while using an x64 version of node will now automatically download the arm64 version of Electron instead of the x64 version. #29953 - No longer set backgroundColor in default-app when opening custom files / URLs. #28792 (Also in 10, 11, 12, 13)
- Restored cross-platform noop implementation of
app.setAppUserModelId
. #28915 (Also in 13) - Support
wasm-eval
csp behindWebAssemblyCSP
flag. #28535 (Also in 11, 12, 13) - Transparent windows cannot be maximized using the Windows system menu or by double clicking the title bar. #28207 (Also in 12, 13)
- URLS passed to
shell.openExternal
on windows are now correctly URI encoded. This was already occurring on macOS and Linux. #28334 (Also in 10, 11, 12, 13)
Other Changes
- : Updated Node.js to v16.2.0. #29244
- Adds an additional crash key to gin::wrappable. #30161
- Backported fix for 1216190. #30084 (Also in 12, 13, 14)
- Deprecated
worldSafeExecuteJavaScript
option was removed fromwebPreferences
. #28456 - Fixed
app.getPath('logs')
returning the wrong path on Linux and Windows. #29649 (Also in 14) - Fixed a feature flag issue where spellchecker methods returned empty suggestion lists on Windows. #29690 (Also in 13, 14)
- Fixed native module compilation with AsyncCleanupHooks on windows. #28067 (Also in 11, 12, 13)
- Fixed using custom v8 snapshots on Apple Silicon. #29338 (Also in 12, 13)
- Improved performance characteristics of functions being sent back and forth over the contextBridge. #28285
- Improved performance of
napi_threadsafe_function
. #29021 (Also in 12, 13) - Refactored
<webview>
usingcontextBridge
to make it safer to use whencontextIsolation
is enabled. #29037 - Removed the deprecated
app.allowRendererProcessReuse
and BrowserWindowaffinity
options. #26874 - Updated Chromium to 93.0.4566.0. #29980
- Updated Node.js to v16.5.0. #30031
- Updated community discussions link in default Electron menu. #28449 (Also in 12, 13)