npm install electron@v26.0.0
yarn add 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. #39459 - The
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. #39357 - Surface 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. #39487 - Fixed a crash calling
nativeImage.resize()
before the appready
event. #38861 - Fixed a crash in
clipboard.readImage()
when reading images copied via context menu on macOS. #39101 - Fixed a crash while screen sharing on Wayland with PipeWire. #39264
- Fixed a potential crash when calling
tray.popUpContextMenu
on macOS. #39313 - Fixed 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. #39189 - Fixed an accessibility issue where
VoiceOver
couldn't trigger the tray action when selected to emit the click event. #39439 - Fixed 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.