diff --git a/server-console/resources/console-tray-osx-stopped.png b/server-console/resources/console-tray-osx-stopped.png new file mode 100644 index 0000000000..fcce7c5da8 Binary files /dev/null and b/server-console/resources/console-tray-osx-stopped.png differ diff --git a/server-console/resources/console-tray-osx-stopping.png b/server-console/resources/console-tray-osx-stopping.png new file mode 100644 index 0000000000..9d6858071f Binary files /dev/null and b/server-console/resources/console-tray-osx-stopping.png differ diff --git a/server-console/resources/console-tray-Template.png b/server-console/resources/console-tray-osx.png similarity index 100% rename from server-console/resources/console-tray-Template.png rename to server-console/resources/console-tray-osx.png diff --git a/server-console/resources/console-tray-osx@2x-stopped.png b/server-console/resources/console-tray-osx@2x-stopped.png new file mode 100644 index 0000000000..cdebda19f8 Binary files /dev/null and b/server-console/resources/console-tray-osx@2x-stopped.png differ diff --git a/server-console/resources/console-tray-osx@2x-stopping.png b/server-console/resources/console-tray-osx@2x-stopping.png new file mode 100644 index 0000000000..24d554b194 Binary files /dev/null and b/server-console/resources/console-tray-osx@2x-stopping.png differ diff --git a/server-console/resources/console-tray-Template@2x.png b/server-console/resources/console-tray-osx@2x.png similarity index 100% rename from server-console/resources/console-tray-Template@2x.png rename to server-console/resources/console-tray-osx@2x.png diff --git a/server-console/resources/console-tray-win-stopped.png b/server-console/resources/console-tray-win-stopped.png new file mode 100644 index 0000000000..dfe564335f Binary files /dev/null and b/server-console/resources/console-tray-win-stopped.png differ diff --git a/server-console/resources/console-tray-win-stopping.png b/server-console/resources/console-tray-win-stopping.png new file mode 100644 index 0000000000..64eb0bf661 Binary files /dev/null and b/server-console/resources/console-tray-win-stopping.png differ diff --git a/server-console/resources/console-tray.png b/server-console/resources/console-tray-win.png similarity index 100% rename from server-console/resources/console-tray.png rename to server-console/resources/console-tray-win.png diff --git a/server-console/resources/console-tray-win@2x-stopped.png b/server-console/resources/console-tray-win@2x-stopped.png new file mode 100644 index 0000000000..e59325cd6c Binary files /dev/null and b/server-console/resources/console-tray-win@2x-stopped.png differ diff --git a/server-console/resources/console-tray-win@2x-stopping.png b/server-console/resources/console-tray-win@2x-stopping.png new file mode 100644 index 0000000000..de968e7f0e Binary files /dev/null and b/server-console/resources/console-tray-win@2x-stopping.png differ diff --git a/server-console/resources/console-tray@2x.png b/server-console/resources/console-tray-win@2x.png similarity index 100% rename from server-console/resources/console-tray@2x.png rename to server-console/resources/console-tray-win@2x.png diff --git a/server-console/src/main.js b/server-console/src/main.js index d6cde89d09..4e2451bc8e 100644 --- a/server-console/src/main.js +++ b/server-console/src/main.js @@ -3,6 +3,7 @@ const electron = require('electron'); const app = electron.app; // Module to control application life. const BrowserWindow = electron.BrowserWindow; +const nativeImage = electron.nativeImage; const notifier = require('node-notifier'); const util = require('util'); @@ -594,6 +595,7 @@ function updateMenuArray(menuArray, serverState) { function updateTrayMenu(serverState) { if (tray) { var menuArray = buildMenuArray(serverState); + tray.setImage(trayIcons[serverState]); tray.setContextMenu(Menu.buildFromTemplate(menuArray)); if (isShuttingDown) { tray.setToolTip('High Fidelity - Shutting Down'); @@ -730,8 +732,18 @@ function maybeShowSplash() { } } -const trayFilename = (osType == "Darwin" ? "console-tray-Template.png" : "console-tray.png"); -const trayIcon = path.join(__dirname, '../resources/' + trayFilename); +const trayIconOS = (osType == "Darwin") ? "osx" : "win"; +var trayIcons = {}; +trayIcons[ProcessGroupStates.STARTED] = "console-tray-" + trayIconOS + ".png"; +trayIcons[ProcessGroupStates.STOPPED] = "console-tray-" + trayIconOS + "-stopped.png"; +trayIcons[ProcessGroupStates.STOPPING] = "console-tray-" + trayIconOS + "-stopping.png"; +for (var key in trayIcons) { + var fullPath = path.join(__dirname, '../resources/' + trayIcons[key]); + var img = nativeImage.createFromPath(fullPath); + img.setTemplateImage(osType == 'Darwin'); + trayIcons[key] = img; +} + const notificationIcon = path.join(__dirname, '../resources/console-notification.png'); @@ -745,7 +757,7 @@ app.on('ready', function() { } // Create tray icon - tray = new Tray(trayIcon); + tray = new Tray(trayIcons[ProcessGroupStates.STOPPED]); tray.setToolTip('High Fidelity Server Console'); tray.on('click', function() {