From 58ccb63d23541a03e05a48a37a98f883a2ba0d3f Mon Sep 17 00:00:00 2001 From: Paul Makles Date: Tue, 17 Feb 2026 20:36:25 +0000 Subject: [PATCH] fix: use template icon for macOS tray, use higher res icons for other platforms (#130) --- assets | 2 +- src/native/tray.ts | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/assets b/assets index f106946..bd432f2 160000 --- a/assets +++ b/assets @@ -1 +1 @@ -Subproject commit f106946659af67ad4f008588ac51570029b2fd47 +Subproject commit bd432f2298901a8566a092636eef0c35a3a80fbc diff --git a/src/native/tray.ts b/src/native/tray.ts index 219afde..45fd6be 100644 --- a/src/native/tray.ts +++ b/src/native/tray.ts @@ -1,6 +1,7 @@ import { Menu, Tray, nativeImage } from "electron"; import trayIconAsset from "../../assets/desktop/icon.png?asset"; +import macOsTrayIconAsset from "../../assets/desktop/iconTemplate.png?asset"; import { version } from "../../package.json"; import { mainWindow, quitApp } from "./window"; @@ -10,17 +11,16 @@ let tray: Tray = null; // Create and resize tray icon for macOS function createTrayIcon() { - const image = nativeImage.createFromDataURL(trayIconAsset); - const resized = image.resize({ width: 20, height: 20 }); - - // Mark as template image so it adapts to dark/light mode - resized.setTemplateImage(true); - - return resized; + if (process.platform === "darwin") { + const image = nativeImage.createFromDataURL(macOsTrayIconAsset); + const resized = image.resize({ width: 20, height: 20 }); + resized.setTemplateImage(true); + return resized; + } else { + return nativeImage.createFromDataURL(trayIconAsset); + } } -// trayIcon.setTemplateImage(true); - export function initTray() { const trayIcon = createTrayIcon(); tray = new Tray(trayIcon);