diff --git a/src/renderer/components/layout/RepositorySidebar.tsx b/src/renderer/components/layout/RepositorySidebar.tsx index 96957053..de287543 100644 --- a/src/renderer/components/layout/RepositorySidebar.tsx +++ b/src/renderer/components/layout/RepositorySidebar.tsx @@ -58,6 +58,7 @@ import { useWorktreeActivityStore } from '@/stores/worktreeActivity'; import { RunningProjectsPopover } from './RunningProjectsPopover'; interface Repository { + id: string; name: string; path: string; groupId?: string; @@ -82,7 +83,7 @@ interface RepositorySidebarProps { onCreateGroup: (name: string, emoji: string, color: string) => RepositoryGroup; onUpdateGroup: (groupId: string, name: string, emoji: string, color: string) => void; onDeleteGroup: (groupId: string) => void; - onMoveToGroup?: (repoPath: string, groupId: string | null) => void; + onMoveToGroup?: (repoId: string, groupId: string | null) => void; onSwitchTab?: (tab: TabId) => void; onSwitchWorktreeByPath?: (path: string) => Promise | void; /** Whether a file is being dragged over the sidebar (from App.tsx global handler) */ @@ -705,7 +706,7 @@ export function RepositorySidebar({ currentGroupId={menuRepo?.groupId} onMove={(groupId) => { if (menuRepo) { - onMoveToGroup(menuRepo.path, groupId); + onMoveToGroup(menuRepo.id, groupId); } }} onClose={() => setMenuOpen(false)} diff --git a/src/renderer/components/layout/TreeSidebar.tsx b/src/renderer/components/layout/TreeSidebar.tsx index 08a822da..a8365e19 100644 --- a/src/renderer/components/layout/TreeSidebar.tsx +++ b/src/renderer/components/layout/TreeSidebar.tsx @@ -42,6 +42,7 @@ import { getStoredGroupCollapsedState, getStoredRepositorySettings, normalizePath, + normalizeWorkspacePathKey, type RepositorySettings, saveGroupCollapsedState, saveRepositorySettings, @@ -626,7 +627,8 @@ export function TreeSidebar({ // Filter hidden repositories using cached settings filtered = filtered.filter((repo) => { - const settings = repoSettingsMap[normalizePath(repo.path)] || DEFAULT_REPOSITORY_SETTINGS; + const settings = + repoSettingsMap[normalizeWorkspacePathKey(repo.path)] || DEFAULT_REPOSITORY_SETTINGS; return !settings.hidden; }); @@ -676,7 +678,8 @@ export function TreeSidebar({ // Use the same hidden filter as filteredRepos const visibleRepos = repositories.filter((repo) => { - const settings = repoSettingsMap[normalizePath(repo.path)] || DEFAULT_REPOSITORY_SETTINGS; + const settings = + repoSettingsMap[normalizeWorkspacePathKey(repo.path)] || DEFAULT_REPOSITORY_SETTINGS; return !settings.hidden; });