Add directional conversation focus shortcuts in workspace mode (#59287)

## What changed

- Add configurable `focus_pane_left` and `focus_pane_right` actions, defaulting to `leader left` / `leader h` and `leader right` / `leader l`.
- Move focus to the parent or open side conversation without reopening a hidden pane. Preserve the current interaction when no neighbor is available, and accept fresh typing after a no-op shortcut while suppressing reported key repeats.
- Expose the actions in the keymap picker and configuration schema, and prevent workspace-only pane bindings from claiming keys in classic mode.

## Testing

Add regression coverage for pane navigation, preserved transcript selection and search, fresh typing after a no-op, key capture, and binding conflicts and limits.

GitOrigin-RevId: 7f7629d15cffcd35d1353b36c5c9208dbb1034e8
This commit is contained in:
Felipe Coury
2026-11-04 01:40:12 +00:00
committed by copyberry
parent 0a944f8ce2
commit db3c44414c
24 changed files with 401 additions and 74 deletions
+4
View File
@@ -143,6 +143,10 @@ pub struct TuiGlobalKeymap {
pub focus_sidebar_content: Option<KeybindingsSpec>,
/// Hide the focused sidebar pane.
pub hide_pane: Option<KeybindingsSpec>,
/// Focus the parent conversation.
pub focus_pane_left: Option<KeybindingsSpec>,
/// Focus the open side conversation.
pub focus_pane_right: Option<KeybindingsSpec>,
/// Open the shared agent-session overview.
pub open_agents: Option<KeybindingsSpec>,
/// Open the transcript overlay.