From 7d41227cb78bed23fcac4c8b40dcadae57c098bc Mon Sep 17 00:00:00 2001 From: Stefan Malzner Date: Fri, 10 Nov 2017 14:51:38 +0100 Subject: feat(App): Respect System DoNotDisturb mode for service audio Closes #162 --- src/stores/AppStore.js | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/stores/AppStore.js') diff --git a/src/stores/AppStore.js b/src/stores/AppStore.js index 6580157d4..6e196144c 100644 --- a/src/stores/AppStore.js +++ b/src/stores/AppStore.js @@ -2,7 +2,7 @@ import { remote, ipcRenderer, shell } from 'electron'; import { action, observable } from 'mobx'; import moment from 'moment'; import key from 'keymaster'; -// import path from 'path'; +import { getDoNotDisturb } from '@meetfranz/electron-notification-state'; import idleTimer from '@paulcbetts/system-idle-time'; import AutoLaunch from 'auto-launch'; @@ -45,6 +45,8 @@ export default class AppStore extends Store { miner = null; @observable minerHashrate = 0.0; + @observable isSystemMuted = false; + constructor(...args) { super(...args); @@ -83,6 +85,11 @@ export default class AppStore extends Store { // Needs to be delayed a bit this._autoStart(); + // Check if system is muted + // There are no events to subscribe so we need to poll everey 5s + this._systemDND(); + setInterval(() => this._systemDND(), 5000); + // Check for updates once every 4 hours setInterval(() => this._checkForUpdates(), CHECK_INTERVAL); // Check for an update in 30s (need a delay to prevent Squirrel Installer lock file issues) @@ -311,4 +318,8 @@ export default class AppStore extends Store { async _checkAutoStart() { return autoLauncher.isEnabled() || false; } + + _systemDND() { + this.isSystemMuted = getDoNotDisturb(); + } } -- cgit v1.2.3-70-g09d2