Toggling the sidebar off used to hide it entirely, losing the per-workspace
status rings. It now collapses to a 48px rail showing each workspace's
aggregate status ring (and unread dot), still clickable to switch, plus the
new-workspace button and the daemon live/offline dot. Full sidebar returns
when toggled back on.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Double-click a sidebar workspace name to edit it inline; Enter/blur commits
via setWorkspaceMeta({name}) (empty/unchanged is a no-op), Esc cancels. The
input stops pointer/key propagation so it doesn't trigger select or drag.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- FAVORITES section at the top collects pinned workspaces (removed from their
group listing); a star toggle on each row pins/unpins via setWorkspaceMeta.
- Drag-to-reorder within a section using raw pointer events (HTML5 DnD is
unreliable in the macOS WKWebView), with a drop-line indicator; on drop the
section's `order` is reassigned sequentially and persisted. Cross-section
drops are ignored (group membership unchanged).
- Trash icon on row hover opens a ConfirmDelete modal that shows the live
terminal count and warns before terminating them, then calls close_workspace
and re-points the active workspace.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>