Fixed long jitter buffer delays with Opus and DTX (mistakenly marked as fixed in 2.0.1). #13009
Documented missing quit events during shutdown. #13026
Updated locale documentation. #13027
Menu.setApplicationMenu(null) crash. #13022 Fixed flaky security-warnings test. #12776, #12946
Fixed context menu for sandbox devtools. #12731
Fixed dialog.showOpenDialog filters to show filter name instead of extension. #12779
Fixed invisible menu items no longer triggering. #12831
Fixed listeners out of limit warning. #12856
[SECURITY] Updates command-line backlist switches. #12806
Fixed typescript generation error. #12940
Fixed empty description on file type input when only one extension is given. #12963
inAppPurchase.canMakePayments(). #12824 Fixed to allow frameless transparent windows to be sized smaller than 64x64 on Windows. #12923
Backported sandbox fixes from Chromium. #12785
Note: This is the stabilization release for 2.0.0. There are no code changes between 2.0.0 and 2.0.0-beta.8
2.0.0 contains the following changes from the 1.8.x series:
shutdown event to powerMonitor. #11417affinity option for gathering several BrowserWindows into a single process. #11501Removed deprecated APIs, including:
menu.popup signature. #11968crashReporter.setExtraParameter #11972webContents.setZoomLevelLimits and webFrame.setZoomLevelLimits. #11974clipboard methods. #11973tray.setHighlightMode. #11981webContents.isOffscreen() is always available. #12531 BrowserWindow.getFocusedWindow() when DevTools is undocked and focused. #12554 Menu.buildFromTemplate. #12703 getLastCrashReport() is actually the last crash report. #12255hexColorDWORDToRGBA for transparent colors. #11557console-message event even when rendering offscreen. #11921WebContents.downloadURL. #11804setTitle tray crash. #12356desktopCapturer to capture the correct screen. #11664disableHardwareAcceleration with transparency. #11704Note: This is a beta release. Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta, or npm i electron@2.0.0-beta.8.
Changed to make sure webContents.isOffscreen() is always available. #12531
Fixed BrowserWindow.getFocusedWindow() when DevTools is undocked and focused. #12554
Fixed preload not loading in sandboxed render if preload path contains special chars. #12643
Fixed the default of allowRunningInsecureContent as per docs. #12629
Fixed transparency on nativeImage. #12683
Fixed issue with Menu.buildFromTemplate. #12703
Note: This is a beta release. Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta, or npm i electron@2.0.0-beta.7.
Note: This is a beta release. Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta, or npm i electron@2.0.0-beta.6.
setTitle tray crash. #12356Note: This is a beta release. Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta, or npm i electron@2.0.0-beta.5.
:wrench: Fix security warning. #12313
Fix AttributeError: 'dict' object has no attribute 'required'. #12307
net: change mime type deduction in Change URLRequestAsarJob (#12319). #12333
Backport (2-0-x) - Better GTK+ Menu color support. #12331
Backport (2-0-x) - Check menu.popup options are an object. #12330
Backport (2-0-x) - Update CI to use Node.js 8. #12353
Backport (2-0-x) - Remove the race condition between new process creation and context release. #12361
Backport (2-0-x) - Update draggable regions when changing BrowserView. #12370
Note: This is a beta release. Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta, or npm i electron@2.0.0-beta.4.
BrowserView.{destroy,isDestroyed}. #12299 getLastCrashReport() is actually the last crash report. #12255 Note: This is a beta release. Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta, or npm i electron@2.0.0-beta.3.
[SECURITY] Fixed Integer overflow with PropertyArray issue. #12133
Fixed context menu click callback. #12170
Fixed popup menu position. #12181
Fixed arm64 crashing. #12178
Deprecated getMenuBarHeight. #12137
Add warning when addTabbedWindow is called on self. #12059
Fixed setVibrancy crashing. #12171
Note: This is a beta release. Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta, or npm i electron@2.0.0-beta.2.
Note: This is a beta release. Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta, or npm i electron@2.0.0-beta.1.
59.0.3071.115 to 61.0.3163.10. #102138.2.1 to 8.9.3. #102135.9.211.38 to 6.1.534.41. #10213menu.popup signature. #11968crashReporter.setExtraParameter #11972webContents.setZoomLevelLimits and webFrame.setZoomLevelLimits. #11974clipboard methods. #11973tray.setHighlightMode. #11981hexColorDWORDToRGBA for transparent colors. #11557window.loadFile and webContents.loadFile helper methods. #11565menu-will-show and menu-will-close menu events. #11754.--chromium_dir argument to script/create-dist.py. #11354shutdown event to powerMonitor. #11417Object.values(). #11836affinity option for gathering several BrowserWindows into a single process. #11501console-message event even when rendering offscreen. #11921WebContents.downloadURL. #11804desktopCapturer to capture the correct screen. #11664disableHardwareAcceleration with transparency. #11704Fixed context menu for sandbox devtools. #12734
[SECURITY] Updated command-line backlist switches. #12807
Fixed contents.setSize(options) documentation in web-contents.md. #12922
Fixed empty description on file type input when only one extension is given. #12962
net::ERR_INSECURE_RESPONSE on https error. #12117Note: This is a stable release and should be generally stable for most apps.
Stable release of 1.8.2. This is the same release as 1.8.2-beta.5, but the version has been updated.
Note: This is a beta release. Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta, or npm i electron@1.8.2-beta.5.
Note: This is a beta release. Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta, or npm i electron@1.8.2-beta.3.
setApplicationMenu(null). #11055executeJavaScript throws an error, pass the error along. #11158options argument being optional. #11185titleBarStyle: hidden from incorrectly logging an error. #11164BrowserView.getAllViews() and BrowserView.getFromWebContents(). #11225BrowserView.fromBrowserView(). #11224console-message events. #11056registerStreamProtocol and interceptStreamProtocol. #11008mips64el target. #11208Note: This is a beta release. Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta, or npm i electron@1.8.2-beta.2.
Notification.show 2 times.onclick incorrectly triggering when clicking close on notification. #10943NOT IMPLEMENTED error when calling getAppMetrics(). #10954 did-attach-webview event to WebContents. #10711Note: This is a beta release. Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta, or npm i electron@1.8.2-beta.1.
_setEscapeTouchBarItem. #10725process.getCPUUsage(). #10680 getPath(). #10191 BrowserWindow opacity. #10667nodeIntegration enabled. #10708session.setCertificateVerifyProc(proc). #10810app.setAsDefaultProtocolClient support for Linux. #10670addTabbedWindow to BrowserWindow. #10508mouse-move event and click event position for the Tray class. #10361nativeImage.createFromNamedImage(imageName[, hslShift]) to get a nativeImage from a named NSImage. #10727systemPreferences.removeUserDefault(key). #10746Note: This is a beta release. This is the first release running on upgraded versions of Chrome/Node.js/V8 and most likely will have have some instability and/or regressions.
Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta, or npm i electron@1.8.1.
58.0.3029.110 to 59.0.3071.115. #99467.9.0 to 8.2.1. #99925.8.283.38 to 5.9.211.38. #9946@types/node ^7.0.18 to ^8.0.24. #10328sandbox is on. #10214did-change-theme-color event. #10240chrome-extension. #9950getMenuItemById(id) to Menu API. #10440app.makeSingleInstance hanging. #10518show option on new BrowserWindow when parent is specified. #8836shell.openItem to activate the opened app. #10477-webkit-app-region support to BrowserView. #10232webContents.print. #10081sound in macOS notifications. #10293app.isInApplicationsFolder() and app.moveToApplicationsFolder(). #10142app.setAccessibilitySupportEnabled(enabled) to enable or disable accessibility support in macOS. #7206, #10305BrowserWindow API. #10321BrowserWindow API. #10254win.setIgnoreMouseEvents(ignore[, options]). #10183Electron 1.8.0 was a beta release that was pulled due to security reasons.
This release now only contains the chromedriver and mksnapshot release files as those are needed for electron-chromedriver and electron-mksnapshot and are not vulnerable to the security issue.
[SECURITY] Updated command-line backlist switches. #12808
[SECURITY] Disabled executable stack in electron binary. #12928
Added Offscreen rendering improvements. #11730
[SECURITY] Fixed Integer overflow with PropertyArray issue. #12203
[SECURITY] Set appropriate defaults for webview options. #12294
Fixed support for precision trackpad / mouse scrolling. #12203
Fixed issues around update permissions and non-admin users. #10071 #10298
app.makeSingleInstance hanging. #10586-webkit-app-region support to BrowserView. #10232sound in macOS notifications. #10293WebContents #9819code and domain as properties to error events emitted by autoUpdater module #10125TouchBarScrubber.continuous was getting ignored #10133accept file types #10015BrowserView.fromId() which returned the BrowserView with the given id #10039BrowserWindow.addExtension, BrowserWindow.removeExtension, BrowserWindow.getExtensions to add/remove/get Chrome extensions in an Electron app #9918treatPackageAsDirectory flag to dialog.showOpenDialog, in order to treat packages, such as .app folders, as a directory instead of a file #9834nativeWindowOpen could
lose their configured webContents options when navigating URLs. #9972<input> elements using accept attributes. #9745show() on a modal window would cause the
parent window to not be re-enabled when the modal was closed. #9962alwaysOnTop windows would not reappear correctly
after being restored from a miniaturized position. #9695Tray objects not properly dispatching a click event when the first
subitem was selected. #9967app.disableDomainBlockingFor3DAPIs() API to disable the Chrome
behavior of disabling 3D APIs for domains where the GPU process crashes
too frequently. #10003new-window event now supports configuring the webPreferences of
the window being opened from a window using the sandbox or
nativeWindowOpen options. #9972subtitle option is now supported when creating notifications. #9903fullscreenWindowTitle option to the BrowserWindow constructor
to show the window title when in fullscreen for windows using a custom
titleBarStyle. #9788--inspect and --inspect-brk flags are now supported when spawning
child node processes. #9739Buffer constructor and instead
used Buffer.from. #9733<webview> pages. #9741webContents.printToPDF as the pageSize height or width. #9396BrowserView. #9828dialog.showSaveDialog now shows the last selected directory when the
defaultPath is not absolute. #9588webContents.setIgnoreMenuShortcuts(ignore) API to
ignore menu keyboard shortcuts for a specific page.app.enableMixedSandbox() API that adds the
--enable-sandbox flag to any BrowserWindow instances or <webview> tags
created with the sandbox: true option.new-window-for-tab event is now emitted on app when the native
new tab button is pressed. #9725CommandOrControl+Shift+1
will now display in the menu as ⇧⌘1 instead of ⌘!. #9743Tray instances now emit mouse-enter and mouse-leave events. #9760RenderFrameHostImpl::SetNavigationHandle. #9674window.history.pushState() API did not behave
correctly on certain pages. #9468document.hidden, document.visibilityState, and the
visibilitychange event did not behave correctly. Also windows now report as
hidden when they are occluded on macOS. #9178<datalist> elements on Windows and Linux. #9535Notification objects from the main
process. #9269app.getGPUFeatureStatus() API that returns the information
displayed in the chrome://gpu page. #9623powerPreference when creating a wegbl-based
<canvas> context. #9704screen.getMenuBarHeight() API. #9572customButtonsOnHover setting to the BrowserWindow
titleBarStyle option that draws custom close, minimize, and full screen
buttons on hover. #8958<webview> tag that was using
the nativeWindowOpen option. #9568plugins option
is disabled on the BrowserWindow. #9507<webview> tags
would result in double letters. #9508<webview> tag would
incorrectly zoom the BrowserWindow. #9592--inspect and
--inspect-brk and connecting via the chrome://inspect page in Chrome. #9473deviceName to webContents.print. #8596webContents.getPrinters() API to get a list of the available
printers. #8596shell.moveItemToTrash now supports the gio trash implementation on Linux.
#9518<webview> tag can now be enabled in windows that have nodeIntegration
disabled. This is configurable via the new webviewTag option to the
BrowserWindow constructor. It defaults to the value of the nodeIntegration
option if unspecified. See the webview/security docs for more information.
#9397clipboard.writeBuffer(format, buffer) API to write a raw buffer to
the clipboard as a custom format. #9243app.getAppMetrics() API that returns the memory and CPU
usage information for all processes. This replaces the
app.getAppMemoryInfo() API which is now deprecated. #9486--debug or --debug-brk
command line flags. #9436electron.d.ts TypeScript definition file.<webview> tags are now supported by the offscreen
rendering option. #8839protocol.interceptBufferProtocol. #9360window.open implementation
via the nativeWindowOpen option to the BrowserWindow constructor. #8963will-prevent-unload event to webContents that can be used to
prevent a page from preventing the unload of a page. #9331--disk-cache-size Chrome option. #9435webContents.getOSProcessId() API to get the operating system
pid for a renderer process. #9222Note: This is a beta release. This is the first release running on upgraded versions of Chrome/Node.js/V8 and most likely will have have some instability and/or regressions.
Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta.
56.0.2924.87 to 58.0.3029.110. #91167.4.0 to 7.9.0. #91165.6.326.50 to 5.8.283.38. #9116NODE_MODULE_VERSION/process.versions.modules value from 53
to 54. #9116chromedriver asset released with every new minor Electron release now
contains the Electron version in the file name. #8682This release marks the end of 1.6.x's support cycle. For more details on supported versions, please see https://electronjs.org/docs/tutorial/support#supported-versions.
about-to-show signal whenever the menu has been changed, resulting in an infinite loop. #10070plugins setting
is disabled on the BrowserWindow. #9564electron.d.ts TypeScript definition file. https://github.com/electron/electron/pull/9484beforeunload would not correctly fire after
reloading. #9292app.getAppMemoryInfo() API with memory details for each process
associated with the app. #9214process.getCPUUsage() and process.getIOCounters() APIs. #9373process.getProcessMemoryInfo() and process.getSystemMemoryInfo() are now
callable from sandboxed renderer processes. #9333electron.d.ts, is now provided with each
release. #7857TouchBarSegmentedControl
items via a new mode property. #9315dialog.showCertificateTrustDialog() API. #9242alert, confirm,
open, history.go, and postMessage would throw errors in the main process
instead of the renderer processes when the arguments were invalid. #9252chrome-devtools: URLs would incorrectly override certain window options. #9278window.open would
throw errors in the main process. #9287sandbox option enabled. #9314postMessage across windows where the
targetOrigin parameter was not correctly compared against the source
origin. #9301webPreferences in the features parameter
to window.open would throw an error in the main process. #9289Error emitted on autoUpdater error events
would be missing the message and stack properties when serialized to JSON
or sent over IPC. #9255require is now set to the application root
for non-file: URLs such as about:blank. #9095javascript option is now disabled in windows opened from a window that
already has it disabled, similar to the nodeIntegration option. #9250sheet-begin and sheet-end events are now emitted by BrowserWindow
instances when dialog sheets are presented/dismissed. #9108session-end event is now emitted by BrowserWindow instances when the
OS session is ending. #9254app.exit() did not close all open windows. #9133scrollBounce to true did not enable it. #9134dialog.showMessageBox. #9187xinput1_3.dll from the distribution. #9157BrowserView class that is an alternative to the
<webview> tag. #9166flushStore(callback) API to the Cookies module that writes
any unwritten cookie data to disk. #9194iconPosition property to TouchBarButton items to change the icon
position. #9208remote module issue where errors thrown in the main process while
setting remote properties would not be re-thrown in the renderer process.
#9097remote module issue where certain remote objects could not be set as
remote properties. #9101--eval argument would not receive messages. #9132kioclient will now be used on KDE when shell.moveItemToTrash is called.
#8528dialog.showCertificateTrustDialog API that prompts the user
to accept a self-signed or untrusted certificate. #9099esc button on the touch bar with a custom
item. #9023ffmpeg that
does not include proprietary codecs. #9057<webview> tags. #9037net module
and the response's content encoding was not supported. #9001net module requests did not support non-string
header values. #9062& characters could not be used in top-level
menu item labels. #8984crashReporter module is now available in sandboxed renderer processes.
#8956net module.
#9007editMenu and windowMenu menu item roles that include the standard
OS submenu items. #8880tabbingIdentifier option to the BrowserWindow
constructor that enables groupable native tabs on macOS 10.12+. #9052uploadToServer option to crashReporter.start is now supported. #9053webContents.executeJavaScript would fail
if the loaded page had deleted the Promise global. #8845toString on a remote
function. #8890Menu.popup API would
throw an error if the optional async property was not set. #8974NativeImage APIs now support a scaleFactor option like
toDataURL, toBitmap, getBitmap, and toPNG. #8849NativeImage now has an addRepresentation method to build up an image
with different representations at different scale factors. #8858Buffer objects are now supported over ipcRenderer when using sandbox
mode. #8900remote module is now available when using sandbox mode. #8939clipboard.readBuffer API to read a custom format type from
the clipboard as a Buffer. #8942uploadToServer option to crashReporter.start is now supported. #8883Note: This is a beta release. This is release is running on an upgraded version of Chrome and may have some instability and/or regressions. Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta.
fetch API when context
isolation was enabled. #8804done event would be emitted twice for canceled
DownloadItem instances. #8678webContents.executeJavaScript
would not resolve when no callback was specified. #8744process.windowStore would be incorrect on machines with
a non-standard WindowsApps folder location. #8806baseURLForDataURL option to the loadURL API that can be used
to set the base URL to load relative paths from in data URLs. #8799BrowserWindow.setTouchBar. #8095Buffer global would be unavailable in modules
required from preload scripts when node integration was disabled. #8758<webview> tags were in a page. #8742async option to the menu.popup API that causes the method
to return immediately instead of after the menu is closed on all platforms
and also no longer blocks rendering updates on macOS. #8702dialog.showMessageBox API now supports the cancelId property
similar to other platforms. #8733Buffer class is no longer available on the window global when
Node integration is disabled. #8605coffee-script, threw errors
when required. #8618minimumFontSize, defaultFontSize, and defaultMonospaceFontSize
settings can now be configured via the webpreferences attribute of a
<webview> tag. #8542titleBarStyle value of hidden-inset did not work on
certain OS versions. #8619scroll-touch-end event not firing. #8673BrowserWindow.setVibrancy not working on certain OS versions. #8717app.getFileIcon(path, callback) API to get the native icon for a
file type. #7851session.setCertificateVerifyProc API is now
provided the certificate verification result and can be rejected with any
error code supported by Chrome. #7955dialog.showMessageBox API now supports showing a checkbox with a
message in the dialog. The state of the checkbox will be provided to the
callback. #8590webContents now emits a will-attach-webview event that can be used to
configure the settings of a<webview> tag before it is attached.
Calling event.preventDefault() will destroy the <webview>. #8584webContents are now persisted in a session on a
per-origin basis. #8537webContents.invalidate() on non-offscreen pages to
schedule a paint of the entire view. #8628dialog.showSaveDialog now supports message, nameFieldLabel, and
showsTagField options. #8556dialog.showOpenDialog now supports a message option. #8556dialog.showOpenDialog now supports a noResolveAliases property to
disable automatic alias (symlink) resolution. #8617crashReporter.setExtraParameter API to adjust the extra data sent
on crashes. #8648Note: This is a beta release. This is the first release running on an upgraded version of Chrome and may have some instability and/or regressions. Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta.
54.0.2840.101 to 56.0.2924.87. #85015.4.500.43 to 5.6.326.50. #8501NODE_MODULE_VERSION/process.versions.modules from 51 to 53. #8501 Note: This is a beta release. This release run on recently upgraded versions of Chrome and Node and may have some instability and/or regressions. Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta.
process.crashReporter.start API. See the crashReporter module docs
for usage details. #8109before-input-event event on webContents now includes the code
property. #8561forcereload menu item role has been added that maps to the focused
window's webContents.reloadIgnoringCache method. #8570dialog.showOpenDialog API now accepts a promptToCreate property
that allow files that do not exist to be entered into the dialog and confirms
with the user that they would like the file to be created. #8566app.setLoginItemSettings and app.getLoginItemSettings APIs now accept
optional path and args settings to better support apps using the
Squirrel installer/auto updater. #8515BrowserWindow.setAlwaysOnTop now accepts a relativeLevel parameter to
allow ordering windows relative to other constant levels. #8487toBitmap, getBitmap, or getNativeHandle
on an empty NativeImage. #8510uncaughtException events not being emitted in the main process
on the process global. #8507require-ed scripts could not define their own
const process or global variables because ones already had been
defined. #8539webContents.startDrag with an empty image. #8511globalShortcut APIs would not function correctly
if the systemPreferences module was required at startup. #8568Note: This is a beta release. This is the first release running on upgraded versions of Chrome and Node and may have some instability and/or regressions. Please file new issues for any bugs you find in it.
This release is published to npm under the beta tag and can be installed via npm install electron@beta.
53.0.2785.143 to 54.0.2840.101. #84066.5.0 to 7.4.0. #84065.3.332.47 to 5.4.500.43. #8406preventDefault() on a new-window event for
a sandboxed window. #8377webm
videos would not play. #8428contextIsolation option to BrowserWindow and <webview> tags
that loads the preload script and Electron APIs into a separate JavaScript
context that is isolated from the main page's JavaScript context. #8348<webview> element now emits the context-menu event from the
underlying webContents object.will-navigate event
listener. #8254backgroundThrottling option is now correctly persisted across window
reloads. #8298Cookie header is now settable on requests made using Electron's net
module. #8258session.enableNetworkEmulation API would lead to
high CPU usage. #8371defaultFontFamily option in the BrowserWindow constructor now supports
setting the default cursive and fantasy fonts. #8295normalizeAccessKeys option to the dialog.showMessageBox API that
normalizes keyboard accelerator keys used for buttons across platforms. #8308window.alert and window.confirm are now supported in <iframe> tags
and sandboxed windows. #8341undefined. #8189 ipcRenderer event listener or setImmediate call is
now recorded correctly in the Dev Tools timeline. #8159protocol.interceptHttpProtocol now supports a custom session. #8085webContents now emits a before-input-event event that can be used to intercept
keyboard events before they are handled by the page. Calling
event.preventDefault() will cause the event to not be delivered to the
page. #8143.select-client-certificate event callback is
now optional. #8134dialog.showMessageBox. #8187nativeImage.createFromBuffer can now be called with bitmap buffers. #8175protocol.registerStandardSchemes with {secure: true} as the second
argument. #7947session.createInterruptedDownload to enable resuming a previously
interrupted download. #8061session.clearAuthCache to enable clearing a session's HTTP
authentication cache. #8107window.alert, window.close, and window.confirm did
not behave as expected. #8120KeyboardEvent.key value would be incorrect when Control was pressed
on Linux using certain keyboard layouts. #8147dialog APIs no longer write values back into the specified options
object parameter. #8123BrowserWindow.fromDevToolsWebContents would throw an
error. #8144BrowserWindow.setAutohideCursor to change the setting dynamically.
#8092BrowserWindow.closeFilePreview to close the Quick Look preview
previously opened with BrowserWindow.previewFile. #8038systemPreferences.setUserDefault to be able to change the user
preference defaults. #8084crashReporter.get/setUploadToServer to dynamically configure the
setting. Also Renamed the autoSubmit option to uploadToServer in
crashReporter.start. The old option name is still available for
backwards-compatibility but will be removed in Electron 2.0. #7952BrowserWindow.setAppDetails to configure the properties of the
window's taskbar button. #7952minWidth was used. #8047systemPreferences.getUserDefault would crash when
requesting a value as an array or dictionary. #7993chrome.runtime.onMessage used by dev tools extensions
now supports a response callback parameter. #7974toggledevtools and reload are now supported menu item roles. #7981setLayoutZoomLevelLimits method to webFrame, webContents, and
<webview> that can be used to set the layout-based zoom level limits of a
page. The setZoomLevelLimits API has been deprecated and renamed to
setVisualZoomLeveLimits to control the pinch-to-zoom level.
setZoomLevelLimits will be completely removed in Electron 2.0. #8041shell.openExternal is now asynchronous if the final specified argument is
a callback function. #7612zoomToPageWidth option was added to the BrowserWindow constructor that
controls how the window resizes when running the Window > Zoom menu item or
when option-clicking the green stoplight toolbar button. #7776NSAllowsArbitraryLoads to the app's plist file. #7933BrowserWindow by calling
setVibrancy(vibrancyType) or by including a vibrancy value in the
constructor options. #7898POST data when calling BrowserWindow.loadURL via the
postData option. Also <form> tags configured with method=post will now
make POST requests with their data when submitted. #7540session.setCertificateVerifyProc callback
now includes the entire certificate chain. #7917<webview> tag now supports a disableguestresize attribute that will
disable automatic resizing of the guest webContents when the <webview>
element resizes. You can now call setSize directly on the guest
webContents to manually control the size. #7658chrome.storage.remove and chrome.storage.clear APIs are now available
to DevTools extensions. #7923about: protocol is now correctly supported by default. #7908ELECTRON_NO_ASAR environment
variable is now cached for better performance. #7978app.setAboutPanelOptions(options) with a
credits value. #7979window.opener API did not behave as expected.53.0.2785.143 from 53.0.2785.113. #7906webContents.executeJavaScript now returns a Promise that resolves to the
value returned by the specified code block. Previously this method did not
return a value. The callback option is still supported. #7533<webview> tags would be cleared or refreshed
incorrectly when toggling the visibility or attaching/detaching. #7852disturl option to NPM when compiling native modules to be used in Electron.
#7881setCertificateVerifyProc on a session. #7651net module that exposes Chrome's native network APIs, available
via require('electron').net in the main process. #7577webFrame.registerURLSchemeAsPrivileged. #7665webpreferences attribute to <webview> tags that can
be used to set additional options similar to the webPreferences option on
the BrowserWindowconstructor. #7631clipboard module for reading from and writing to the
find pasteboard, available as clipboard.readFindText/writeFindText. #7719BrowserWindow.previewFile that opens a file in the native Quick Look
view. #7592Changelog:
ELECTRON_NO_ASAR environment variable. #7479window.open. #7520temp directory configured by user. #7500webContents.openDevTools([options]) ignoring docks state. brightray#254Tab not working as keyCode in webContents.sendInputEvent(event) API. #7500MenuItem. #7498Windows
isInvertedColorScheme() method and inverted-color-scheme-changed event to the systemPreferences module. #7518getColor(name) method and color-changed event to the systemPreferences module. #7561Linux
Chromium. #7524macOS
app.setAboutPanelOptions(options) API. #7549Changelog:
additionalFeatures parameter for new-window event. #7291event.newGuest property for the event object of new-window event. #7407crop, resize, getAspectRatio methods to NativeImage. #7488window.open. #7432Buffer from native land to JavaScript. #7452Windows
LargeAddressAware for 32bit build. brightray#253Changelog:
sandbox option in webPreferences which allows sandboxing for renderers. #6919level parameter for win.setAlwaysOnTop(flag[, level]) API. #7296changed event for cookies module. #7398macOS
Show Tab Bar menu item on macOS Sierra. #7415Windows
Linux
Changelog:
guestinstance attribute to <webview> tag which allows moving WebContents betweens <webview>s. #7157ses.getBlobData(identifier, callback) API to read uploaded data in protocol. #6941contents.invalidate() API. #7062killed parameter for crashed and gpu-process-crashed events. #7241GOOGLE_API_KEY environment variable to specify custom Google API key. #7276beginFrameSubscription not working correctly for HiDPI screens. #7163net::ERR_INSECURE_RESPONSE error when visiting some websites. #7221Linux
kioclient, kioclient5 and trash-cli in shell.moveItemToTrash(path) API. #7178macOS
scroll-touch-edge event for BrowserWindow and fix regressions of scroll-touch-begin/end events. #7239Windows
Ctrl+Y as the default accelerator of redo menu role. #7236getAccentColor method and accent-color-changed event to systemPreferences module. #7173Changelog:
remote module bug fixes from 1.4.x release line. #9240 window.alert, window.close, and window.confirm did
not behave as expected. #8120KeyboardEvent.key value would be incorrect when Control was pressed
on Linux using certain keyboard layouts. #8147setLayoutZoomLevelLimits method to webFrame, webContents, and <webview> that can be used to set the layout-based zoom level limits of a page. The setZoomLevelLimits API has been deprecated and renamed to setVisualZoomLeveLimits to control the pinch-to-zoom level. setZoomLevelLimits will be completely removed in Electron 2.0. #8041Changelog:
Windows
Changelog:
Changelog:
devtools option to webPreferences. #7096shell.showItemInFolder and shell.openItem. #7182execSync throws. #7116process.stdin in renderer process. #7130<webview> loading host URL when src is empty. #7146history.replaceState is used. #7175macOS
userInfo parameter to ready event of app. #7053titleBarStyle: 'hidden-inset' on OS X 10.9. #7077Changelog:
Buffer with remote module. #6963inspectElement after openDevTools. #6940webkitRequestFileSystem not working in custom protocols. #6952null. #6977downloadItem.setSavePath not working when server returns 404 status. #6983--debug-brk not stopping on first line. #7001process.exit() not accepting empty arguments. #7028beginFrameSubscription not working for the WebContents of <webview>. libchromiumcontent#227Linux
armv7l as filename suffix. #6986win.setFullScreen(false) not working. #6961Windows
app.getJumpListSettings() and app.setJumpList(categories) APIs. #6826Changelog:
String instead of Buffer to represent certificate data. #6814, #6881isMainFrame parameter to the did-navigate-in-page event. #6810hasImageContents parameter of context-menu event being wrong. #6817win.location for objects returned by window.open. #6861webRequest.onBeforeSendHeaders API drops headers with "." in the name. #6856fetch in renderer process. #6926ses.enableNetworkEmulation not working with default options. #6935macOS
titleBarStyle: 'hidden' on OS X 10.9. #6848setClosable, setMaximizable and setMinimizable APIs. #6850Windows
path and args parameters to app.setAsDefaultProtocolClient API. #6858win.setSkipTaskbar(skip). #6829Changelog:
view-painted event which was introduced in v1.3.1 and didn't work. #6705win.setContentBounds(options[, animate]) and win.getContentBounds() APIs. #6654image.getBitmap() API. #6733zoomin, zoomout, resetzoom to MenuItem's roles. #6777ipc module. #6776macOS
systemPreferences.isSwipeTrackingFromScrollEventsEnabled() API. #6686systemPreferences.postNotification(event, userInfo) and systemPreferences.postLocalNotification(event, userInfo) APIs. #6752autoUpdater. #6743startspeaking and stopspeaking to MenuItem's roles. #6765resizable: false option disabling the fullscreen button. #6664scroll-touch-begin and scroll-touch-end events being emitted when scrolling page. #6754Windows
app.setUserTasks(tasks) API. #6766win.setThumbnailToolTip(toolTip) API. #6762autoUpdate.checkForUpdates() for twice making quitAndInstall() throw errors. #6780win.setThumbnailClip(region) API not recognizing high-DPI displays. #6782Changelog:
downloadItem.getSavePath() API. #6629image.toBitmap() API. #6661size, hotspot parameters to the cursor-changed event of WebContents. #6661setZoomFactor, getZoomFactor, setZoomLevel, getZoomLevel, setZoomLevelLimits methods to WebContents. #6685LICENSES.chromium.html being empty. libchromiumcontent#225Session being garbage collected. #6674contents.sendInputEvent(event) API. #6661Windows
shell.writeShortcutLink(shortcutPath[, operation], options) and shell.readShortcutLink(shortcutPath) APIs. #6623macOS
app.dock.isVisible() API. #6683Linux
Changelog:
view-painted event to WebContent. #6524proxyBypassRules option to ses.setProxy(config, callback) API. #6558remote module. #6572, #6590contents.copyImageAt(x, y) API. #6619<input> tag on DevPanel. brightray#238fs.access/accessSync not working with asar archives. #6598Windows
crashReporter.start(options) for multiple times. #6618macOS
Changelog:
Changelog:
options parameter for the session.fromPartition(''[, options]) API. #6470certificate object of certificate-error event. #6474autoUpdater.getFeedURL() API. #6486getAllWebContents() and getFocusedWebContents() APIs to webContents module. #6489macOS
Windows
win.setThumbnailClip(region) API. #6497Changelog:
capturePage method to WebContents class and <webview> tag. #6355showHiddenFiles to dialog.showOpenDialog(options)'s properties. #6431app.getLoginItemSettings() and app.setLoginItemSettings(settings) APIs. #6375, #6444accessibility-support-changed event and isAccessibilitySupportEnabled() method to app module. #6446unresponsive event. #6432null when passing the same Array for multiple times in remote module. #6442macOS
win.setBounds(bounds) API ignore maximum/minimum sizes. #6363Linux
console.log after relaunch. #6412Windows
thickFrame option for BrowserWindow. #6412toolbar to BrowserWindow's type. #6428shell.openExternal(url) not working with non-ASCII characters. #6436Changelog:
require. #6213webContents.startDrag(item) API. #6333clipboard.readBookmark() and clipboard.writeBookmark(title, url) APIs. #6233onlyDirty pararmeter to webContents.beginFrameSubscription([onlyDirty ,]callback) API. #6164app.setBadgeCount(count) and app.getBadgeCount() APIs. #6243 #6309did-fail-load event emitting for canceled requests. #6201Promise not resolved in native handlers of the main process. #6220package.json includes BOM. #6354Windows
PDB files in releases. #6225ICO files. #6220tray.popUpContextMenu(menu) not popUpping menu when menu is not passed. #6280Linux
app.isUnityRunning() API. #6243dialog.showOpenDialog() replacing extensions of filenames ending with .*.gz. #6305icon property of BrowserWindow not working. #6323Changelog:
accelerator and label are now optional when role is specified for MenuItem. #6190event parameter for click handler of MenuItem. #6170session.setUserAgent(userAgent[, acceptLanguages]) API. #6172win.setContentProtection(enable) API. #6175protocol module not being set. #6195macOS
maximize event being emitted before window is maximized. #6171Linux
Changelog:
tray.getBounds() API. #6159quit, togglefullscreen roles to MenuItem. #6154 #6166protocol module not being set. #6095<webview> tag having wrong size when transform style is applied. #6128Promise being treated as unhandled rejection in the main process. #6151role when menu.insert(item) is used. #6169macOS
systemPreferences.subscribeLocalNotification(event, callback) and
systemPreferences.unsubscribeLocalNotification(id) APIs. #6150Window menu. #6089, #6097win.setProgressBar after app.dock.setIcon. #6091Delete not working as accelerator. #6168Linux
Windows
Tray not respecting scale factor.Changelog:
ready-to-show event to BrowserWindow. #6026--abi command line switch to default app. #5911showDefinitionForSelection() method to WebContents and <webview> tag. #5921pepperFlashSystemPlugin to the paths of app.getPath(name) API. #5943protocol property to Session to allow custom protocol for partition. #5904isPaused, canResume, getState APIs to DownloadItem. #5959chrome.* APIs for devtools extensions. #5924BrowserWindow.getDevToolsExtensions() API. #5965focusable option to BrowserWindow. #6023web-contents-created event to app. #6029<webview> tag. #5913partition. #5904window.opener being null in window opened by <webview> tag. #5953OS X
requestHeaders parameter for autoUpdater.setFeedURL(url[, requestHeaders]) API. #5879maximizable: false not working for frameless window. #5944Windows
win.setFocusable(focusable) API. #6013 #6023autoUpdater not waiting for current app to quit before launching newly installed app. #6037Changelog:
app.relaunch([options]) API. #5837array and dictionary types in systemPreferences.getUserDefault(key, type) API. #5833pasteandmatchstyle and delete roles to MenuItem. #5870app.disableHardwareAcceleration() API. #5889update-target-url event to WebContents and <webview> tag. #5903disableBlinkFeatures option to webPreferences of BrowserWindow. #5923disableBlinkFeatures attribute to <webview> tag. #5923fetch in custom protocols. #5932OS X
Linux
BrowserWindow.focus() not moving focus to the window. #5888Changelog:
mimeType is not defined in the handler of protocol.registerBufferJob API. #5711app.releaseSingleInstance() API. #5720select-bluetooth-device event to WebContents. #5781preload script not working when webSecurity: false is set. #5768protocol.registerHttpProtocol not working when the target URL redirects. #5753remote module. #5736print() method not available for the window returned by window.open. #5737Windows
fullscreen: false option also setting fullscreenable: false in BrowserWindow. #5718OS X
BrowserWindow.setAspectRatio(0) #5734Changelog:
beforeunload handler nows prevents the page to unload. #5648Promise is detected in remote module. #5689webpageURL parameter to app.setUserActivity(type, userInfo[, webpageURL]) API. #5658document.visibilityState and visibilitychange event not working in <webview> tag. #5684app.quit() while there are BrowserWindows with closable set to false. #5701Migration Notice:
true in beforeunload handler now prevents the page to unload. #5648ATOM_SHELL_INTERNAL_RUN_AS_NODE environment variable has been removed, the code relies on it should use the public ELECTRON_RUN_AS_NODE environment variable instead. #5682ATOM_SHELL_ environment variables have been renamed, if you are maintaining your own Electron fork, you might be affected. #5683Changelog:
Windows
Changelog:
BrowserWindow.setIcon(icon) API. #5624Session.allowNTLMCredentialsForDomains(domains) API, and mark app.allowNTLMCredentialsForDomains(domains) as deprecated. #5638did-fail-load event being empty. #5634require('electron') being able to be overridden by npm modules.
#5662remote module not handling rejection of Promise in the main process. #5666Windows
OS X
offsetX parameter to BrowserWindow.setSheetOffset(offsetY[, offsetX]) API. #5603BrowserWindow.setAspectRatio(ratio) not correctly implemented. #5644Linux
ffmpeg not stripped. #5668Changelog:
<webview> tag when nodeIntegration is off in host window. #5559--disable-http2 command line switch. electron/brightray#222webFrame.getResourceUsage() and webFrame.clearCache() APIs. #5413buttonLabel option to dialog.showOpenDialog(options) and dialog.showSaveDialog(options). #5509Invalid package error when there is asar path in the command passed to child_process.exec. #5571<webview> tag not inheriting host window's zoom level. #5616OS X
temporary-exception.
#5584, #5601systemPreferences.subscribeNotification(event, callback) now accepts event and userInfo parameters. #5582titleBarStyle option makes the top of window draggable. #5557Windows
Linux
libnotify.so.4 on some distributions. electron/brightray#221Changelog:
Windows
Changelog:
protocol module to be imported before the ready event of app module. #5406context-menu event to WebContents. #5379process.defaultApp property. #5421protocol.registerStandardSchemes(schemes) not working. #5406expirationDate not showing for persistent cookies in session.cookies.get API. #5444protocol.registerStandardSchemes(schemes) not working. #5406OS X
scrollBounce option to webPreferences. #5412app.setUserActivity(type, userInfo), app.getCurrentActivityType() APIs and continue-activity event for Handoff feature of OS X. #5352app.dock.downloadFinished(filePath) API. #5477app.removeAsDefaultProtocolClient(protocol) API not working. #5440Linux
dialog.showMessageBox() to a suitable size. #5496Changelog:
Changelog:
Migration notice:
Following deprecated events of BrowserWindow have been removed but there
were no deprecation warnings in previous versions, you should use the
corresponding events in webContents instead:
crashdevtools-focuseddevtools-openeddevtools-closedNativeImage.toDataUrl has been removed but there were no deprecation
warnings in previous versions, you should use toDataURL instead.Changelog:
userData directory is created during the ready event of app module. #5340autoUpdater.quitAndInstall() is called while there is no update. #5287systemPreferences module. #5282app.isDefaultProtocolClient(protocol) API. #5302app.makeSingleInstance(callback) wrongly returning true on first launch. #5311will-download event not emitted for HTML pages. #5315webContents.executeJavaScript not working after being called immediately after loadURL. #5319desktopCapturer.getSources not responding when there is subsequent calls with different arguments. #5320OS X
Command Plus accelerator appearing as Shift Command = in menu. #5298Windows
display-removed event not working. #5334Changelog:
mode option to webContents.openDevTools(options) API.openExternal type of permission parameter to Session.setPermissionRequestHandler(handler) API.process.windowsStore property to determine whether the app is an Windows Store app.devToolsWebContents.hostWebContents.session.enableNetworkEmulation(options) API not working.WebContents.executeJavaScript(code) not working when called during a resource load after page is loaded.app.setPath to change the location of userData directory, a folder is still created at the default location. Windows
Linux
append hint when showing notifications.app.importCertificate(options, callback) API.OS X
BrowserWindow.setSheetOffset(offset) for changing the offset when showing sheet.app.makeSingleInstance with Mac App Store build.Changelog:
will-quit when app.exit() is called.isMainFrame parameter to did-fail-load event of WebContents.statusLine property to webRequest.OnHeadersReceived API's responseHeaders object.backgroundThrottling option to webPreferences of BrowserWindow.resourceType parameter to did-get-response-details event of WebContents.<webview> and preload script not working when there is no script tag in page.webRequest.onHeadersReceived API modifying original headers' status line.did-fail-load and did-finish-load events.Windows
blur event handler.OS X
backgroundColor of BrowserWindow not displaying correctly.Linux
xdg-open to exit when calling shell.openExternal.tag property of HTML5 Notification API.Changelog:
Buffer with large size.Changelog:
asar archive.atom.asar in the resources directory is renamed to electron.asar.window.open when node integration is disabled in parent window.app.setAsDefaultProtocolClient(protocol) and app.removeAsDefaultProtocolClient(protocol) APIs.disposition parameter of new-window event for certain types of background types.OS X
swipe event to BrowserWindow.backgroundColor option of BrowserWindow not working.Changelog:
<webview>'s background is now transparent by default.NativeImage.getNativeHandle() API.-i/--interactive flag to default app that starts a repl for the main process. remote module.accelerator is undefined when calling Menu.buildFromTemplate.Windows
Changelog:
activeMatchOrdinal property in the result object of found-in-page event.Changelog:
OS X
libffmpeg.dylib image not found error on startup.Windows
Changelog:
Changelog:
remote module.Windows
Changelog:
show and hide events to BrowserWindow.document.hidden.visibilitychange event not working.select-client-certificate event's callback.PrintScreen not working as accelerator.<webview> inside flexbox... in file path.Linux
resizable option not working.Windows
fullscreenable option work.OS X
platform-theme-changed event to app module.app.isDarkMode() API.Cmd+~ cycling windows in wrong direction.BrowserWindow.isMaximized() returning wrong result when window is not resizable.Changelog:
WebContents.beginFrameSubscription becomes faster and gets better image quality.callback parameter for webContents.executeJavaScript and <webview>.executeJavaScript.Changelog:
remote module.webContents.hostWebContents property.<webview>.getWebContents() API.remote module.protocol module for certain kind of URLs.Linux
Changelog:
did-fail-load event when invalid URL is passed to BrowserWindow.loadURL.cursor-changed event to WebContents.Session.setPermissionRequestHandler(handler) API.Session.clearHostResolverCache(callback) API.readRtf and writeRtf methods to clipboard module.downloadItem in will-download handler when event.preventDefault is called.WebContents.endFrameSubscription() while there are pending frames.exit event of process object not reliable in renderer process.BrowserWindow.getNativeWindowHandle() returning corrupted buffer.Windows
autoUpdater not accessible in remote module.OS X
app.show and app.hide APIs.icon not working in dialog.showMessageBox(options).Command + ~ not switching windows sometimes.Linux
Changelog:
Object has been destroyed exception in the main process.Windows
Changelog:
setMovable, isMovable, setMinimizable, isMinimizable, setMaximizable, isMaximizable, setFullScreenable, isFullScreenable, setClosable, isClosable, setHasShadow, hasShadow methods to BrowserWindow.scroll-touch-begin and scroll-touch-end events to BrowserWindow.webContents.debugger API.app.dock.setIcon API.uploadData to details of session.webRequest.onBeforeRequest.backgroundColor option of BrowserWindow.OS X
positioningItem parameter for Menu.popup.Windows
autoUpdater throws exception.asar archive.Changelog:
silent property of Notification.defaultFontFamily, defaultFontSize, defaultMonospaceFontSize, minimumFontSize, defaultEncoding options to webPreferences of BrowserWindow.<webview>.loadURL.blinkfeatures attribute for <webview>.OS X
animate parameter for setBounds, setSize, setContentSize, setPosition methods of BrowserWindow.movable option for BrowserWindow.backgroundColor option of BrowserWindow work.Windows
app.isAeroGlassEnabled() API.Changelog:
session.setProxy(config) API now accepts an Object instead of String.BrowserWindow.getFocusedWindow() API now returns null instead of undefined when there is no focused window.session.flushStorageData() API.session.getCacheSize(callback) API.BrowserWindow.getNativeWindowHandle() API.defaultId option for dialog.showMessageBox(options) API.insertText and executeJavaScript methods to webFrame module.insertText method to webContents and <webview>.<webview>.src not working before onload event.Linux
--touch-devices command line switch not working.Windows
Changelog:
isDevToolsFocused method to WebContents and <webview>.did-navigate and did-navigate-in-page events to WebContents and <webview>.will-navigate, devtools-opened, devtools-closed, devtools-focused events to <webview>.blinkFeatures option to webPreferences.overlayScrollbars, sharedWorker, pageVisibility options from webPreferences.fetch for URLs registered as privilege.remote module.capturePage with no rect.protocol.registerHttpProtocol without internet connection.OS X
drop-files not firing when dragging from the dock.app.clearRecentDocuments not working.dialog.showSaveDialog with filters with no extensions.Window menu with no submenu items.Tray.setPressedImage not working after turning off highlight mode.Windows
mkdirp inside an asar archive.dialog.openSaveDialog adding extension to filename when it shouldn't.Changelog:
did-change-theme-color event to WebContents and <webview>.media-started-playing and media-paused events to WebContents and <webview>.findInPage method to WebContents and <webview>.credentials: 'include' being added to service worker's headers.document.hidden and document.visibilityState values when window is minimized.webRequest API.webRequest.onBeforeSendHeaders not removing existing headers.OS X
app.dock.show().BrowserWindow with hidden-inset of titleBarStyle.shell.openExternal not working with URLs containing valid URL special characters.Linux
libnotify dynamically instead of linking with the library.Alt not toggling window menu bar.Windows
shell.moveItemToTrash not working on Windows 7.asar archive or the icon's URL is not file:// scheme.Changelog:
session.webRequest API.A5 to webContents.printToPDF's pageSize.crashReporter.start now requires passing submitURL and companyName.window.opener a BrowserWindowProxy.Buffers.app.addRecentDocument.x and y options not working in BrowserWindow.capturePage.OS X
xpc_ APIs in MAS build.shell.openExternal not able to open URLs with unescaped characters.Changelog:
desktopCapturer module.protocol.registerServiceWorkerSchemes API.uploadDate property for request object in protocol module.Menu.buildFromTemplate.will-quit event when calling process.exit or app.exit.appData and userData dir values.exit event of process object not including exit code.event.source not matching the object returned by window.open in message event handler.origin string in window.postMessage.OS X
BrowserWindow.setIgnoreMouseEvents API.Enter Full Screen menu item.Changeling:
appData and userData dir values.Changelog:
Windows
shell.moveItemToTrash not working on Windows 7.Changelog:
isDestroy => isDestroyed.Changelog:
menu parameter for Tray.popUpContextMenu API.downloadURL method for WebContents and <webview>.asar support in Node's built-in modules with process.noAsar.loadURL in the did-fail-load event.page-title-updated event.downloadItem.hasUserGesture.protocol module.window.open not respecting the features string.Windows
child_process.execFile not working for files in asar archive.OS X
Changelog:
--proxy-bypass-list command line switch.ELECTRON_RUN_AS_NODE environment variable.<webview>.child_process.execFile unable to execute files in asar archive.protocol module.dialog module with remote module not working.BrowserWindow.Windows
OS X
LSUIElement is added to main bundle's Info.plist.Changelog:
session module for full multi-session support.webContents.sendInputEvent.certificate-error event to webContents and app.session.setCertificateVerifyProc API.webContents.reloadIgnoringCache not working.Windows
OS X
Tray icon not updated when the image is changed.Linux
Changelog:
process.noDeprecation.electron module which includes all public APIs.ipc module is deprecated, should use ipcRenderer in renderer process, and ipcMain in main process.ipcRenderer module adds an event object when emitting events, to match the style of ipcMain module.- in BrowserWindow's option names.clicked events in Tray are renamed to click.Url in API names is replaced with URL.documents, downloads, music, pictures, videos keys to app.getPath.webContents.beginFrameSubscription.Windows
OS X
drag-enter, drag-leave, drag-end and drop events to Tray module.Changelog:
OS X
Changelog:
Linux
Changelog:
process.exit is called.Windows
app.setAppUserModelId not being used by other APIs.shell.moveItemToTrash() not working for drives created with subst.process.exit.Changelog:
login event for app and WebContents.extraHeaders option for WebContents.loadUrl.Windows
BrowserWindow.hookWindowMessage API.shell.openItemInFolder in renderer process.*.* being appended to filename when setting path in save dialog without extension.OS X
_NSDrawCarbonThemeListBox in Mac App Store build.Changelog:
app.allowNTLMCredentialsForAllDomains API.app.makeSingleInstance API.--cipher-suite-blacklist command line switch.ELECTRON_ENABLE_LOGGING environment variable to enable logging.background-color option for BrowserWindow.session.setProxy API.WebContents.savePage.child_process.fork.--debug-brk is specified.OS X
Windows
auto-updater module work together with Squirrel.Windows.Changelog:
OS X
Changelog:
subpixel-font-scaling option of BrowserWindow.WebContents.savePage API.Windows
crash-reporter might block for a second when starting.crash-reporter not working on x64 Windows when crash came from V8.Changelog:
ERROR logs from Chromium by default.Changelog:
webFrame.setZoomLevel nows also changes the zoom levels of <webview>s in the page.webContents.sendInputEvent.BrowserWindow.postMessage not working for windows opened by window.open.--ppapi-flash-path failed to recognize path with unicode characters.did-get-response-details event.Accept-Language header not using system locale.Windows
console.log outputs.BrowserWindow's size changed after restored from minimized state.OS X
Linux
BrowserWindow.setResizable(true) clears size constraints.Changelog:
Windows
BrowserWindow.hide not hiding the window.Changelog:
--enable-logging is specified.Linux
Alt not showing auto-hide menubar.Ctrl+C.Changelog:
--require) in the default app.session.enableNetworkEmulation and session.disableNetworkEmulation APIs.devtools-opened, devtools-closed, devtools-focused events from BrowserWindow to WebContents.devToolsWebContents property from BrowserWindow to WebContents.sendInputEvent API.mailto: are now opened by system's default application.<webview>'s methods.<webview>.window.outerHeight and window.outerWidth being set to 0 in hidden window.Windows
maximize/mnimize events not emitted for AeroSnap.Linux
Changelog:
OS X
Changelog:
allowpopups attribute for <webview> tag.options parameter for new-window event.window.open.DownloadItem object in the will-download event, allowing users to subscribe to download updates.Buffer becoming 0 when there are lots of Buffer created.Windows
fds when reading files in asar archives.OS X
BrowserWindow with title-bar-style set to hidden.Changelog:
webContents.enableDeviceEmulation API.webcontents.beginFrameSubscription and webcontents.endFrameSubscription APIs.sendInputEvent method for WebContents and <webview> tag.webFrame.registerUrlSchemeAsPrivileged API.did-get-redirect-request event.asar archive.Changelog:
app.getLocale API.activate-with-no-open-windows emitted at wrong time.mimeType not working in registerStringProtocol and its families.vm.createContext.OS X
title-bar-style is set on OS X <= 10.9.Changelog:
browser-window-created event for app module.BrowserWindow.isDevToolsFocused API.process and global objects not available in preload script after the first tick of message loop when node integration is off.devtools-opened event emitted before devToolsWebContents gets created.BrowserWindow.addDevToolsExtension not working.node::Buffer::New.OS X
title-bar-style option for BrowserWindow, which allows creating Yosemite style frameless window.activate event for app module.devtools-focused event not working.Changelog:
web-preferences not working.validatedUrl parameter for did-fail-load event of WebContents.Changelog:
BrowserWindow options.Changelog:
partition attribute for <webview> tag.partition attribute for web-preferences option of BrowserWindow.preload, zoom-factor, node-integration options of BrowserWindow
have been moved to web-preferences option.Buffer created with external native C buffer.process.stdout.Changelog:
process.setFdLimit API.will-download event for Session.role attribute for MenuItem.<webview> tag now restarts renderer process.source and origin for window.opener.postMessage.POST request.Windows
window.print only printing three pages.Changelog:
webFrame.setZoomLevelLimits API.ESC is pressed.undefined in DOM's alert function.index.js when the main field is not available in app's package.json.remote module.<webview> has crashed.* not working as filter in dialog module.--debug and --debug-brk not working.Windows
os.release() reporting wrong version for Windows 10.app.quit() not working when called immediately in ready event handler.OS X
Tray not showing sometimes.Notice for Windows users:
We have added compatibility information in the executable's manifest file, it might change some behaviors on Windows.
Changelog:
protocol.registerProtocol and protocol.interceptProtocol APIs have been replaced by the protocol.register[File/String/Buffer/Http]Protocol and protocol.intercept[File/String/Buffer/Http]Protocol APIs.Upgrade notice:
protocol module that require users to rewrite code that uses the protocol module.ffmpeg library along with the app.Changelog:
OS X
Windows
fds when reading files in asar archives.Changelog:
Mac
Changelog:
printBackground option of BrowserWindow.printToPDF not working.Windows
.ico images.Changelog:
Tray.popContextMenu API is renamed to Tray.popUpContextMenu.npm shipped with io.js v3.0.0.<webview> tag.protocol.interceptProtocol not working until the app has started for a while.Windows
right-clicked event when there is menu attached in Tray.OS X
clicked event when there is menu attached in Tray.Tray icon when menu is closed.Changelog:
userGuesture parameter for WebContents.executeJavaScript.webFrame.registerUrlSchemeAsBypassingCsp API.load-commit event for <webview> tag.BrowserWindow.setThumbarButtons API.Promise objects in remote module.window.opener for windows opened by window.open.NativeImage.closed property of windows opened by window.open is undefined.Mac
BrowserWindow.setResizable not working sometimes.BrowserWindow.setResizable changes size of frameless window.Windows
Changelog:
pageSize option for BrowserWindow.printToPDF.bounds payload for double-clicked event of Tray.WebContents.addWorkSpace and WebContents.removeWorkSpace APIs to change devtools workspace.Session.setDownloadPath API.allow-displaying-insecure-content and allow-running-insecure-content options for BrowserWindow.clicked events of Tray.RequestHttpJob not sending headers.node-integration option not working in window.open.Windows
double-clicked event.Mac
accept attribute of <input> tag.Tray's behavior.Changelog:
BrowserWindow.setAspectRatio API.tray.popContextMenu API.session.setProxy API.session option for protocol.RequestHttpJob.getUserAgent method for WebContents and <webview> tag.noLink option for dialog.showMessageBox.HTTP requests with protocol module.Windows and Mac
right-clicked event to Tray.Windows
Promise doesn't get invoked under some situations.app-command event always returns unknown.Mac
BrowserWindow.setContentSize and use-content-size option not working.Linux
BrowserWindow not working.resizable option of BrowserWindow not working.Changelog:
protocol APIs are now asynchronous.cancelId option for dialog.showMessageBox.app.getAppPath API.clipboard.write API which allows writing multiple types of data at the same time.session.clearCache and session.clearStorageData APIs.--proxy-pac-url command line switch.window.open.close event of WebContents and <webview> tag not working.window.global variable exposed in web page when node integration is off.accept attribute of <input> tag not working.<input> tag.web-security option is false.Windows and Linux
dialog.showMessageBox use native dialogs on Windows and Linux.Shift+Ctrl+I for toggling devtools by default on Windows and Linux.Windows
Changelog:
backspace won't trigger a navigation back anymore.node-integration option of the window opened by window.open now inherits opener window's option by default.PageUp and PageDown accelerators.name not working in window.open.window.moveTo and window.resizeTo causing exceptions in the main process.Windows
fullscreen flag of BrowserWindow not working.-webkit cursors not working.Linux
Changelog:
Changelog:
arm build.gpu-process-crashed event is moved to the app module, and also fixes this event not working.power-save-blocker built-in module.select-certificate event to app module.app-command event to BrowserWindow.Changelog:
browser-window-focus and browser-window-blur events to app.protocol.registerStandardSchemes API.process.hang API.session.cookies API to WebContents.Windows
BrowserWindow.setContentSize changing window position.Linux
Changelog:
setAudioMuted, isAudioMuted methods for WebContents and <webview> tag.printToPdf method for WebContents and <webview> tag.--ignore-connections-limit command line switch.protocol.RequestHttpJob.remote module... in path.Mac
shell.moveItemToTrash can not be "Put Back".Changelog:
POST requests.Windows
Mac
shell.openExternal now returns false when the no application can handle the URL.Changelog:
--log-net-log switch.httpReferer and userAgent for WebContents.loadUrl.crash-reporter.getUploadedReports API.did-get-response-details.<webview> tag.Linux
dialog.showSaveDialog doesn't show non-exist filename.clipboard module in renderer process.Windows
bounds payload to clicked event of Tray.Changelog:
src attribute of <webview> tag.page-visibility attribute for web-preferences option of BrowserWindow.default_app.Mac
crashpad.Changelog:
<webview> tag not visible.remote module in preload script.Windows
pdf.dll not shipped.Changelog:
readHtml and writeHtml methods for clipboard module.javascript: urls.Changelog:
Warning: V8 in Chrome 43 now strictly clears Handle when it goes out of HandleScope, so some ill-written native modules might crash or cause undefined behaviors.
move, moved and resize events to BrowserWindow.ftp protocol support.InspectServiceWorker for WebContents and BrowserWindow.Buffer for one-byte external Strings created by blink.Windows
pdf.dll and make it optional for apps that don't need printing.Changelog:
web-preferences option of BrowserWindow not working.porotocol module.<webview>.goToIndex.screen module.<webview> tag.plugin-crashed and gpu-crashed events for WebContents.clearHistory method to WebContents and <webview> tag.pasteAndMatchStyle method to WebContents and <webview> tag.Mac
Windows
Linux
click event not emitted for tray icon.Changelog:
protocol.RequestErrorJob.getFavicon method of BrowserWindow and <webview>.asar archive file opened during the archive's life time.Windows
Mac
Changelog:
BrowserWindow.getBounds and BrowserWindow.setBounds API.preload scripts to devtools.Mac
clicked event.Windows
Changelog:
page-favicon-updated event for WebContents and <webview> tag.dom-ready event for WebContents and <webview> tag.getFavicon method for WebContents and <webview> tag.inspectElement method for <webview> tag.asar APIs will be called in the next tick of message loop when error happens.<webview> tag now restarts renderer process.<webview> tag.OS X
Changelog:
Windows
BluetoothApis.dll for starting.Changelog:
child_process.Windows
MFReadWrite.dll when starting.Linux
shell.openExternal not working with Chrome browser.Changelog:
position and id attribute to MenuItem.did-get-response-details event to WebContents and <webview> tag.WebContents.reloadIgnoringCache not ignoring cache.WebContents.getUrl.Mac
shell.moveItemToTrash return wrong value.Changelog:
devtools-focused event for BrowserWindow.page-title-set event for WebContents and <webview> tag.process.title not changeable.Mac
Windows
atom.exe no longer breaks native modules.Changelog:
accept-first-mouse not working for draggable regions in frameless window.closed event of BrowserWindow.clipboard.writeImage API.BrowserWindow.show.BrowserWindow.openDevTools.process.argv not reserving command line parameters' order.shell.moveItemToTrash.chrome://gpu and chrome://tracing.Linux
Windows
Changelog:
protocol.RequestBufferJob.asar archive with unpacked files.asar archives.subpixel-font-scaling option of BrowserWindow.BrowserWindow instance is garbage collected by V8.Changelog:
Changelog:
postMessage method for window object returned by window.open.getUrl returning about:blank for local pages.showMessageBox throwing errors sometimes.subpixel-font-scaling option of BrowserWindow is removed.did-fail-load not emitted under some circumstances.Changelog:
BrowserWindow.capturePage now passes NativeImage instance instead of Buffer.type option for BrowserWindow to allow changing _NET_WM_WINDOW_TYPE property of the window.BrowserWindow.setOverlayIcon API.native-image module for low level image operations.clipboard.readImage API.before-quit event for app module.MenuItem..js files into asar archive.window.open options.display style attribute of <webview> is block by default.Changelog:
asar archives in scripts forked with child_process.fork.<webview> info.Changelog:
asar: protocol, use file: protocol to access files in asar archives instead. (#1077)asar support in graceful-fs module.window.open is called in a page that doesn't allow to open new window.Windows
asar archives that contain native modules.Changelog:
Changelog:
iframes.https://atom.io/download/atom-shell/index.json web endpoint which
contains version information of all atom-shell releases.MediaStreamTrack.getSources returning sources with empty labels.<webview> when node integration is off.Plus as accelerator key.Changelog:
screen module to handle external monitors.app.getPath and app.setPath to get/set paths to special files or
directories.WebContents and <webview>.String::localeCompare crashing in scripts ran by child_process.fork.original-fs not working with some high-level fs APIs.Windows
exe as windows' default icon.Changelog:
webFrame.registerUrlSchemeAsSecure API.contentWindow property for <webview>.Changelog:
Changelog:
--disable-http-cache command line switch.icon option to dialog.showMessageBox API.--remote-debugging-port.screen module.Mac
Windows
Changelog:
Mac
BrowserWindow.show() not focusing the window.Changelog:
disablewebsecurity attribute for <webview>.getUserMedia in <webview>.<webview>.Changelog:
ipc-message event for <webview> tags.ipc.sendToHost API.will-navigate event for WebContents.Windows
flashFrame.resizable is not specified.Changelog:
localStorage size limit.Mac
Atom.app now requires renaming the helper app and framework's
names, see more in Renaming Atom Shell for your app.Changelog:
fs.statSyncNoExceptionBrowserWindow.capturePage APImaximize, unmaximize, minimize, restore, enter-full-screen,
leave-full-screen events for BrowserWindowTray.destroy APIMenu.popup APILinux
WM_CLASS of BrowserWindow to application's nameWindows
Tray on some machinesTray.displayBalloon APIChangelog:
Windows
app.setNameChangelog:
app.addRecentDocument APIWindows & Linux
Window
app.setUserTasks APIMac
app.dock.setMenu APIChangelog:
plugins attribute for <webview>preload attribute for <webview>httpreferrer attribute for <webview>crashRepoter.getLastCrashReport APIoriginal-fs modulepreload option for BrowserWindowBuffer for WebKit’s external stringLinux
Windows
BrowserWindow when DWM is offWindows & Linux
auto-hide-menu-bar work when number lock is onChangelog:
<input> tag<webview>event.preventDefault() not workingdisposition parameter for new-window eventBreaking change:
iframe have been dropped, users should use <webview> tag instead.Changelog:
iframe<webview> tagwindow.open and <a target=“frame”>Mac
Breaking change:
BrowserWindow.show() would give focus to window.Changelog:
BrowserWindow.showInactive() API.Linux
Changelog:
Linux
Windows
Alt.Note: Requires apm v0.102.0 for building native modules.
Changelog:
Linux
UBUNTU_MENUPROXY is set.Windows
__dirname for web page in asar package.Changelog:
fs.stat when reading asar archives.process.versions['chrome'].Mac
Changelog:
Changelog:
getUserMedia.Linux
Mac
Changelog:
BrowserWindow.setProgressBar API.direct-write option for BrowserWindow.Changelog:
web-preferences of BrowserWindow.Mac
Tray APIs.Changelog:
dialog.showSaveDialog and dialog.showMessageBox.BrowserWindow.show() focusing window.Changelog:
Windows
Mac
Services menu.Linux
BrowserWindow.setResizable.BrowserWindow.setSkipTaskbar.WM_CLASS and WM_WINDOW_ROLE for browser window.Changelog:
app.resolveProxy API.--debug switch.--proxy-server and --no-proxy-server switches.Windows
Linux
Breaking Changes:
BrowserWindow now can not be resized larger than screen unless the
enable-larger-than-screen option is set to true.Changelog:
app.getDataPath API.enable-larger-than-screen option for BrowserWindow.Mac
BrowserWindow.Linux & Windows
Linux
Changelog:
--host-rules switch.protocol module.Changelog:
Windows
Mac
Changelog:
X-Frame-Options header for iframes.Mac
Windows
Changelog:
Changelog:
filters option for file dialogs.Windows
select tag.Linux
Changelog:
--remote-debugging-port.Linux
process.arch on 32bit Linux.Changelog:
content-tracing module.child_process.fork in browser process.Mac
Windows
Linux
Changelog:
Changelog:
Windows
Changelog:
Mac
Windows
& in menu bar.Changelog:
Mac
BrowserWindow.isDoucumentEdited and
BrowserWindow.getRepresentedFilename APIs.Linux
Changelog:
web-preferences option.Windows
Linux
Mac
Changelog:
remote.require.unresponsive event when showing modal dialog on Linux.Changelog:
Escape as alias of Esc in accelerators.web-view module for setting zoom level.zoom-factor option for BrowserWindow.BrowserWindow.setSkipTaskbar API.BrowserWindow.executeJavaScript when page is not loaded.Changelog
INSERT in accelerator.did-finish-load only emit for main frame.Windows
Mac
Changelog:
tray module.Linux:
clipboard module.Windows:
Changelog:
Changelog:
web-preferences option for BrowserWindow.Windows
resizable flag of BrowserWindow.shell.showItemInFolder in web pages.`Changelog:
Windows
Linux
Mac
Changelog:
Linux
Changelog:
Changelog:
Changelog:
Changelog:
Development:
API Change:
Bugs:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changlog:
Changelog:
Changelog:
accept-first-mouse to BrowserWindow's creation option.Changelog:
Changelog:
Changelog:
activate-with-no-open-windows event for app.Changelog:
Changelog:
Changlog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
node-integration option for BrowserWindow.Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
API Change Notice:
app module's finish-launching event has been renamed to ready.require('atom-delegate').browserMainParts.preMainMessageLoopRun = ... things are removed since v0.8.0, use app.on('ready', ...) instead.Changelog:
API Change Notice:
app module's finish-launching event has been renamed to ready.require('atom-delegate').browserMainParts.preMainMessageLoopRun = ... things are removed since v0.8.0, use app.on('ready', ...) instead.Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Change log:
Changelog:
Changelog:
Changelog:
Changelog:
resources folder on Windows distribution.Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Changelog:
Atom.Changelog:
Changelog:
Changelog:
child_process.fork in scripts executed by child_process.fork.Changelog:
Changelog:
Changelog:
Changelog:
File object.Changelog:
AtomWindow.isWebViewFocused() API.navigator.getUserMedia.Changelog:
docs.selector of menu items not to work.Changelog:
Menu.buildFromTemplate, extra fields will be attached to the MenuItem object.Changelog:
Uncaught Error: Too much time spent in unload handler. exception.Changelog:
process.versions["atom-shell"].browserify field to main field when reading package.json in renderer.