Skip to content

Comments

feat: bulk add workspaces via multi-select picker#385

Merged
Dimillian merged 7 commits intoDimillian:mainfrom
amanthanvi:feat/383-bulk-add-workspaces
Feb 10, 2026
Merged

feat: bulk add workspaces via multi-select picker#385
Dimillian merged 7 commits intoDimillian:mainfrom
amanthanvi:feat/383-bulk-add-workspaces

Conversation

@amanthanvi
Copy link
Contributor

Implements bulk workspace add so projects can be added in one operation.

Behavior

  • "Add Workspace(s)…" now supports selecting multiple folders in the directory picker.
  • Adds selections sequentially, activates only the first newly-added workspace, and avoids focus bouncing.
  • Skips already-added paths and non-directories; continues on per-path failures.
  • Shows a single summary dialog only when something is skipped or fails.
  • Drag/drop of multiple paths routes through the same bulk-add pipeline.

Code

  • src/services/tauri.ts: add pickWorkspacePaths() wrapper for multi-select directory picking (+ tests).
  • src/features/workspaces/hooks/useWorkspaces.ts: add addWorkspacesFromPaths() and update addWorkspace() to use multi-select + summary behavior (+ tests).
  • src/features/app/hooks/useWorkspaceActions.ts: add bulk drop handler wiring.
  • src/App.tsx: drop handler now calls bulk-add once (no per-path activation).
  • src-tauri/src/menu.rs, src/features/home/components/Home.tsx, src/features/app/components/SidebarHeader.tsx: update labels to reflect multi-select.

Validation

  • npm ci
  • npm run lint
  • npm run test
  • npm run typecheck
  • cd src-tauri && cargo test

Closes #383.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds a bulk “add workspaces” flow so users can select (or drop) multiple folders and have them added sequentially with stable activation and a single summary dialog for skips/failures.

Changes:

  • Added a multi-select directory picker wrapper (pickWorkspacePaths) with tests.
  • Implemented a centralized bulk-add pipeline in useWorkspaces and updated “Add Workspace…” to use it (with summary dialog + activation of only the first added workspace).
  • Routed multi-path drag/drop through the same bulk-add pipeline and updated UI/menu labels to reflect multi-select.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated no comments.

Show a summary per file
File Description
src/services/tauri.ts Adds pickWorkspacePaths() wrapper for multi-select directory picking.
src/services/tauri.test.ts Adds tests covering cancel/single/multi return shapes for pickWorkspacePaths().
src/features/workspaces/hooks/useWorkspaces.ts Adds addWorkspacesFromPaths() bulk pipeline and updates addWorkspace() to use multi-select picker.
src/features/workspaces/hooks/useWorkspaces.test.tsx Adds bulk-add tests (activation + summary dialog behavior).
src/features/app/hooks/useWorkspaceActions.ts Wires in a bulk handler (handleAddWorkspacesFromPaths) for callers (e.g., drag/drop).
src/features/app/hooks/useWorkspaceActions.test.tsx Updates hook construction to include the new bulk-add param.
src/App.tsx Updates drop handling to invoke bulk-add once (avoids per-path activation/focus bouncing).
src/features/home/components/Home.tsx Updates button label to “Add Workspaces”.
src/features/app/components/SidebarHeader.tsx Updates aria-label to “Add workspaces”.
src-tauri/src/menu.rs Updates menu label to “Add Workspaces...”.

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

@amanthanvi
Copy link
Contributor Author

@codex review

@chatgpt-codex-connector
Copy link

Codex Review: Didn't find any major issues. 👍

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@Dimillian
Copy link
Owner

@codex review

@Dimillian Dimillian changed the title Bulk add workspaces via multi-select picker feat: bulk add workspaces via multi-select picker Feb 10, 2026
@chatgpt-codex-connector
Copy link

Codex Review: Didn't find any major issues. More of your lovely PRs please.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@Dimillian Dimillian merged commit 0179f5b into Dimillian:main Feb 10, 2026
6 checks passed
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.

Bulk add workspaces (multi-select folder picker)

2 participants