Add Notification API docs

This commit is contained in:
Samuel Attard 2017-05-20 21:25:26 +10:00
parent e7569ed499
commit 8815da314f
No known key found for this signature in database
GPG key ID: 273DC1869D8F13EF
2 changed files with 88 additions and 1 deletions

85
docs/api/notification.md Normal file
View file

@ -0,0 +1,85 @@
# Notification
> Create OS desktop notifications
Process: [Main](../glossary.md#main-process)
## Using in the renderer process
If you want to use Notifications in a renderer process you should use the [HTML5 Notification API](../tutorial/notifications.md)
## Class: Notification
> Create OS desktop notifications
Process: [Main](../glossary.md#main-process)
`Notification` is an
[EventEmitter](http://nodejs.org/api/events.html#events_class_events_eventemitter).
It creates a new `Notification` with native properties as set by the `options`.
### `new Notification([options])`
* `options` Object
* `title` String - A title for the notification, which will be shown at the top of the notification window when it is shown
* `body` String - The body text of the notification, which will be displayed below the title
* `silent` Boolean - (Optional) Whether or not to emit an OS notification noise when showing the notification
* `icon` [NativeImage](native-image.md) - (Optional) An icon to use in the notification
* `hasReply` Boolean - (Optional) Whether or not to add an inline reply option to the notification. _macOS_
* `replyPlaceholder` String - (Optional) The placeholder to write in the inline reply input field. _macOS_
### Instance Events
Objects created with `new Notification` emit the following events:
**Note:** Some events are only available on specific operating systems and are
labeled as such.
#### Event: 'click'
Returns:
* `event` Event
Emitted when the document changed its title, calling `event.preventDefault()`
will prevent the native window's title from changing.
#### Event: 'close'
Returns:
* `event` Event
Emitted when the notification is shown to the user, note this could be fired
multiple times as a notification can be shown multiple times through the
`show()` method.
#### Event: 'click'
Returns:
* `event` Event
Emitted when the notification is clicked by the user.
#### Event: 'reply' _macOS_
Returns:
* `event` Event
* `reply` String - The string the user entered into the inline reply field
Emitted when the user clicks the "Reply" button on a notification with `hasReply: true`.
### Instance Methods
Objects created with `new Notification` have the following instance methods:
#### `notification.show()`
Immediately shows the notification to the user, please note this means unlike the
HTML5 Notification implementation, simply instantiating a `new Notification` does
not immediately show it to the user, you need to call this method before the OS
will display it.

View file

@ -5,7 +5,9 @@ to the user. Electron conveniently allows developers to send notifications with
the [HTML5 Notification API](https://notifications.spec.whatwg.org/), using the [HTML5 Notification API](https://notifications.spec.whatwg.org/), using
the currently running operating system's native notification APIs to display it. the currently running operating system's native notification APIs to display it.
**Note:** Since this is an HTML5 API it is only available in the renderer process. **Note:** Since this is an HTML5 API it is only available in the renderer process. If
you want to show Notifications in the main process please check out the
[Notification](../api/notification.md) module.
```javascript ```javascript
let myNotification = new Notification('Title', { let myNotification = new Notification('Title', {