aboutsummaryrefslogtreecommitdiffstats
path: root/src/index.js
diff options
context:
space:
mode:
authorLibravatar Stefan Malzner <stefan@adlk.io>2017-10-19 11:15:25 +0200
committerLibravatar Stefan Malzner <stefan@adlk.io>2017-10-19 11:19:50 +0200
commitef503a1e29a540c7318efb5f2018efbf00706198 (patch)
tree05930a5d43f45c0e769c9ba256ba82f00d85b6ac /src/index.js
parentremove unnecessary platform check (diff)
downloadferdium-app-ef503a1e29a540c7318efb5f2018efbf00706198.tar.gz
ferdium-app-ef503a1e29a540c7318efb5f2018efbf00706198.tar.zst
ferdium-app-ef503a1e29a540c7318efb5f2018efbf00706198.zip
Add option to disable system tray icon
Diffstat (limited to 'src/index.js')
-rw-r--r--src/index.js25
1 files changed, 17 insertions, 8 deletions
diff --git a/src/index.js b/src/index.js
index 3244c44ad..6f45d95b8 100644
--- a/src/index.js
+++ b/src/index.js
@@ -2,16 +2,18 @@ import { app, BrowserWindow, shell } from 'electron';
2import fs from 'fs-extra'; 2import fs from 'fs-extra';
3import path from 'path'; 3import path from 'path';
4 4
5// eslint-disable-next-line 5/* eslint-disable */
6if (require('electron-squirrel-startup')) app.quit(); 6if (require('electron-squirrel-startup')) app.quit();
7 7
8import windowStateKeeper from 'electron-window-state'; // eslint-disable-line 8import windowStateKeeper from 'electron-window-state';
9 9
10import { isDevMode, isWindows } from './environment'; // eslint-disable-line 10import { isDevMode, isWindows } from './environment';
11import ipcApi from './electron/ipc-api'; // eslint-disable-line 11import ipcApi from './electron/ipc-api';
12import Settings from './electron/Settings'; // eslint-disable-line 12import Tray from './lib/Tray';
13import { appId } from './package.json'; // eslint-disable-line 13import Settings from './electron/Settings';
14import './electron/exception'; // eslint-disable-line 14import { appId } from './package.json';
15import './electron/exception';
16/* eslint-enable */
15 17
16// Keep a global reference of the window object, if you don't, the window will 18// Keep a global reference of the window object, if you don't, the window will
17// be closed automatically when the JavaScript object is garbage collected. 19// be closed automatically when the JavaScript object is garbage collected.
@@ -47,8 +49,11 @@ const createWindow = async () => {
47 autoHideMenuBar: true, 49 autoHideMenuBar: true,
48 }); 50 });
49 51
52 // Initialize System Tray
53 const trayIcon = new Tray(mainWindow);
54
50 // Initialize ipcApi 55 // Initialize ipcApi
51 ipcApi({ mainWindow, settings }); 56 ipcApi({ mainWindow, settings, trayIcon });
52 57
53 // Manage Window State 58 // Manage Window State
54 mainWindowState.manage(mainWindow); 59 mainWindowState.manage(mainWindow);
@@ -102,6 +107,10 @@ const createWindow = async () => {
102 if (app.wasMaximized) { 107 if (app.wasMaximized) {
103 mainWindow.maximize(); 108 mainWindow.maximize();
104 } 109 }
110
111 if (!settings.get('enableSystemTray')) {
112 trayIcon.hide();
113 }
105 }); 114 });
106 115
107 mainWindow.on('show', () => { 116 mainWindow.on('show', () => {