Re-implement minimize on close.
This commit is contained in:
parent
1d19fba89f
commit
948f56fdea
22
main.js
22
main.js
|
@ -8,7 +8,7 @@ let mainWindow
|
||||||
// Require other app modules
|
// Require other app modules
|
||||||
const trayService = require(__dirname+'/modules/tray-service')
|
const trayService = require(__dirname+'/modules/tray-service')
|
||||||
const menuService = require(__dirname+'/modules/menu-service')
|
const menuService = require(__dirname+'/modules/menu-service')
|
||||||
// const settingsService = require(__dirname+'/modules/settings-service')
|
const settingsService = require(__dirname+'/modules/settings-service')
|
||||||
|
|
||||||
const isMac = process.platform === 'darwin'
|
const isMac = process.platform === 'darwin'
|
||||||
const isWin = process.platform === 'win32'
|
const isWin = process.platform === 'win32'
|
||||||
|
@ -50,21 +50,17 @@ function createWindow () {
|
||||||
// mainWindow.webContents.openDevTools()
|
// mainWindow.webContents.openDevTools()
|
||||||
|
|
||||||
// Before close
|
// Before close
|
||||||
// const minimizeOnClose = settingsService.get('minimizeOnClose');
|
mainWindow.on('close', (e) => {
|
||||||
const minimizeOnClose = false; // XXX: this doesn't seem to work
|
if (!app.isQuitting && settingsService.get('minimizeOnClose')) {
|
||||||
if (minimizeOnClose) {
|
e.preventDefault()
|
||||||
mainWindow.on('close', (e) => {
|
mainWindow.hide()
|
||||||
if (!app.isQuitting) {
|
}
|
||||||
e.preventDefault()
|
return false;
|
||||||
mainWindow.hide()
|
})
|
||||||
}
|
|
||||||
return false;
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
// Handle shutdown event on Mac with minimizeOnClose
|
// Handle shutdown event on Mac with minimizeOnClose
|
||||||
// to prevent shutdown interrupt
|
// to prevent shutdown interrupt
|
||||||
if (isMac && minimizeOnClose) {
|
if (isMac) {
|
||||||
const { powerMonitor } = require('electron')
|
const { powerMonitor } = require('electron')
|
||||||
powerMonitor.on('shutdown', () => {
|
powerMonitor.on('shutdown', () => {
|
||||||
app.isQuitting = true
|
app.isQuitting = true
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
* Module for Menu functions.
|
* Module for Menu functions.
|
||||||
*/
|
*/
|
||||||
const {app, Menu, BrowserWindow} = require('electron')
|
const {app, Menu, BrowserWindow} = require('electron')
|
||||||
|
const settingsService = require(__dirname + '/../modules/settings-service')
|
||||||
|
|
||||||
const menuService = {}
|
const menuService = {}
|
||||||
|
|
||||||
|
@ -19,6 +20,15 @@ menuService.createMenu = () => {
|
||||||
activeWindow.reload()
|
activeWindow.reload()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
label: 'Minimize on close',
|
||||||
|
type: 'checkbox',
|
||||||
|
checked: settingsService.get('minimizeOnClose'),
|
||||||
|
click: () => {
|
||||||
|
this.checked = !this.checked;
|
||||||
|
settingsService.set('minimizeOnClose', this.checked);
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
type: 'separator',
|
type: 'separator',
|
||||||
},
|
},
|
||||||
|
@ -30,7 +40,7 @@ menuService.createMenu = () => {
|
||||||
app.quit()
|
app.quit()
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
|
||||||
const edit = {
|
const edit = {
|
||||||
|
@ -67,7 +77,7 @@ menuService.createMenu = () => {
|
||||||
accelerator: 'CmdOrCtrl+A',
|
accelerator: 'CmdOrCtrl+A',
|
||||||
role: 'selectAll',
|
role: 'selectAll',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
|
||||||
const help = {
|
const help = {
|
||||||
|
|
Loading…
Reference in New Issue