Skip to content

Feature/detach tray as window#15

Merged
nahime0 merged 3 commits intomainfrom
feature/detach-tray-as-window
Mar 22, 2026
Merged

Feature/detach tray as window#15
nahime0 merged 3 commits intomainfrom
feature/detach-tray-as-window

Conversation

@nahime0
Copy link
Copy Markdown
Member

@nahime0 nahime0 commented Mar 20, 2026

Note

Medium Risk
Moderate risk: adds new window-management state and event handling in the macOS Wails app and changes CLI flag behavior (--tray--gui), which could affect launch flows and UX but doesn’t touch auth or persistent data formats.

Overview
Adds a detachable mode to the macOS menu bar UI: the tray-attached panel can now be toggled into a standalone window, with optional always-on-top pinning, plus corresponding frontend controls/shortcuts and Wails bindings/events.

Renames the launch flag from --tray to --gui (keeping --tray as deprecated with a warning), updates forking/dev/build/release scripts and documentation accordingly, and adjusts tray click/menu behavior to focus the detached window when active.

Written by Cursor Bugbot for commit e39a462. This will update automatically on new commits. Configure here.

nahime0 added 2 commits March 20, 2026 19:31
Add a second Wails window that acts as a normal desktop window.
Users can detach the tray panel into a resizable 800x600 window
and optionally pin it always-on-top. Closing the detached window
or clicking attach returns to tray panel mode.

- New Go methods: Detach, Attach, IsDetached, TogglePin, IsPinned
- Frontend: detach/attach button + pin toggle in header, 'd' shortcut
- Tray click focuses detached window when in detached mode
- WindowClosing hook hides instead of destroying the detached window
Introduce --gui as the primary flag for the macOS menu bar app.
--tray still works but prints a deprecation warning to stderr.
Update help text, README, API docs, Makefile, and goreleaser config.
Copy link
Copy Markdown

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 2 potential issues.

Fix All in Cursor

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Protect concurrent access to detached and pinned fields with a
sync.RWMutex. Use IsDetached() in callbacks instead of direct
field access. Remove the unused tray field from SessionService.
@nahime0 nahime0 merged commit 1e9ed6f into main Mar 22, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant