diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2018-12-06 16:49:06 -0200 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2018-12-18 13:41:55 -0200 |
| commit | 3f75c93e81ede6b12685314bfe2bd8dd4e732fde (patch) | |
| tree | fa5035c3ae0dc7adbdb3c6a5f802340085594749 | |
| parent | 84456ece2032cb74a689aaa6b5d94ed1d2ef4816 (diff) | |
| download | mullvadvpn-3f75c93e81ede6b12685314bfe2bd8dd4e732fde.tar.xz mullvadvpn-3f75c93e81ede6b12685314bfe2bd8dd4e732fde.zip | |
Use a settings file to handle Linux window start
May start minimized or not.
| -rw-r--r-- | gui/packages/desktop/src/main/index.js | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/gui/packages/desktop/src/main/index.js b/gui/packages/desktop/src/main/index.js index a8785554fe..bf04f4d387 100644 --- a/gui/packages/desktop/src/main/index.js +++ b/gui/packages/desktop/src/main/index.js @@ -302,6 +302,10 @@ const ApplicationMain = { break; } + if (this._shouldShowWindowOnStart() || process.env.NODE_ENV === 'development') { + windowController.show(); + } + window.loadFile(path.resolve(path.join(__dirname, '../renderer/index.html'))); }, @@ -987,7 +991,6 @@ const ApplicationMain = { tray.on('click', () => { windowController.toggle(); }); - windowController.show(); }, _installLinuxWindowCloseHandler(windowController: WindowController) { @@ -998,6 +1001,28 @@ const ApplicationMain = { } }); }, + + _shouldShowWindowOnStart(): boolean { + switch (process.platform) { + case 'win32': + return false; + case 'darwin': + return false; + case 'linux': + try { + const settingsFile = path.join(app.getPath('userData'), 'gui_settings.json'); + const contents = fs.readFileSync(settingsFile, 'utf8'); + const settings = JSON.parse(contents); + + return !settings.startMinimized; + } catch (error) { + log.error(`Failed to read if window should start minimized or not: ${error}`); + return true; + } + default: + return true; + } + }, }; ApplicationMain.run(); |
