diff --git a/frontend/assets/icon.png b/frontend/assets/icon.png index 7c65c0786..59b25614a 100644 Binary files a/frontend/assets/icon.png and b/frontend/assets/icon.png differ diff --git a/frontend/src/main.ts b/frontend/src/main.ts index 8e88420a2..c408e41c9 100644 --- a/frontend/src/main.ts +++ b/frontend/src/main.ts @@ -5,6 +5,7 @@ import { dialog, ipcMain, net, + nativeImage, Notification as ElectronNotification, protocol, shell, @@ -156,6 +157,16 @@ function windowIconPath(): string | undefined { return existsSync(candidate) ? candidate : undefined; } +function applyRuntimeAppIcon(): void { + if (process.platform !== "darwin") return; + const iconPath = windowIconPath(); + if (!iconPath) return; + const icon = nativeImage.createFromPath(iconPath); + if (!icon.isEmpty()) { + app.dock.setIcon(icon); + } +} + function setDaemonStatus(nextStatus: DaemonStatus): void { daemonStatus = nextStatus; mainWindow?.webContents.send("daemon:status", daemonStatus); @@ -952,6 +963,7 @@ app.whenReady().then(async () => { } registerRendererProtocol(); + applyRuntimeAppIcon(); createWindow(); void startDaemon(); initAutoUpdates();