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`). |
||
---|---|---|
.. | ||
api | ||
development | ||
tutorial | ||
faq.md | ||
glossary.md | ||
README.md | ||
styleguide.md |
Please make sure that you use the documents that match your Electron version. The version number should be a part of the page URL. If it's not, you are probably using the documentation of a development branch which may contain API changes that are not compatible with your Electron version. To view older versions of the documentation, you can browse by tag on GitHub by opening the "Switch branches/tags" dropdown and selecting the tag that matches your version.
FAQ
There are questions that are asked quite often. Check this out before creating an issue:
Guides
- Glossary of Terms
- Supported Platforms
- Security
- Electron Versioning
- Application Distribution
- Mac App Store Submission Guide
- Windows Store Guide
- Application Packaging
- Using Native Node Modules
- Debugging Main Process
- Using Selenium and WebDriver
- DevTools Extension
- Using Pepper Flash Plugin
- Using Widevine CDM Plugin
- Testing on Headless CI Systems (Travis, Jenkins)
- Offscreen Rendering
- Keyboard Shortcuts
Tutorials
- Quick Start
- Desktop Environment Integration
- Online/Offline Event Detection
- REPL
- Native Notifications
API References
Custom DOM Elements:
Modules for the Main Process:
- app
- autoUpdater
- BrowserView
- BrowserWindow
- contentTracing
- dialog
- globalShortcut
- ipcMain
- Menu
- MenuItem
- net
- powerMonitor
- powerSaveBlocker
- protocol
- session
- systemPreferences
- Tray
- webContents
Modules for the Renderer Process (Web Page):
Modules for Both Processes:
Development
- Coding Style
- Using clang-format on C++ Code
- Source Code Directory Structure
- Technical Differences to NW.js (formerly node-webkit)
- Build System Overview
- Build Instructions (macOS)
- Build Instructions (Windows)
- Build Instructions (Linux)
- Debug Instructions (macOS)
- Debug Instructions (Windows)
- Setting Up Symbol Server in debugger
- Documentation Styleguide
- Upgrading Chrome
- Chromium Development
- V8 Development