From 093a29f344423fc93c262778ce93a153f9f860e0 Mon Sep 17 00:00:00 2001 From: Ramiro Saenz Date: Tue, 25 Sep 2018 19:17:23 -0300 Subject: [PATCH] Improved taskbar badge and system tray icon --- electron/main.js | 11 +++-------- electron/tray.js | 3 ++- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/electron/main.js b/electron/main.js index e8b7cb45..e7e394d3 100644 --- a/electron/main.js +++ b/electron/main.js @@ -287,12 +287,8 @@ function updateBadge(title) { tray.setBadge(messageCount, config.get('systemtray_indicator')); - if (process.platform === 'win32') { // Windows - if (messageCount === 0) { - mainWindow.setOverlayIcon(null, ""); - return; - } - + if (process.platform === 'win32') { + if (messageCount === 0) return mainWindow.setOverlayIcon(null, ''); mainWindow.webContents.send('setBadge', messageCount); } else { // macOS & Linux app.setBadgeCount(messageCount); @@ -302,8 +298,7 @@ function updateBadge(title) { } ipcMain.on('setBadge', function(event, messageCount, value) { - var img = nativeImage.createFromDataURL(value); - mainWindow.setOverlayIcon(img, messageCount.toString()); + mainWindow.setOverlayIcon(nativeImage.createFromDataURL(value), messageCount.toString()); }); ipcMain.on('getConfig', function(event, arg) { diff --git a/electron/tray.js b/electron/tray.js index bd079ed5..ade4cb71 100644 --- a/electron/tray.js +++ b/electron/tray.js @@ -66,6 +66,7 @@ exports.setBadge = function(messageCount, showUnreadTray) { if (process.platform === 'darwin' || !appIcon) return; let icon; + messageCount = parseInt(messageCount); if (process.platform === 'linux') { icon = messageCount > 0 && showUnreadTray ? 'IconTrayUnread.png' : 'IconTray.png'; } else { @@ -73,5 +74,5 @@ exports.setBadge = function(messageCount, showUnreadTray) { } const iconPath = path.join(__dirname, `../resources/${icon}`); - appIcon.setImage(iconPath); + appIcon.setImage(electron.nativeImage.createFromPath(iconPath)); };