Repository navigation
Add an opt-in compact pane tab bar setting - #17400
teamleaderleo wants to merge 1 commit into
Conversation
Re-lands the compact pane tab bar from #17360 behind app.compactPaneTabBar (Settings > App > Compact Pane Tab Bar), off by default. With it off the pane tab bar keeps the 0.64.25 buttons: New Terminal, New Browser, Split Right, Split Down. A ui.surfaceTabBar.buttons list still wins. The button and menu policy moves from static methods on CompactSurfaceTabBarCluster onto Workspace instance methods. vendor/bonsplit moves forward to bddc73d (bonsplit main, #272 and #273). With no menus or per-pane overrides configured, its tab bar takes the unchanged render and click paths. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
All contributors have signed the CLA ✍️ ✅ |
|
Closing: cancelled. Leo's call is that with only four pane tab bar buttons, hiding them in menus makes no sense, so the compact bar will not come back as an option. main keeps Austin's revert (#17395) and the current vendor/bonsplit pin; nothing here was merged. |
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. Note Currently processing new changes in this PR. This may take a few minutes, please wait... ⚙️ Run configuration
⛔ Files ignored due to path filters (1)
📒 Files selected for processing (21)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Bugbot is paused — on-demand spend limit reachedBugbot uses usage-based billing for this team and has hit its on-demand spend limit. A team admin can raise the spend limit in the Cursor dashboard, or wait for the next billing cycle to continue. |
Dogfood tours of
|
Try it
{ "app": { "compactPaneTabBar": true } }ui.surfaceTabBar.buttonslist first; a configured list overrides the setting.What changes
#17395 reverted the compact pane tab bar (#17360) to restore the 0.64.25 pane tab bar. This PR keeps that default and brings the compact bar back as an opt-in setting for Leo to try out.
app.compactPaneTabBaris off by default. With it off, the pane tab bar shows the 0.64.25 buttons: New Terminal, New Browser, Split Right, Split Down. They keep the same order, icons and click behavior, and there are no per-pane overrides."app": { "compactPaneTabBar": true }in cmux.json. Turning it on brings back the Compact pane tab bar actions by tab kind #17360 cluster:ui.surfaceTabBar.buttonslist in cmux.json still takes precedence either way.Workspaceinstance methods instead of static methods onCompactSurfaceTabBarCluster. The enum keeps only the identifiers, row values, and the pure agent-chat URL matcher.vendor/bonsplitmoves forward from 8bc81c8 (Add wall of love and screenshot to homepage #273) to bddc73d, bonsplit main. bddc73d contains both Add wall of love and screenshot to homepage #273 and Follow up PR 242: refresh browser under-page background on theme updates #272 (e52609f, the menu and Option-click support the compact bar needs). It is a fast-forward of both, not a rollback.menuBehavior, noalternateAction, and no per-pane override, buttons render and click through the sameButton/ mouse-down branches as before.appearance.splitButtonsis used as before.ui.surfaceTabBar.buttons(or the oldersurfaceTabBarButtons) is set in any cmux.json, the pane tab bar shows exactly that list, whether the setting is on or off. To try the compact bar, remove that list first. The seven-icon bar that prompted Compact pane tab bar actions by tab kind #17360 came from such a list in a terminal-kit cmux.json, which terminal-kit Release v0.46.0 #75 has since removed.BonsplitTabDragUITests) still targetspaneTabBarControl.newTerminal, since the setting is off there.Tests
cmuxTests/CompactSurfaceTabBarClusterTests.swift:CompactPaneTabBarSettingTests:CompactSurfaceTabBarClusterTests: the Compact pane tab bar actions by tab kind #17360 policy tests, now againstWorkspace. Standard panes show+, split and...; agent chat panes show+and....Settings plumbing: catalog key, cmux.json path and parser mapping, settings template,
web/data/cmux.schema.jsonplus the regenerated embedded schema, theall-keys.mdrow, the Settings row and curated search entry, and the row-anchor test path.Checked locally with the Python checks (
test_cmux_schema_parity,test_cmux_settings_supported_paths,test_cmux_config_schema_embed,test_settings_configuration_review_paths,test_localization_defaults,test_localizable_xcstrings_structure,test_localization_catalog) andsync-test-wiring --check. The Swift tests run in CI.Localization audit: the two new strings (
settings.app.compactPaneTabBarand.subtitle) are translated in all 9 app locales. The cluster strings from #17360 were never removed from the catalog. The schema description has nodescriptionKey, matching other app booleans such asequalizeSplitsOnCreate.Screenshots
Dark theme, from the fleet build of this head on a capture mini: off and on for a terminal pane, and off and on for an agent chat pane (agent chat flag on).
Capturing from the fleet build; stills will be added here.
🤖 Generated with Claude Code