7d2226e05e
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`). |
||
---|---|---|
atom | ||
brightray | ||
chromium_src | ||
default_app | ||
docs | ||
docs-translations | ||
lib | ||
script | ||
spec | ||
tools | ||
vendor | ||
.clang-format | ||
.gitignore | ||
.gitmodules | ||
.node-version | ||
.travis.yml | ||
appveyor.yml | ||
CODE_OF_CONDUCT.md | ||
common.gypi | ||
CONTRIBUTING.md | ||
electron.gyp | ||
filenames.gypi | ||
ISSUE_TEMPLATE.md | ||
LICENSE | ||
package.json | ||
README.md | ||
SECURITY.md | ||
toolchain.gypi |
📝 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
- Brazilian Portuguese
- Korean
- Japanese
- Spanish
- Simplified Chinese
- Traditional Chinese
- Turkish
- Thai
- Ukrainian
- Russian
- French
- Indonesian
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:
electron
category on the Atom forums#atom-shell
channel on FreenodeAtom
channel on Slackelectron-ru
(Russian)electron-br
(Brazilian Portuguese)electron-kr
(Korean)electron-jp
(Japanese)electron-tr
(Turkish)electron-id
(Indonesia)
Check out awesome-electron for a community maintained list of useful example apps, tools and resources.
License
When using the Electron or other GitHub logos, be sure to follow the GitHub logo guidelines.