From 48f63b6bcb7643e6e5af70df235eff773fd6d73c Mon Sep 17 00:00:00 2001 From: Yuya Ochiai Date: Tue, 12 Jan 2016 22:08:24 +0900 Subject: [PATCH] Restore maximized/fullscreen state on startup Please refer to #4 --- src/main.js | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/main.js b/src/main.js index 7c3ad83f..46121107 100644 --- a/src/main.js +++ b/src/main.js @@ -111,6 +111,9 @@ app.on('ready', function() { } window_options.icon = __dirname + '/resources/appicon.png'; mainWindow = new BrowserWindow(window_options); + if (window_options.maximized) { + mainWindow.maximize(); + } // and load the index.html of the app. mainWindow.loadURL('file://' + __dirname + '/browser/index.html'); @@ -118,10 +121,16 @@ app.on('ready', function() { // Open the DevTools. // mainWindow.openDevTools(); + var saveWindowState = function(file, window) { + var window_state = window.getBounds(); + window_state.maximized = window.isMaximized(); + window_state.fullscreen = window.isFullScreen(); + fs.writeFileSync(bounds_info_path, JSON.stringify(window_state)); + }; + mainWindow.on('close', function(event) { if (willAppQuit) { // when [Ctrl|Cmd]+Q - var bounds = mainWindow.getBounds(); - fs.writeFileSync(bounds_info_path, JSON.stringify(bounds)); + saveWindowState(bounds_info_path, mainWindow); } else { // Minimize or hide the window for close button. event.preventDefault(); @@ -144,8 +153,7 @@ app.on('ready', function() { // 'blur' event was effective in order to avoid this. // Ideally, app should detect that OS is shutting down. mainWindow.on('blur', function() { - var bounds = mainWindow.getBounds(); - fs.writeFileSync(bounds_info_path, JSON.stringify(bounds)); + saveWindowState(bounds_info_path, mainWindow); }); var app_menu = appMenu.createMenu(mainWindow);