Electron v26.0.0
Release Notes
Stack Upgrades
Chromium
116.0.5845.62
Node
18.6.1
V8
11.2
Breaking Changes
The
webContents.getPrinters
API has been deprecated. #39459The
systemPreferences.getAppLevelAppearance
andsystemPreferences.setAppLevelAppearance
APIs have been deprecated, as well as thealternate-selected-control-text
value forsystemPreferences.getColor
. #39492
Features
Additions
Added
safeStorage.setUsePlainTextEncryption
andsafeStorage.getSelectedStorageBackend
api. #39107 (Also in 25)Added
safeStorage.setUsePlainTextEncryption
andsafeStorage.getSelectedStorageBackend
api. #39155 (Also in 25)Added
senderIsMainFrame
to messages sent viaipcRenderer.sendTo()
. #39206 (Also in 24, 25)Added net.resolveHost that resolves hosts using defaultSession object. #37853 (Also in 24, 25)
Added new 'did-resign-active' event on
app
. #37933 (Also in 25)Added partial support for
chrome.tabs.query
. #39431 (Also in 25)Added setUSBProtectedClassesHandler to allow access to protected USB classes with WebUSB. #38263 (Also in 24, 25)
Added several new cursor values to the
cursor-changed
event. #38210 (Also in 24, 25)Added support for Mica and Acrylic background effects on Windows. #38163 (Also in 24, 25)
Added support for flagging a Menu as being keyboard initiated. #38954
Added support for several more Node.js cli flags in the main process. #39373 (Also in 24, 25)
Added the ability to send HTTP headers with
session.downloadURL()
. #38871 (Also in 25)Added thermal management information to
powerMonitor
. #37935 (Also in 24, 25)Expose
webContents
methods to center text selection, scroll to the page bottom and top, as well as adjust selected text. #37978 (Also in 25)Support Chrome Extensions
minimum_chrome_version
manifest key. #39357Surface the
context-menu
event from extensions. #38029 (Also in 25)node:
prefixed requires are now supported in sandboxed renderer preloads forevents
,timers
andurl
. #38728 (Also in 24, 25)
Improvements
Improved error message when
contentTracing.stopRecording()
fails because no trace was in progress. #38488 (Also in 23, 24, 25)
Removed/Deprecated
The
enable_desktop_capturer
build flag has been removed. #38412
Fixes
Fixed
clipboard.readImage()
getting blocked when there is no PNG image in the clipboard. #39487Fixed a crash calling
nativeImage.resize()
before the appready
event. #38861Fixed a crash in
clipboard.readImage()
when reading images copied via context menu on macOS. #39101Fixed a crash while screen sharing on Wayland with PipeWire. #39264
Fixed a potential crash when calling
tray.popUpContextMenu
on macOS. #39313Fixed a potential crash when re-parenting a BrowserWindow whose first parent has been destroyed. #39297
Fixed a redundant permission popup while fetching screens and windows using
desktopCapturer.getSources()
on Wayland. #39189Fixed an accessibility issue where
VoiceOver
couldn't trigger the tray action when selected to emit the click event. #39439Fixed an issue where calls to
window.setKiosk(false)
would exit fullscreen regardless of the fullscreen state prior to kiosk mode. #38219
Also in earlier versions...
Added about panel for menu role
about
on Linux as well. #37828 (Also in 23, 24, 25)Added transparent color support for WCO on Windows. #38716 (Also in 25)
Ensured that Electron's custom
AXManualAccessibility
attribute works as expected in all relevant protocol methods. #38142 (Also in 23, 24, 25)Fixed
desktopCapturer
thumbnail generation after screen sharing is cancelled on Wayland. #39246 (Also in 25)Fixed
preload
script may not run in some child windows opened bywindow.open
. #38930 (Also in 23, 24, 25)Fixed
webContents.printToPDF
preferCSSPageSize
type error. #38793 (Also in 24, 25)Fixed a console error seen when loading PDFs. #38127 (Also in 25)
Fixed a crash seen when trying to change
nativeTheme
source during mara context menu close. #38840 (Also in 25)Fixed a crash when listing desktop capture sources on Wayland with PipeWire. #39049 (Also in 23, 24, 25)
Fixed a potential crash calling
BrowserWindow.removeBrowserView()
with a destroyedwebContents
. #38885 (Also in 24, 25)Fixed a potential crash when calling
webContents.print
with invalid settings. #38165 (Also in 25)Fixed a potential crash when right-clicking on macOS windows with draggable regions. #38100 (Also in 24, 25)
Fixed a rare crash when closing active native tab on macOS. #39410 (Also in 25)
Fixed an error with
webContents.print
parameter validation by adding missing options required to set printer printable area. #38721 (Also in 25)Fixed an error seen in the Top Level Windows section of
chrome://accessibility
. #38179 (Also in 25)Fixed an issue on Linux where menus would not open after resizing/maximizing/unmaximizing a window. #37798 (Also in 23, 24, 25)
Fixed an issue on Windows 10 where the title bar was not correct after changing native theme. #39309 (Also in 25)
Fixed an issue where Windows
FrameView
s always appeared inactive regardless of focus status. #38468 (Also in 25)Fixed an issue where
<datalist>
popups are positions incorrectly inBrowserView
s. #38610 (Also in 23, 24, 25)Fixed an issue where
BrowserWindow.isMaximized()
could incorrectly return true for minimized or fullscreened windows on macOS. #38291 (Also in 23, 24, 25)Fixed an issue where
BrowserWindow.isVisible()
would incorrectly returntrue
for minimized windows on Windows. #38242 (Also in 23, 24, 25)Fixed an issue where
BrowserWindow.moveAbove()
andBrowserWindow.moveTop()
did not work for child windows on macOS. #39070 (Also in 24, 25)Fixed an issue where
MediaStreamTrack.getCaptureHandle()
always returnednull
. #38390 (Also in 24, 25)Fixed an issue where
browserView.removeBrowserView
could cause a crash in some cases. #39406 (Also in 24, 25)Fixed an issue where
chrome.i18n
did not work properly with Chrome Extensions Manifest V3. #39328 (Also in 24, 25)Fixed an issue where
chrome.tabs
did not work properly with Chrome Extensions Manifest V3. #39360 (Also in 25)Fixed an issue where
chrome.tabs.update
did not return atab
object that properly reflected potential properties that were changed. #39389 (Also in 25)Fixed an issue where
getNormalBounds()
returns incorrect bounds for transparent maximized windows on Windows. #38218 (Also in 23, 24, 25)Fixed an issue where
navigator.connection
returned incorrect data. #38491 (Also in 24, 25)Fixed an issue where
protocol.handle()
never called its callback with the'file'
scheme. #39065 (Also in 25)Fixed an issue where
webContents.print()
stopped triggering its callback when the user cancelled the print dialog. #38735 (Also in 25)Fixed an issue where accessing
BrowserWindow.id
threw an error after the window was destroyed. #38241 (Also in 23, 24, 25)Fixed an issue where calling
win.minimize()
directly after callingwin.maximize()
, and then callingwin.isMaximized()
incorrectly returnstrue
. #38234 (Also in 23, 24, 25)Fixed an issue where certain Electron classes had incorrect prototype class names. #39036 (Also in 25)
Fixed an issue where certain buttons in the PDF viewer didn't work. #37856 (Also in 23, 24, 25)
Fixed an issue where default background color for windows might be incorrect. #36914 (Also in 23, 24, 25)
Fixed an issue where files could in some circumstances be selection when
openFile
was not passed as a dialog property. #38590 (Also in 24, 25)Fixed an issue where macOS traffic lights could malfunction on child windows in some circumstances. #39242 (Also in 24, 25)
Fixed an issue where mksnapshot would crash with a sigbus error. #38490 (Also in 25)
Fixed an issue where non-resizable windows incorrectly enabled the fullscreen/maximize button on initial window creation on macOS. #39229 (Also in 24, 25)
Fixed an issue where notifications created on macOS which have no actions will erroneously have a
Show
button visible. #39013 (Also in 24, 25)Fixed an issue where passing
webContents.print(null)
could incorrectly trigger an error. #38641 (Also in 24, 25)Fixed an issue where printing on Windows could trigger a crash. #39039 (Also in 25)
Fixed an issue where removing a webview in a close callback could cause crashes. #39007 (Also in 24, 25)
Fixed an issue where service workers could not run Chrome APIs in Chrome Extensions Manifest V3. #39310 (Also in 25)
Fixed an issue where setting bounds on
BrowserViews
can behave inconsistently across platforms. #39004 (Also in 25)Fixed an issue where the 'swipe' event wasn't being emitted properly on macOS. #37946 (Also in 24, 25)
Fixed an issue where the pageVisibility API returned incorrect values in some situations when
backgroundThrottling
was disabled. #39298 (Also in 25)Fixed an issue which made defaultFontFamily in webPreferences have no effect. #37863 (Also in 22, 23, 24, 25)
Fixed an issue with
webContents.print({ silent: true })
not working correctly. #38812 (Also in 25)Fixed an issue with potential use-after-free of child windows on close and reparent. #38679 (Also in 24, 25)
Fixed an issue with the application menu overlapping menu items on Windows 11. #39010 (Also in 25)
Fixed an perceived failure when when using Accessibility attribute
AXManualAccessibility
to enable a11y features in Electron. #38102 (Also in 23, 24, 25)Fixed asar integration for
node:child_process
imports. #39234 (Also in 24, 25)Fixed broken defaults in
shell.openExternal()
options. #38038 (Also in 22, 23, 24, 25)Fixed crash in message ports when utility process exits. #39346 (Also in 25)
Fixed crash when executing eval in the utility process. #38014 (Also in 22, 23, 24, 25)
Fixed display of title bar buttons on Wayland. #39045 (Also in 25)
Fixed potential invalid protocol error handling. #38635 (Also in 25)
Fixed potential issues when minimizing parent windows with non-modal children on macOS. #38460 (Also in 23, 24, 25)
Fixed recommended
node-gyp
version innode.h
error. #37829 (Also in 22, 23, 24, 25)Fixed visibility of menu bar when exiting full screen. #38683 (Also in 23, 24, 25)
Fixed an issue where
chrome.tabs
did not work properly with Chrome Extensions Manifest V3. #39360 (Also in 25)
Other Changes
Documentation
Notices
End of Support for 23.x.y
Electron 23.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.