From c143b3b461d7e461976916bc068723e24a718e40 Mon Sep 17 00:00:00 2001 From: Jia Hao Date: Sat, 23 Jan 2016 15:12:53 +0800 Subject: [PATCH] Fix error with badge on non-osx systems - Instead of checking every instance we use the setBadge, we define an empty function and only override it if it is OSX --- app/src/components/mainWindow/mainWindow.js | 10 +++------- app/src/components/menu/menu.js | 2 +- app/src/main.js | 10 ++++++++-- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/app/src/components/mainWindow/mainWindow.js b/app/src/components/mainWindow/mainWindow.js index 304352b..cfbf4a8 100644 --- a/app/src/components/mainWindow/mainWindow.js +++ b/app/src/components/mainWindow/mainWindow.js @@ -13,8 +13,8 @@ const ZOOM_INTERVAL = 0.1; /** * * @param {{}} options AppArgs from nativefier.json - * @param {electron.app.quit} onAppQuit - * @param {electron.app.dock.setBadge} setDockBadge + * @param {function} onAppQuit + * @param {function} setDockBadge * @returns {electron.BrowserWindow} */ function createMainWindow(options, onAppQuit, setDockBadge) { @@ -57,7 +57,7 @@ function createMainWindow(options, onAppQuit, setDockBadge) { if (options.counter) { mainWindow.on('page-title-updated', function () { - if (!isOSX() || mainWindow.isFocused()) { + if (mainWindow.isFocused()) { return; } @@ -85,10 +85,6 @@ function createMainWindow(options, onAppQuit, setDockBadge) { mainWindow.loadURL(options.targetUrl); mainWindow.on('focus', function () { - if (!isOSX()) { - return; - } - setDockBadge(''); }); diff --git a/app/src/components/menu/menu.js b/app/src/components/menu/menu.js index c1cf437..ddb1a26 100644 --- a/app/src/components/menu/menu.js +++ b/app/src/components/menu/menu.js @@ -5,7 +5,7 @@ var shell = electron.shell; /** * * @param {string} nativefierVersion - * @param {electron.app.quit} onQuit should be from app.quit + * @param {function} onQuit should be from app.quit * @param {function} onGoBack * @param {electron} onGoForward * @param {function} onZoomIn diff --git a/app/src/main.js b/app/src/main.js index 1fefbcb..413d3b2 100644 --- a/app/src/main.js +++ b/app/src/main.js @@ -19,6 +19,12 @@ var appArgs = JSON.parse(fs.readFileSync(APP_ARGS_FILE_PATH, 'utf8')); var mainWindow; +// do nothing for setDockBadge if not OSX +let setDockBadge = () => {}; +if (isOSX()) { + setDockBadge = app.dock.setBadge; +} + app.on('window-all-closed', function () { if (!isOSX()) { app.quit(); @@ -47,7 +53,7 @@ app.on('before-quit', function () { }); app.on('ready', function () { - mainWindow = createMainWindow(appArgs, app.quit, app.dock.setBadge); + mainWindow = createMainWindow(appArgs, app.quit, setDockBadge); }); app.on('login', function(event, webContents, request, authInfo, callback) { @@ -61,5 +67,5 @@ ipcMain.on('notification', function(event, title, opts) { return; } - app.dock.setBadge('●'); + setDockBadge('●'); });