fix(desktop): keep window controls out of the compact sidebar - #11686
fix(desktop): keep window controls out of the compact sidebar#11686shivamhwp wants to merge 1 commit into
Conversation
ApprovabilityVerdict: Approved at Macroscope's review found this PR approvable — This is a narrowly scoped macOS desktop UI fix with an additive, sender-scoped IPC bridge and tests for platform and window guards; the existing compact-sidebar setting remains default-off. An unresolved Medium finding still identifies incorrect control positioning after the sidebar expands. Notes:
You can add or adjust custom eligibility rules. Learn more. |
Thread transfer impact✅ Thread transfer remains within every enforced ceiling.
Baseline: Scenario and decoded snapshot size10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.
Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (7)
Included review availability: Your plan provides up to 10 included reviews per hour; 9 remain after this review. 📝 WalkthroughWalkthroughThe change adds a macOS-only IPC method for native window-button visibility. The sidebar uses this method during compact states and updates workspace-control layout classes. Tests cover supported and unsupported platforms, sender validation, and missing windows. ChangesNative Window Button Visibility
Priority: ⬇️ Low Estimated code review effort: 3 (Moderate) | ~20 minutes Change: Bug fix Sequence Diagram(s)sequenceDiagram
participant SidebarControl
participant desktopBridge
participant setWindowButtonVisibility
participant ElectronWindow
SidebarControl->>desktopBridge: setWindowButtonVisibility(visible)
desktopBridge->>setWindowButtonVisibility: invoke IPC channel
setWindowButtonVisibility->>ElectronWindow: validate sender and platform
setWindowButtonVisibility->>ElectronWindow: set native button visibility
Suggested reviewers: Merge Risk: ⚪ Minimal · up to The desktop IPC and sidebar integration have no verified merge-blocking issue. 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
Comment |
|
Superseded by #11685 (merged) — compact sidebar was reverted, so this change no longer applies. |
macOS window buttons spill past the compact sidebar when opening Settings. Compact mode now replaces them with the sidebar toggle inside the sidebar. Expanding restores the native buttons and their titlebar spacing, on both chat and Settings.
The desktop bridge method is optional for older shells. Browser, Windows/Linux desktop, and mobile layouts keep their existing controls. The toggle keeps its contrasting color over sidebar artwork.
Validation: 10 focused desktop IPC tests pass; web, desktop, and contracts typechecks pass; targeted lint passes with one existing set-state-in-effect warning. Tested the real client with an isolated database in Chromium using a simulated macOS bridge: compact/expanded Settings, chat/Settings navigation, keyboard toggling, fullscreen transitions, and a narrow viewport, with both sidebar implementations. Regular browser compact/expanded Settings also passed. Native macOS button rendering still needs a macOS check.
Model: GPT-6. Harness: Codex.
Summary by CodeRabbit
New Features
Bug Fixes