Release Notes for v8.0.0
Generating release notes between origin/7-1-x and origin/8-x-y for version v8.0.0
Breaking Changes
- Upgraded to Chromium
80.0.3987.86
(New since Electron 7: Chromium 79, 80) - Upgraded to Node
12.13.0
(New since Electron 7: Node 12.9, 12.10, 12.11, 12.12, 12.13) - Upgraded to V8
8.0
(New since Electron 7: V8 7.9, 8.0) - IPC between main and renderer processes now uses the Structured Clone Algorithm. #20214
Features
- Added
--enable-api-filtering-logging
command-line switch, which enables caller stack logging fordesktopCapturer
andremote
APIs that can be blocked or filtered. #20335 - Added
app.getApplicationNameForProtocol()
. #21117 - Added
app.setAboutPanelOptions()
support forcredits
andiconPath
on Windows. #19420 - Added
BrowserWindow.moveAbove(mediaSourceId)
. #18926 - Added
contents.getAllSharedWorkers()
andcontents.inspectSharedWorkerById(workerId)
to allow inspection of specific shared workers. #20389 - Added
Notification()
options'timeoutType
property to allows users to set timeout type for Linux and Windows notifications. #20153 - Added
Notification()
options'urgency
property to allow customization of Linux-based notifications. #20152 - Added
session.addWordToSpellCheckerDictionary
API to support custom words in the. #21297 - Added
session.downloadURL()
to allow downloads to trigger without aBrowserWindow
. #19889 - Added
systemPreferences.getMediaAccessStatus().screen
for detecting the new macOS Catalina permissions. #21116 - Added
trafficLightPosition
option inBrowserWindow
API to allow custom positioning of traffic lights. #21990 - Added
tray.displayBalloon()
options:iconType
,largeIcon
,noSound
andrespectQuietTime
. #19544 - Added
tray.focus()
, which returns focus to the taskbar notification area. #19548 - Added
tray.removeBalloon()
, which removes an already displayed balloon notification. #19547 - Added
WebContents.printToPDF()
support for fitToPageEnabled and scaleFactor. #20436 - Added
win.accessibleTitle
property to augment the window title for screen readers. #19698 - Added options to enable customization of print page headers and footers. #19688
- Added support for picture-in-picture mode for video elements. #17686
- Added support for the built-in spellchecker. We will use the OS spellchecker on macOS and hunspell on all other platforms. #20897
- Added the ability to prevent documents from being added to recent documents on Windows in open dialogs. #19669
- Enable macOS users to fallback to item removal when when
shell.moveItemToTrash
fails. #19700 - Exposed
webContents.executeJavaScriptInIsolatedWorld
. #21267 - Exposing methods required by capturing a hidden webContents. #21895
- Added
BrowserWindow.will-move
event support on macOS. #19641 - Improved
TouchBarButton
andTouchBarLabel
a11y with the newaccessibilityLabel
property. #20454
Fixes
- Added name of module to context-aware deprecation warning (#18397). #21958
- Fixed Linux console warning about gtk_disable_setlocale(). #19986
- Don't destroy active menus created as local objects in javascript. #19427
- Fixed
BrowserWindow.fromWebContents()
to returnnull
when no window is found for consistency with other APIs. #19983 - Fixed a crash that could occur when calling
crashReporter.getUploadedReports
. #20428 - Fixed a potential crash on faulty
deviceName
s inwebContents.print()
. #21982 - Fixed an issue in the remote module which could cause the name of the Object constructor to be overwritten globally. #20637
- Fixed an issue that prevented setuid binaries from being launched from the renderer process on Linux. #19953
- Fixed an issue where
menu.closePopup()
would have no effect if called too soon aftermenu.popup()
. #20114 - Fixed an issue where
net
requests with redirection mode 'error' could incorrectly follow a redirect. #20686 - Fixed an issue where microtasks could sometimes be scheduled too eagerly, causing crashes when invoking Electron APIs during promises in certain situations. #20303
- Fixed an issue where sites using
ShadowDOMV0
,CustomElementsV0
, orHTMLImports
would not load properly. #21866 - Fixed an issue with Node.js context initialization in renderer processes. #20836
- Fixed async Node APIs not working after received IPC message. #19718
- Fixed compilation error for native modules building with VS 2015. #21960
- Fixed crash when doing redirect navigation with webRequest listener. #21841
- Fixed debug symbol files on linux not containing private symbols. #20530
- Fixed disabling color correct rendering with
--disable-color-correct-rendering
. #20356 - Fixed issue with when playing videos or audio Electron would ask for accessibility access. #21998
- Fixed memory leak when using protocol.registerSchemeAsPrivileged api. #20546
- Fixed printing. #21059
- Fixed setting
content-type
header with charset breakingprotocol
APIs. #20538 - Fixed several deprecation warnings in Electron code. #20805
- Fixed some
systemPreferences.getColor()
inconsistencies on macOS. #20611 - Fixed white flash after restoring an app from the background. #19873
- Prevented 'Reopen windows?' dialog from appearing on macOS after a crash. #19584
- Re-enable DOM storage quota enforcement but change limit from 10MiB to 100MiB. #21380
- Removed unnecessary chromium patch for browser compositor on mac. #20390
setLayoutZoomLevelLimits
no longer works in Electron 8, so emit a warning message when using it. The function will be removed in Electron 9. #21360- Fixed a crash that could occur if a WebContents was destroyed during a navigation event. #20099
- Fixed bug in 8.0.0 beta releases that prevented the dictionarySuggestions property from being populated correctly when the built-in spellchecker is enabled. #22015
Other Changes
- Added Windows on Arm (64 bit) release. #20094
- Added Windows on Arm node header files to checksum file. #20255
- Deprecated the default value of
app.allowRendererProcessReuse
(See #18397). #21287 - Deprecated
<webview>.getWebContents()
due to its dependency on theremote
module. #21039 - Fixed first beta version choosing logic. bf66fe51
- Made strip_absolute_paths_from_debug_symbols to false in debug.gn. #21316
- No-notes. #18760, #20003
- Removed undocumented
ipcRenderer.sendToAll()
. #19556