Electron Releases - v5.0.0-beta.1

npm install electron@v5.0.0-beta.1
yarn add electron@v5.0.0-beta.1
Note: This is a beta release, this means it may be shipping with an unreleased version of Chromium.
Please file new issues for any bugs you find in it.

Release Notes

Breaking Changes

  • Upgraded to Chromium 70.0.3538.79. #15405

Features

  • Added activate option to webContents.openDevTools. #13852
  • Added app.commandLine.hasSwitch() / app.commandLine.getSwitchValue(). #16282
  • Added fileMenu / viewMenu / appMenu roles. #16328
  • Added ipc-message and ipc-message-sync events to webContents. #16468
  • Added preload-error event to webContents emitted when preload script fails (parse error, unhandled exception, etc.). #16411
  • Added a way to query for system colors on MacOS via systemPreferences.getSystemColor(). #16248
  • Added about panel customization on linux. #15658
  • Added event and method to detect high contrast color schemes . #15493
  • Added getMemoryFootprint API. #14847
  • Added macOS support for systemPreferences.getAccentColor(). #16251
  • Added macOS support to systemPreferences.getColor(). #16249
  • Added methods to DownloadItem that enable customization of the save dialog options during will-download events. #15497
  • Added response header support to protocol.registerFileProtocol to match protocol.registerStreamProtocol. #16098
  • Added support for DesktopCapturerSource.appIcon. 1f55f163
  • Added support for multiple browser views per BrowserWindow. #16148
  • Added support for running preload scripts and nodeIntegration in iframes. #16425
  • Allow for MacOS notifications to be immediately delivered. #16060
  • Allow numpad keys to be used as accelerators. #15689
  • Allow partial setting of window bounds with win.setBounds(). #15677
  • Allow registering of multiple globalShortcuts. #15542
  • Allowed filtering of remote.getBuiltin(), remote.getCurrentWindow(), remote.getCurrentWebContents and <webview>.getWebContents(). #16293
  • Converted zoomLevel() and zoomFactor() for webContents and <webview> to return a promise instead taking a callback. #16410
  • Deprecated modules internally using remote.require in sandboxed renderer context. #15145
  • Exposes an API to allow apps to determine their status as a trusted accessibility client. #16119
  • Feat: provide user system's region with app.getLocaleCountryCode(). #15035
  • Mixed-sandbox mode is now enabled by default. enableMixedSandbox and the --enable-mixed-sandbox command-line switch still exist for compatibility, but are deprecated and have no effect. #15894
  • Mixed-sandbox mode works on Linux. #15870
  • Promisifies app.getFileIcon. #15742
  • Promisify shell.openExternal() by splitting it into a sync and async method. #16176
  • Promisify win.capturePage(). #15743
  • The browser-backward and browser-forward app-command events events available in BrowserWindow now work on Linux. #15441
  • Unified behavior between the default app and packaged apps (application menu / window-all-closed handling). #16310
  • Updated SpellCheck API to support asynchronous results. #14032
  • Upgraded to Chromium 71.0.3578.98. #15966
  • WebContents.loadURL and loadFile now return a promise. #15855

Fixes

  • 'win.setParentWindow(parent)' available also under Windows. #15775
  • Fixed a crash on Linux when starting a sandboxed renderer. The resourcesPath property is no longer available on process in sandboxed renderers. #15701
  • no-notes. #16260
  • Added --disable-color-correct-rendering switch. #15898
  • Allowed blocking of desktopCapturer.getSources() calls by handling the desktop-capturer-get-sources event. #15964
  • Be more lenient about whitespace in webview's "webpreferences" feature string. #15602
  • Correct windowMenu MenuItem role on MacOS. #15930
  • Disabled CORB checks when web security preference is disabled. #15737
  • Fix: hiddenInset titleBar console spam. #15576
  • Fix: make certain values on process read-only. #15628
  • Fix: move NativeWindow tracking to OSR WCV. #15585
  • Fixed <webview> not working with contextIsolation + sandbox. #16469
  • Fixed <webview> tag not working when using contextIsolation. #16067
  • Fixed windowmenu role not showing the window list on macOS. #16387
  • Fixed a bug that made all cookies non persistent. . #15836
  • Fixed a bug where window.opener of a window created with window.open from a sandboxed renderer was null. #15821
  • Fixed a problem where the focus would move to the browser window after the user (SHIFT +) tabbed through all the elements in the page (#12919). #16042
  • Fixed an issue where on Linux, the setuid sandbox was incorrectly enabled when passing --enable-mixed-sandbox. #15722
  • Fixed an issue with promise methods not resolving correctly over ipc in the renderer process. #16433
  • Fixed bug that caused menu accelerators to stop working on some linux. #15094
  • Fixed child windows invisible if opened with window.open from BrowserView with nativeWindowOpen enabled. #12686
  • Fixed crash on exit when using BrowserView. #15541
  • Fixed default font fallback for non-latin scripts. #15486
  • Fixed incorrect display of 'zoom in' accelerator on mac. #15502
  • Fixed incorrect foreground color on GTK menubar. #15878
  • Fixed missing remote object error when calling remote function created in preload script. #15444
  • Fixed regression regarding localStorage quota not being bypassed. #15596
  • Fixed returning headers with multiple values for stream protocols. #14887
  • Fixed some accelerators having Shift appended to them twice . #15400
  • Fixed support for precision trackpad/mouse scrolling on Windows. #15830
  • Fixed typo by changing "masOS" to "macOS". #15861
  • Implement proper Location object for BrowserWindowProxy. #15019
  • Support async child process methods without callback in asar. #15927

Other Changes

  • Removed potential double free when managing WebContents. #15280
  • Switch to V2 sandbox on mac. #15647
  • Improved tray icon context menu and menu bar accessibility. #15302
  • Added legacy callback function tests to prevent regressions as the promisification initiative continues. #16436
  • Don't expose NavigationController as an internal module. #15920
  • Fixed version bump script for first beta. 29e5195c
  • Merged code in brightray into atom. #15240
  • Missing process.getCreationTime() exposed in sandboxed renderers. #15824
  • Removed hardcoded Google API key. #15478
  • Removed support for deprecated construction of a TouchBar with an array of items, use an options object instead. #15650
  • Restore kill_win.cc dcheck. #15630
  • The default values of nodeIntegration and webviewTag are now false to improve security. #16235

Documentation

  • Documentation changes: #14024, #14768, #15196, #15507, #15551, #15888, #16086, #16129, #16186, #16482