diff options
| author | Andrej Mihajlov <and@codeispoetry.ru> | 2017-02-22 19:20:52 +0000 |
|---|---|---|
| committer | Andrej Mihajlov <and@codeispoetry.ru> | 2017-02-22 19:20:52 +0000 |
| commit | 5cbfddab9874c163f7ea697d45eeccb8116ce161 (patch) | |
| tree | 09097270e9956b6aca2642d9d8b7e82d27831c5a /app/app.js | |
| parent | b357e668d82d9f002d8145c394b72bc593db3582 (diff) | |
| download | mullvadvpn-5cbfddab9874c163f7ea697d45eeccb8116ce161.tar.xz mullvadvpn-5cbfddab9874c163f7ea697d45eeccb8116ce161.zip | |
- Switch tray icon when connected
- Fix ESLint issues
Diffstat (limited to 'app/app.js')
| -rw-r--r-- | app/app.js | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/app/app.js b/app/app.js index 0e3b2c37eb..01d4146690 100644 --- a/app/app.js +++ b/app/app.js @@ -3,7 +3,7 @@ import ReactDOM from 'react-dom'; import { Provider } from 'react-redux'; import { Router, hashHistory } from 'react-router'; import { syncHistoryWithStore, replace } from 'react-router-redux'; -import { webFrame } from 'electron'; +import { webFrame, ipcRenderer } from 'electron'; import routes from './routes'; import configureStore from './store'; import userActions from './actions/user'; @@ -30,6 +30,22 @@ const rootElement = document.querySelector(document.currentScript.getAttribute(' // disable smart pinch. webFrame.setVisualZoomLevelLimits(1, 1); +// Tray icon +const updateTrayIcon = () => { + const s = store.getState().connect.status; + let iconName; + + if(s === ConnectionState.connected) { + iconName = 'connected'; + } else { + iconName = 'default'; + } + + ipcRenderer.send('changeTrayIcon', iconName); +}; + +updateTrayIcon(); + // Create backend const backend = new Backend(); @@ -37,7 +53,7 @@ const backend = new Backend(); backend.on(Backend.EventType.updatedIp, (clientIp) => { store.dispatch(connectActions.connectionChange({ clientIp })); -}) +}); backend.on(Backend.EventType.connecting, (serverAddress) => { store.dispatch(connectActions.connectionChange({ @@ -50,6 +66,8 @@ backend.on(Backend.EventType.connecting, (serverAddress) => { backend.on(Backend.EventType.connect, (serverAddress, error) => { const status = error ? ConnectionState.disconnected : ConnectionState.connected; store.dispatch(connectActions.connectionChange({ error, status })); + + updateTrayIcon(); }); backend.on(Backend.EventType.disconnect, () => { @@ -58,6 +76,8 @@ backend.on(Backend.EventType.disconnect, () => { serverAddress: null, error: null })); + + updateTrayIcon(); }); backend.on(Backend.EventType.logging, (account) => { |
