stablyai / stablyai/orca

[Feature]: Support Shift/Cmd/Ctrl multi-select in the tab strip

Open
#7,397 0 comments 0 reactions 1 assignee Claimed by @brennanb2025 View on GitHub
enhancement
Dominant language
TypeScript
Stars
71.3k
Forks
4.7k
Avg merge
17h 8m
Merged PRs (30d)
475

Description

## Problem or use case

Orca's top tab strip currently supports single-tab activation and drag/reorder behavior, but it does not appear to support multi-selecting tabs with desktop-standard modifiers:

- Shift-click to select a contiguous range of tabs
- Cmd-click on macOS / Ctrl-click on Linux and Windows to toggle individual tabs

This makes bulk tab workflows harder, such as closing, moving, pinning, or managing several terminal/editor/browser tabs together.

Local code review found that terminal, editor, and browser tabs all route pointer activation through `useTabStripPointerActivation`, which only distinguishes click vs drag by pointer button and movement distance. It does not inspect `shiftKey`, `metaKey`, or `ctrlKey`. I also did not find existing selected-tab collection state in the renderer store.

## Proposed solution

Add tab-strip multi-selection behavior that matches platform conventions:

- Shift-click selects a range using the last anchor tab.
- Cmd-click on macOS toggles an individual tab.
- Ctrl-click on Linux/Windows toggles an individual tab.
- Plain click preserves the current single-active-tab behavior.
- Drag/reorder/split behavior remains intact and does not accidentally activate or modify selection mid-drag.
- Any UI treatment follows `docs/STYLEGUIDE.md` and existing tab strip tokens.

Implementation should stay cross-platform and avoid hardcoding macOS-only `metaKey` semantics. It should also keep remote/SSH worktrees in mind: selection should operate on renderer tab identity and not assume local-only process state.

## Alternatives or additional context

A narrower first step could add only selection state and tests, then wire bulk actions in follow-up issues. Useful coverage would include modifier-click behavior across macOS vs non-mac platforms, mixed terminal/editor/browser tabs, and regression tests around tab drag/reorder activation.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.