Skip to content

feat(desktop): add dropdown menu to Add repository button#925

Merged
saddlepaddle merged 1 commit intomainfrom
add-repo-options
Jan 23, 2026
Merged

feat(desktop): add dropdown menu to Add repository button#925
saddlepaddle merged 1 commit intomainfrom
add-repo-options

Conversation

@saddlepaddle
Copy link
Copy Markdown
Collaborator

@saddlepaddle saddlepaddle commented Jan 23, 2026

Summary

  • Convert the sidebar "Add repository" button to a dropdown menu with two options
  • Open project: opens a folder picker to select an existing local repo
  • Clone repo: opens the clone dialog to clone from a URL
  • Dropdown opens upward with folder-plus icon

Test plan

  • Click "Add repository" button in sidebar (expanded and collapsed states)
  • Verify dropdown appears above the button
  • Click "Open project" and verify folder picker opens
  • Click "Clone repo" and verify clone dialog opens
  • Test both options complete their flows successfully

Summary by CodeRabbit

New Features

  • Redesigned the workspace sidebar footer with a dropdown-based interface featuring quick actions to open existing projects and clone repositories
  • Added dedicated repository cloning capability with dialog support and error handling to streamline repository management workflows
  • Enhanced sidebar interactions with loading state management for better user feedback during operations

✏️ Tip: You can customize this high-level summary in your review settings.

…/clone options

Convert the sidebar's "Add repository" button to a dropdown menu with two options:
- Open project: opens a folder picker to select an existing local repo
- Clone repo: opens the clone dialog to clone from a URL

The dropdown opens upward and uses the folder-plus icon.
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Jan 23, 2026

📝 Walkthrough

Walkthrough

The WorkspaceSidebarFooter component is refactored to use dropdown-based UI for repository actions in both collapsed and expanded states. A new CloneRepoDialog component is integrated with corresponding state management, replacing the previous single-action button with a multi-action dropdown containing "Open project" and "Clone repo" options.

Changes

Cohort / File(s) Summary
WorkspaceSidebarFooter UI Restructuring
apps/desktop/src/renderer/screens/main/components/WorkspaceSidebar/WorkspaceSidebarFooter.tsx
Converts single-action button to dropdown menu with two actions: "Open project" and "Clone repo". Adds CloneRepoDialog component integration with new state management (isCloneDialogOpen, handleCloneError). Introduces isLoading derived state from pending operations. Adds new imports for dropdown components (DropdownMenu, DropdownMenuContent, DropdownMenuTrigger, DropdownMenuItem) and icons (LuFolderGit, LuFolderOpen, LuFolderPlus). Renames handleOpenNewProject to handleOpenProject. Updates disabled behavior logic and adjusts rendering for both collapsed and expanded sidebar modes.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Poem

🐰 A dropdown blooms where once stood single,
Clone and open dance in dropdown mingle,
Dialog appears when repos need their place,
Loading states keep the UI's pace,
The footer's heart beats dropdown-bright! ✨

🚥 Pre-merge checks | ✅ 2 | ❌ 1
❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main change: converting the Add repository button to a dropdown menu.
Description check ✅ Passed The description provides a clear summary and test plan but lacks several required template sections like Related Issues and Type of Change.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@saddlepaddle saddlepaddle merged commit 36436c9 into main Jan 23, 2026
5 checks passed
@github-actions
Copy link
Copy Markdown
Contributor

🧹 Preview Cleanup Complete

The following preview resources have been cleaned up:

  • ✅ Neon database branch
  • ⚠️ Electric Fly.io app

Thank you for your contribution! 🎉

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.

1 participant