Add per-tab remote indicator and Disconnect SSH tab context action
LA
4mo ago+119+119+012345678901234567890123456789-8-8-0123456789
Adds the bonsplit half of cmux pane-scoped SSH connections (cmux ssh --pane):
Tab/TabItemgainshowsRemoteIndicator, rendered as a small network glyph after the tab title with accessibility text (localized en/ja).BonsplitController.updateTab/createTab/splitPanecarry the new field.- New
TabContextAction.disconnectRemotecontext menu item ("Disconnect SSH", localized en/ja), shown only when the host'stabContextDisconnectRemoteAvailabilityProviderreturns true.
Includes unit tests for the indicator field plumbing and context action availability.
Consumed by the cmux PR for pane-scoped SSH connections (link added there).
Need help on this PR? Tag /codesmith with what you need. Autofix is disabled.
Summary by cubic
Adds a per-tab remote connection indicator and a “Disconnect SSH” context action to support pane-scoped SSH sessions. This clarifies which tabs are remote and gives users a quick way to disconnect when the host allows it.
-
New Features
- New showsRemoteIndicator on tabs; renders a small network glyph after the title with accessible text (en/ja).
BonsplitController.createTab,updateTab, andsplitPaneaccept and propagate showsRemoteIndicator.- New TabContextAction.disconnectRemote; visibility controlled by host via tabContextDisconnectRemoteAvailabilityProvider.
- Unit tests for indicator plumbing and context menu availability.
-
Migration
- Pass showsRemoteIndicator when creating or updating tabs that are connected remotely.
- Provide tabContextDisconnectRemoteAvailabilityProvider and handle the .disconnectRemote action to enable the menu item.
Summary by CodeRabbit
- New Features
- Tabs can now display a remote SSH connection indicator icon when connected.
- Tab context menu includes a new "Disconnect SSH" action when applicable.
- Accessibility support added for remote connection status labels.
- Japanese localization added for SSH-related menu items and labels.