Simplify tray: static template icon, click focuses the app

The setImage-swapped progress frames lost the template treatment on macOS and
rendered black-on-dark once transfers started. Dial back per user decision:
the tray is now just the glyph (template image set once at construction, never
swapped) and clicking it activates the window — no menu, no progress effects.
Removes everything that only served the fancy version: progress frames +
generation, engine.aggregateProgress, the workspacesSync webview->bun channel
(schema, send proxy, panels effect, handlers) and the activate-tab action.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Jokin
2026-07-11 21:55:42 +02:00
co-authored by Claude Fable 5
parent 42e5e5bb9a
commit 3fb08fdc24
31 changed files with 17 additions and 229 deletions
+1 -9
View File
@@ -15,13 +15,7 @@ import type {
// pulling in bun-only type modules.
//
// bun.requests = calls the webview makes, handled in src/bun/rpc-handlers.ts
// bun.messages = fire-and-forget pushes from the webview (tray state)
// webview.messages = push events from bun, handled in ui rpc.service.ts
export interface WorkspaceSyncInfo {
workspaces: { id: number; name: string; remote: boolean; sessionIds: string[] }[];
activeId: number;
}
export type AppRPC = {
bun: {
requests: {
@@ -103,9 +97,7 @@ export type AppRPC = {
};
clearEditLeftovers: { params: Record<string, never>; response: Result };
};
messages: {
workspacesSync: WorkspaceSyncInfo;
};
messages: Record<never, never>;
};
webview: {
requests: Record<never, never>;