Skip to content

feat: add select multiple rows with shift - #224

Merged
letstri merged 10 commits into
mainfrom
feat/shift-row-selection
Jan 27, 2026
Merged

feat: add select multiple rows with shift#224
letstri merged 10 commits into
mainfrom
feat/shift-row-selection

Conversation

@geekyharsh05

Copy link
Copy Markdown
Contributor

Closes #130

@railway-app

railway-app Bot commented Dec 6, 2025

Copy link
Copy Markdown

This PR was not deployed automatically as @geekyharsh05 does not have access to the Railway project.

In order to get automatic PR deploys, please add @geekyharsh05 to your workspace on Railway.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds shift-click and keyboard navigation functionality to enable multi-row selection in database tables. Users can now select ranges of rows using Shift+Click or Shift+Arrow keys, improving the table interaction experience.

Key Changes:

  • Introduced SelectionState and LastClickedIndex contexts to track selection state across components
  • Implemented shift-click handler in checkboxes to select row ranges
  • Added keyboard navigation (Shift+ArrowUp/Down) for expanding/shrinking selection ranges

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 7 comments.

File Description
apps/desktop/src/routes/(protected)/_protected/database/$id/table/-store.ts Adds new context definitions and types for tracking selection state and last clicked index
apps/desktop/src/routes/(protected)/_protected/database/$id/table/index.tsx Initializes refs and provides selection contexts to child components
apps/desktop/src/routes/(protected)/_protected/database/$id/table/-components/table.tsx Implements keyboard event handler for Shift+Arrow navigation and makes table focusable
apps/desktop/src/routes/(protected)/_protected/database/$id/table/-components/table-selection.tsx Updates checkbox click handler to support shift-click range selection

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread apps/desktop/src/routes/_protected/database/$id/table/-store.ts Outdated
Comment thread apps/desktop/src/routes/_protected/database/$id/table/-components/table/table.tsx Outdated

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks Good

@letstri
letstri merged commit 1b3ad0b into main Jan 27, 2026
2 checks passed
@letstri
letstri deleted the feat/shift-row-selection branch January 27, 2026 22:45
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.

Select multiple rows with shift

4 participants