Merge pull request #2913 from preco21/master

Update as upstream, update example variable name prefix
This commit is contained in:
Cheng Zhao 2015-09-27 22:23:31 +08:00
commit 0fb0808c7b
5 changed files with 27 additions and 29 deletions

View file

@ -6,7 +6,7 @@
`screen`은 [EventEmitter](http://nodejs.org/api/events.html#events_class_events_eventemitter)를 상속 받았습니다. `screen`은 [EventEmitter](http://nodejs.org/api/events.html#events_class_events_eventemitter)를 상속 받았습니다.
**참고:** 랜더러 / DevTools에선 이미 DOM 속성이 `window.screen`을 가지고 있으므로 `screen = require('screen')` 형식으로 모듈을 사용할 수 없습니다. **참고:** 랜더러 / DevTools에선 이미 DOM 속성이 `window.screen`을 가지고 있으므로 `screen = require('screen')` 형식으로 모듈을 사용할 수 없습니다.
밑의 예제와 같이 `atomScreen` 같은 이름으로 모듈 이름을 대체하여 사용해야 합니다. 밑의 예제와 같이 `electronScreen` 같은 이름으로 모듈 이름을 대체하여 사용해야 합니다.
다음 예제는 화면 전체를 채우는 윈도우 창을 생성합니다: 다음 예제는 화면 전체를 채우는 윈도우 창을 생성합니다:
@ -17,8 +17,8 @@ var BrowserWindow = require('browser-window');
var mainWindow; var mainWindow;
app.on('ready', function() { app.on('ready', function() {
var atomScreen = require('screen'); var electronScreen = require('screen');
var size = atomScreen.getPrimaryDisplay().workAreaSize; var size = electronScreen.getPrimaryDisplay().workAreaSize;
mainWindow = new BrowserWindow({ width: size.width, height: size.height }); mainWindow = new BrowserWindow({ width: size.width, height: size.height });
}); });
``` ```
@ -32,8 +32,8 @@ var BrowserWindow = require('browser-window');
var mainWindow; var mainWindow;
app.on('ready', function() { app.on('ready', function() {
var atomScreen = require('screen'); var electronScreen = require('screen');
var displays = atomScreen.getAllDisplays(); var displays = electronScreen.getAllDisplays();
var externalDisplay = null; var externalDisplay = null;
for (var i in displays) { for (var i in displays) {
if (displays[i].bounds.x > 0 || displays[i].bounds.y > 0) { if (displays[i].bounds.x > 0 || displays[i].bounds.y > 0) {

View file

@ -17,11 +17,7 @@ var session = win.webContents.session
### Event: 'will-download' ### Event: 'will-download'
* `event` Event * `event` Event
* `item` Object * `item` [DownloadItem](download-item.md)
* `url` String
* `filename` String
* `mimeType` String
* `hasUserGesture` Boolean
* `webContents` [WebContents](web-contents.md) * `webContents` [WebContents](web-contents.md)
Electron의 `webContents`에서 `item`을 다운로드할 때 발생하는 이벤트입니다. Electron의 `webContents`에서 `item`을 다운로드할 때 발생하는 이벤트입니다.
@ -31,7 +27,7 @@ Electron의 `webContents`에서 `item`을 다운로드할 때 발생하는 이
```javascript ```javascript
session.on('will-download', function(event, item, webContents) { session.on('will-download', function(event, item, webContents) {
event.preventDefault(); event.preventDefault();
require('request')(item.url, function(data) { require('request')(item.getUrl(), function(data) {
require('fs').writeFileSync('/somewhere', data); require('fs').writeFileSync('/somewhere', data);
}); });
}); });

View file

@ -111,6 +111,7 @@ app.on('ready', function() {
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<meta charset="UTF-8">
<title>헬로 월드!</title> <title>헬로 월드!</title>
</head> </head>
<body> <body>

View file

@ -29,7 +29,20 @@ npm install --save-dev electron-rebuild
node ./node_modules/.bin/electron-rebuild node ./node_modules/.bin/electron-rebuild
``` ```
### node-gyp을 이용한 방법 ### `npm`을 이용한 방법
또한 `npm`을 통해 설치할 수도 있습니다.
환경변수가 필요한 것을 제외하고 일반 Node 모듈을 설치하는 방법과 완전히 똑같습니다:
```bash
export npm_config_disturl=https://atom.io/download/atom-shell
export npm_config_target=0.33.1
export npm_config_arch=x64
export npm_config_runtime=electron
HOME=~/.electron-gyp npm install module-name
```
### `node-gyp`를 이용한 방법
Node 모듈을 `node-gyp`를 사용하여 Electron을 타겟으로 빌드할 때는 `node-gyp`에 헤더 다운로드 주소와 버전을 알려주어야 합니다: Node 모듈을 `node-gyp`를 사용하여 Electron을 타겟으로 빌드할 때는 `node-gyp`에 헤더 다운로드 주소와 버전을 알려주어야 합니다:
@ -40,15 +53,3 @@ $ HOME=~/.electron-gyp node-gyp rebuild --target=0.29.1 --arch=x64 --dist-url=ht
`HOME=~/.electron-gyp`은 변경할 헤더의 위치를 찾습니다. `--target=0.29.1`은 Electron의 버전입니다. `HOME=~/.electron-gyp`은 변경할 헤더의 위치를 찾습니다. `--target=0.29.1`은 Electron의 버전입니다.
`--dist-url=...`은 헤더를 다운로드 하는 주소입니다. `--arch=x64`는 64비트 시스템을 타겟으로 빌드 한다는 것을 `node-gyp`에게 알려줍니다. `--dist-url=...`은 헤더를 다운로드 하는 주소입니다. `--arch=x64`는 64비트 시스템을 타겟으로 빌드 한다는 것을 `node-gyp`에게 알려줍니다.
### npm을 이용한 방법
또한 `npm`을 통해 설치할 수도 있습니다.
환경변수가 필요한 것을 제외하고 일반 Node 모듈을 설치하는 방법과 완전히 똑같습니다:
```bash
export npm_config_disturl=https://atom.io/download/atom-shell
export npm_config_target=0.29.1
export npm_config_arch=x64
HOME=~/.electron-gyp npm install module-name
```

View file

@ -8,7 +8,7 @@ position, etc. You should not use this module until the `ready` event of the
**Note:** In the renderer / DevTools, `window.screen` is a reserved **Note:** In the renderer / DevTools, `window.screen` is a reserved
DOM property, so writing `var screen = require('screen')` will not work. In our DOM property, so writing `var screen = require('screen')` will not work. In our
examples below, we use `atomScreen` as the variable name instead. examples below, we use `electronScreen` as the variable name instead.
An example of creating a window that fills the whole screen: An example of creating a window that fills the whole screen:
@ -19,8 +19,8 @@ var BrowserWindow = require('browser-window');
var mainWindow; var mainWindow;
app.on('ready', function() { app.on('ready', function() {
var atomScreen = require('screen'); var electronScreen = require('screen');
var size = atomScreen.getPrimaryDisplay().workAreaSize; var size = electronScreen.getPrimaryDisplay().workAreaSize;
mainWindow = new BrowserWindow({ width: size.width, height: size.height }); mainWindow = new BrowserWindow({ width: size.width, height: size.height });
}); });
``` ```
@ -34,8 +34,8 @@ var BrowserWindow = require('browser-window');
var mainWindow; var mainWindow;
app.on('ready', function() { app.on('ready', function() {
var atomScreen = require('screen'); var electronScreen = require('screen');
var displays = atomScreen.getAllDisplays(); var displays = electronScreen.getAllDisplays();
var externalDisplay = null; var externalDisplay = null;
for (var i in displays) { for (var i in displays) {
if (displays[i].bounds.x > 0 || displays[i].bounds.y > 0) { if (displays[i].bounds.x > 0 || displays[i].bounds.y > 0) {