From 465eb5d0a4d1bdeda6924e28adc211316081933f Mon Sep 17 00:00:00 2001 From: Draculabo Date: Mon, 19 Jan 2026 21:08:31 +0800 Subject: [PATCH] fix: tray icon not appearing in production builds - Use extraResource config to copy assets outside of ASAR package - Add debug logging for tray icon path resolution - Bump version to 0.2.2 --- CHANGELOG.md | 8 ++++++++ forge.config.ts | 1 + package-lock.json | 4 ++-- package.json | 2 +- src/ipc/tray/handler.ts | 7 ++++++- 5 files changed, 18 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2d78447..5aec945 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,14 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.2.2] - 2026-01-19 + +### Bug Fixes + +- Fixed tray icon not appearing in production builds on Windows + - Used `extraResource` config to properly copy assets outside of ASAR package + - Added debug logging for tray icon path resolution + ## [0.2.1] - 2026-01-19 ### Bug Fixes diff --git a/forge.config.ts b/forge.config.ts index d133475..c8473b1 100644 --- a/forge.config.ts +++ b/forge.config.ts @@ -22,6 +22,7 @@ const config: ForgeConfig = { name: 'Antigravity Manager', executableName: 'antigravity-manager', icon: 'images/icon', // Electron Forge automatically adds .icns/.ico + extraResource: ['src/assets'], // Copy assets folder to resources/assets }, rebuildConfig: {}, hooks: { diff --git a/package-lock.json b/package-lock.json index 7a410bc..a4041c0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "antigravity-manager", - "version": "0.2.1", + "version": "0.2.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "antigravity-manager", - "version": "0.2.1", + "version": "0.2.2", "license": "CC-BY-NC-SA-4.0", "dependencies": { "@grpc/grpc-js": "^1.14.3", diff --git a/package.json b/package.json index 18b42cc..c881e43 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "antigravity-manager", "productName": "Antigravity Manager", - "version": "0.2.1", + "version": "0.2.2", "description": "Antigravity Manager - Electron App", "main": ".vite/build/main.js", "private": true, diff --git a/src/ipc/tray/handler.ts b/src/ipc/tray/handler.ts index b282108..2c92b8f 100644 --- a/src/ipc/tray/handler.ts +++ b/src/ipc/tray/handler.ts @@ -51,9 +51,14 @@ export function initTray(mainWindow: BrowserWindow) { } const inDevelopment = process.env.NODE_ENV === 'development'; + // In production, extraResource copies 'src/assets' folder to 'resources/assets' const iconPath = inDevelopment ? path.join(process.cwd(), 'src/assets/tray.png') - : path.join(process.resourcesPath, 'assets/tray.png'); + : path.join(process.resourcesPath, 'assets', 'tray.png'); + + logger.info( + `Tray icon path: ${iconPath}, inDevelopment: ${inDevelopment}, resourcesPath: ${process.resourcesPath}`, + ); const icon = nativeImage.createFromPath(iconPath);