Skip to content

feat: add session_child_toggle key command#238

Open
ariane-emory wants to merge 7 commits intodevfrom
feat/session-child-toggle-key
Open

feat: add session_child_toggle key command#238
ariane-emory wants to merge 7 commits intodevfrom
feat/session-child-toggle-key

Conversation

@ariane-emory
Copy link
Owner

Type of change

  • Bug fix
  • New feature
  • Refactor / code improvement
  • Documentation

What does this PR do?

Add a toggle command to switch between primary and child sessions:

  • Toggles between views, unbound by default
  • When in primary session: goes to first child
  • When in child session: goes to parent

This provides a single key to navigate between session hierarchies instead of needing separate keys for child_first and parent navigation.

Please provide a description of the issue, the changes you made to fix it, and why they work. It is expected that you understand why your changes work and if you do not understand why at least say as much so a maintainer knows how much to value the PR.

If you paste a large clearly AI generated description here your PR may be IGNORED or CLOSED!

ariane-emory and others added 7 commits March 9, 2026 15:37
Add a toggle command to switch between primary and child sessions:
- Ctrl+X+Down (default) toggles between views
- When in primary session: goes to first child
- When in child session: goes to parent

This provides a single key to navigate between session hierarchies instead of
needing separate keys for child_first and parent navigation.
Change default binding from '<leader>down' to 'none' so users must
explicitly configure the key if they want to use this feature.
Add the keyboard handler for session_child_toggle that was missing.
The toggle now properly responds to the configured keybind in tui.json.
Handler is placed before the parentID guard so it works from both
primary and child sessions.
The redundant hook was interfering with the command dialog handler.
The toggle now relies solely on the command dialog system.
Title changes based on current session state:
- In primary session: 'Show child sessions'
- In child session: 'Return to parent session'
The command was marked as hidden, which prevented it from appearing
in the command palette. Now it will be visible with its dynamic title
that changes based on session state.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant