From 40da693cb5a85d58df797a5ecbfb2f105d363c22 Mon Sep 17 00:00:00 2001 From: Jia Hao Date: Sat, 23 Jan 2016 14:47:32 +0800 Subject: [PATCH] Fix #59 Fullscreen goes to a black screen when clicking close --- app/src/components/mainWindow/mainWindow.js | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/app/src/components/mainWindow/mainWindow.js b/app/src/components/mainWindow/mainWindow.js index 0b07917..304352b 100644 --- a/app/src/components/mainWindow/mainWindow.js +++ b/app/src/components/mainWindow/mainWindow.js @@ -92,15 +92,24 @@ function createMainWindow(options, onAppQuit, setDockBadge) { setDockBadge(''); }); - mainWindow.on('close', (e) => { - if (isOSX()) { - // this is called when exiting from clicking the cross button on the window - e.preventDefault(); - mainWindow.hide(); + mainWindow.on('close', event => { + if (mainWindow.isFullScreen()) { + mainWindow.setFullScreen(false); + mainWindow.once('leave-full-screen', maybeHideWindow.bind(this, mainWindow, event)); } + maybeHideWindow(mainWindow, event) }); return mainWindow; } +function maybeHideWindow(window, event) { + if (isOSX()) { + // this is called when exiting from clicking the cross button on the window + event.preventDefault(); + window.hide(); + } + // will close the window on other platforms +} + module.exports = createMainWindow;