docs: Transparent window

This commit is contained in:
Cheng Zhao 2015-01-12 15:27:33 -08:00
parent b4cdb546fe
commit bda3711815
2 changed files with 26 additions and 0 deletions

View file

@ -66,6 +66,7 @@ You can also create a window without chrome by using
scripts run in the window. This script will always have access to node APIs
no matter whether node integration is turned on for the window, and the path
of `preload` script has to be absolute path.
* `transparent` Boolean - Makes the window [transparent](frameless-window.md)
* `web-preferences` Object - Settings of web page's features
* `javascript` Boolean
* `web-security` Boolean

View file

@ -13,6 +13,31 @@ var BrowserWindow = require('browser-window');
var win = new BrowserWindow({ width: 800, height: 600, frame: false });
```
## Transparent window
By setting the `transparent` option to `true`, you can also make the frameless
window transparent:
```javascript
var win = new BrowserWindow({ transparent: true, frame: false });
```
### Limitations
* You can not click through the transparent area, we are going to introduce an
API to set window shape to solve this, but currently blocked at an
[upstream bug](https://code.google.com/p/chromium/issues/detail?id=387234).
* Transparent window is not resizable, setting `resizable` to `true` may make
transprent window stop working on some platforms.
* The `blur` filter only applies to the web page, so there is no way to apply
blur effect to the content bellow the window.
* On Windows transparent window will not work when DWM is disabled.
* On Linux users have to put `--enable-transparent-visuals --disable-gpu` in
command line to disable GPU and allow ARGB to make transparent window, this is
caused by an upstream bug that [alpha channel doesn't work on some NVidia
drivers](https://code.google.com/p/chromium/issues/detail?id=369209) on Linux.
* On Mac the native window shadow will not show for transparent window.
## Draggable region
By default, the frameless window is non-draggable. Apps need to specify