Allow the Tab Switcher to initialize going backwards #9996

Open
opened 2026-01-31 02:09:39 +00:00 by claunia · 0 comments
Owner

Originally created by @leonMSFT on GitHub (Aug 4, 2020).

Originally assigned to: @leonMSFT on GitHub.

#6732 implements the Tab Switcher in such a way that when in anchor mode, the ATS will always open up with the currently focusedTab + 1 selected. There's currently no way for a user to say if they wanted the keybinding to open the ATS with the currently focusedTab - 1 selected.

So, if the user bound ctrl+tab to tabSwitcher, the user would probably want to switch to a previous tab instead by pressing ctrl+shift+tab. Assuming both keychords are bound to tabSwitcher, they'll both open the ATS with focusedTab + 1 selected.

The ATS PR was going to implement it in a way where we'd add an initialDirection argument to let us know which direction the ats would open in, but it rightfully warranted some more discussion, So, to unblock #6732, I've pulled this out into its own follow up issue here.

Another option in the interest of avoiding passing another argument could be to detect if shift is held down at the AppActionHandlers.cpp level and determine + pass the initial delta to the tab switcher for initialization?

Originally created by @leonMSFT on GitHub (Aug 4, 2020). Originally assigned to: @leonMSFT on GitHub. #6732 implements the Tab Switcher in such a way that when in `anchor` mode, the ATS will _always_ open up with the currently focusedTab + 1 selected. There's currently no way for a user to say if they wanted the keybinding to open the ATS with the currently focusedTab - 1 selected. So, if the user bound <kbd>ctrl+tab</kbd> to `tabSwitcher`, the user would probably want to switch to a previous tab instead by pressing <kbd>ctrl+shift+tab</kbd>. Assuming both keychords are bound to `tabSwitcher`, they'll both open the ATS with focusedTab + 1 selected. The ATS PR was going to implement it in a way where we'd add an `initialDirection` argument to let us know which direction the ats would open in, but it rightfully warranted some more discussion, So, to unblock #6732, I've pulled this out into its own follow up issue here. Another option in the interest of avoiding passing another argument could be to detect if shift is held down at the `AppActionHandlers.cpp` level and determine + pass the initial delta to the tab switcher for initialization?
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#9996