diff --git a/apps/desktop/src/renderer/components/NewWorkspaceModal/NewWorkspaceModal.tsx b/apps/desktop/src/renderer/components/NewWorkspaceModal/NewWorkspaceModal.tsx index d072a363c11..ddf0d93bee6 100644 --- a/apps/desktop/src/renderer/components/NewWorkspaceModal/NewWorkspaceModal.tsx +++ b/apps/desktop/src/renderer/components/NewWorkspaceModal/NewWorkspaceModal.tsx @@ -23,6 +23,7 @@ import { SelectValue, } from "@superset/ui/select"; import { toast } from "@superset/ui/sonner"; +import { Tooltip, TooltipContent, TooltipTrigger } from "@superset/ui/tooltip"; import { useEffect, useMemo, useState } from "react"; import { GoGitBranch } from "react-icons/go"; import { HiCheck, HiChevronUpDown, HiPlus } from "react-icons/hi2"; @@ -101,12 +102,8 @@ export function NewWorkspaceModal() { } }, [isOpen, currentProjectId, selectedProjectId]); - // Auto-select default branch when branches load - useEffect(() => { - if (branchData?.defaultBranch && !baseBranch) { - setBaseBranch(branchData.defaultBranch); - } - }, [branchData?.defaultBranch, baseBranch]); + // Effective base branch - use explicit selection or fall back to default + const effectiveBaseBranch = baseBranch ?? branchData?.defaultBranch ?? null; // Reset base branch when project changes // biome-ignore lint/correctness/useExhaustiveDependencies: intentionally reset when project changes @@ -152,7 +149,7 @@ export function NewWorkspaceModal() { projectId: selectedProjectId, name: workspaceName, branchName: customBranchName, - baseBranch: baseBranch || undefined, + baseBranch: effectiveBaseBranch || undefined, }), { loading: "Creating workspace...", @@ -221,15 +218,22 @@ export function NewWorkspaceModal() { ))} - + + + + + + Add new project + + @@ -329,9 +333,10 @@ export function NewWorkspaceModal() { - {baseBranch || "Select branch..."} + {effectiveBaseBranch || "Select branch..."} - {baseBranch === branchData?.defaultBranch && ( + {effectiveBaseBranch === + branchData?.defaultBranch && ( default @@ -383,7 +388,7 @@ export function NewWorkspaceModal() { )} )} - {baseBranch === branch.name && ( + {effectiveBaseBranch === branch.name && ( )}