diff --git a/github-electron/github-electron-main-tests.ts b/github-electron/github-electron-main-tests.ts index a1b952889..df20d5a54 100644 --- a/github-electron/github-electron-main-tests.ts +++ b/github-electron/github-electron-main-tests.ts @@ -10,6 +10,7 @@ import { Menu, MenuItem, powerMonitor, + powerSaveBlocker, protocol, Tray, clipboard, @@ -489,6 +490,14 @@ app.on('ready', () => { }); }); +// power-save-blocker +// https://github.com/atom/electron/blob/master/docs/api/power-save-blocker.md + +var id = powerSaveBlocker.start('prevent-display-sleep'); +console.log(powerSaveBlocker.isStarted(id)); + +powerSaveBlocker.stop(id); + // protocol // https://github.com/atom/electron/blob/master/docs/api/protocol.md diff --git a/github-electron/github-electron.power-save-blocker.d.ts b/github-electron/github-electron.power-save-blocker.d.ts index 5ecc2ad3c..31135e438 100644 --- a/github-electron/github-electron.power-save-blocker.d.ts +++ b/github-electron/github-electron.power-save-blocker.d.ts @@ -4,10 +4,26 @@ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped declare namespace Electron { - + /** + * The powerSaveBlocker module is used to block the system from entering + * low-power (sleep) mode and thus allowing the app to keep the system and screen active. + */ interface PowerSaveBlocker { - start(type: string): number; + /** + * Starts preventing the system from entering lower-power mode. + * @returns an integer identifying the power save blocker. + * Note: prevent-display-sleep has higher has precedence over prevent-app-suspension. + */ + start(type: 'prevent-app-suspension' | 'prevent-display-sleep'): number; + /** + * @param id The power save blocker id returned by powerSaveBlocker.start. + * Stops the specified power save blocker. + */ stop(id: number): void; + /** + * @param id The power save blocker id returned by powerSaveBlocker.start. + * @returns a boolean whether the corresponding powerSaveBlocker has started. + */ isStarted(id: number): boolean; } }