Forked fromgitcafe/t3code
555 commits behind
* feat(web): add shift-click multi-select for sidebar threads Add support for selecting multiple threads in the sidebar via Cmd/Ctrl+Click (toggle) and Shift+Click (range select), with bulk context menu actions for Delete and Mark Unread. - New threadSelectionStore (Zustand) for ephemeral selection state with anchor-based range selection and no-op guards - Platform-aware modifier detection (Cmd on Mac, Ctrl elsewhere) matching existing isMacPlatform pattern in terminal-links - Extracted deleteThread helper from handleThreadContextMenu for reuse by bulk delete, with deletedThreadIds set for correct fallback navigation during batch operations - Selected threads share the active thread highlight style - Escape key clears selection; plain click clears and navigates - Right-click on selected thread shows bulk menu; right-click on unselected thread clears selection and shows single-thread menu - 22 unit tests covering toggle, range select, clear, remove, and edge cases (cross-project fallback, anchor stability) * fix(web): filter deleted threads from worktree orphan check during bulk delete When bulk-deleting threads that share a worktree, the stale threads closure caused getOrphanedWorktreePathForThread to see the other threads-being-deleted as still alive, suppressing the orphaned worktree cleanup prompt. Filter out deletedThreadIds (keeping the current thread) so the check correctly identifies worktrees that will have no surviving references. * fix(web): fix shift-click range selection, distinct selection styling, and deselect on click away * Preserve thread multi-select on safe sidebar control clicks - avoid clearing selection on mousedown for thread items and marked safe controls - centralize the selection-safe selector and add logic tests for clear vs preserve behavior - simplify thread selection store typing by merging state/actions interface --------- Co-authored-by: Julius Marminge <julius0216@outlook.com>
5 files changedLine totals unavailable