No description
Find a file
Birunthan Mohanathas 7d2226e05e Let Chromium manage document.visibilityState and document.hidden
Chromium already includes the necessary plumbing to manage the
visibility properties and `visibilitychange` event so this gets rid of
most of our custom logic for `BrowserWindow` and `BrowserView`.

Note that `webview` remains unchanged and is still affected by the issues
listed below.

User facing changes:

- The `document` visibility properties and `visibilitychange` event are
  now also updated/fired in response to occlusion changes on macOS. In
  other words, `document.visibilityState` will now be `hidden` on macOS
  if the window is occluded by another window.

- Previously, `visibilitychange` was also fired by *both* Electron and
  Chromium in some cases (e.g. when hiding the window). Now it is only
  fired by Chromium so you no longer get duplicate events.

- The visiblity state of `BrowserWindow`s created with `{ show: false }`
  is now initially `visible` until the window is shown and hidden.

- The visibility state of `BrowserWindow`s with `backgroundThrottling`
  disabled is now permanently `visible`.

This should also fix #6860 (but not for `webview`).
2017-06-06 15:16:01 -07:00
atom Let Chromium manage document.visibilityState and document.hidden 2017-06-06 15:16:01 -07:00
brightray Merge pull request #9269 from electron/main-notifications 2017-05-31 17:21:05 +09:00
chromium_src Remove unused generated_resources.h file 2017-05-30 16:08:21 -07:00
default_app Remove test code 2017-05-31 16:39:53 +09:00
docs Let Chromium manage document.visibilityState and document.hidden 2017-06-06 15:16:01 -07:00
docs-translations Fix typo in Japanese docs 2017-05-22 14:31:26 +09:00
lib Let Chromium manage document.visibilityState and document.hidden 2017-06-06 15:16:01 -07:00
script Rebuild test modules when configuration starts with R 2017-06-06 08:41:40 -07:00
spec Let Chromium manage document.visibilityState and document.hidden 2017-06-06 15:16:01 -07:00
tools Remove runas and code no longer using it 2017-05-30 08:49:54 -07:00
vendor Upgrade to libchromiumcontent@94c5817 2017-05-26 06:57:09 +03:00
.clang-format Add clang-format config file. 2016-10-04 22:42:49 +02:00
.gitignore Only build against Jessie for arm64 arch 2017-05-23 16:10:54 +09:00
.gitmodules Move brightray submodules to root vendor 2017-05-10 13:27:22 -07:00
.node-version Bump Node.JS version in .node-version 2017-05-31 10:06:38 +02:00
.travis.yml Update Travis config to build on node 4.5.0 2016-09-08 09:24:59 -07:00
appveyor.yml Use VS2015 on appveyor 2016-05-13 11:12:15 +09:00
CODE_OF_CONDUCT.md 📝 Update to v1.4 of the Code of Conduct 2016-05-05 13:48:44 -07:00
common.gypi atom-shell -> electron in node_release_urlbase 2017-05-17 14:58:09 -07:00
CONTRIBUTING.md Add link to dutch translation in CONTRIBUTING.md 2016-10-06 10:56:59 +02:00
electron.gyp Bump v1.7.2 2017-05-26 13:33:15 -07:00
filenames.gypi Merge pull request #9572 from shubham2892/api-height-menubar-macos 2017-06-05 10:35:16 -07:00
ISSUE_TEMPLATE.md Incorporate feedback 2017-03-06 09:48:11 -08:00
LICENSE Update copyright year in LICENSE file 2017-01-02 21:19:38 -08:00
package.json change request version 2017-06-04 13:49:59 -04:00
README.md create folders for translation work 2017-05-11 00:55:38 +10:00
SECURITY.md Add SECURITY.md 2017-01-30 10:49:17 -08:00
toolchain.gypi Link with correct targets in toolchain.gypi 2017-05-23 16:30:07 +09:00

Electron Logo

Travis Build Status AppVeyor Build Status devDependency Status Join the Electron Community on Slack

📝 Available Translations: Korean | Simplified Chinese | Brazilian Portuguese | Traditional Chinese | Spanish | Turkish

The Electron framework lets you write cross-platform desktop applications using JavaScript, HTML and CSS. It is based on Node.js and Chromium and is used by the Atom editor and many other apps.

Follow @ElectronJS on Twitter for important announcements.

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to electron@github.com.

Downloads

To install prebuilt Electron binaries, use npm:

# Install as a development dependency
npm install electron --save-dev

# Install the `electron` command globally in your $PATH
npm install electron -g

See the releases page for prebuilt binaries, debug symbols, and more.

Mirrors

Documentation

Guides and the API reference are located in the docs directory. It also contains documents describing how to build and contribute to Electron.

Documentation Translations

Quick Start

Clone and run the electron/electron-quick-start repository to see a minimal Electron app in action.

Community

You can ask questions and interact with the community in the following locations:

Check out awesome-electron for a community maintained list of useful example apps, tools and resources.

License

MIT

When using the Electron or other GitHub logos, be sure to follow the GitHub logo guidelines.