blob: d599f6941b33b37a4bcc17e636fbf59dffc913ee (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
// @flow
import { ipcRenderer } from 'electron';
type EventHandler = (boolean) => any;
export default class AppVisiblityObserver {
_handler: EventHandler;
constructor(handler: EventHandler) {
this._handler = handler;
ipcRenderer.on('show-window', this._handleShowEvent).on('hide-window', this._handleHideEvent);
}
dispose() {
ipcRenderer
.removeListener('show-window', this._handleShowEvent)
.removeListener('hide-window', this._handleHideEvent);
}
_handleShowEvent = (_event) => {
this._handler(true);
};
_handleHideEvent = (_event) => {
this._handler(false);
};
}
|