refactor(tooltip): use native title for folder picker and sidebar more-options

This commit is contained in:
xintaofei
2026-04-23 11:25:16 +08:00
parent d7113f6ed0
commit cd15813f34
2 changed files with 111 additions and 137 deletions

View File

@@ -23,12 +23,6 @@ import {
CommandItem,
CommandList,
} from "@/components/ui/command"
import {
Tooltip,
TooltipContent,
TooltipProvider,
TooltipTrigger,
} from "@/components/ui/tooltip"
import { cn } from "@/lib/utils"
interface ConversationContextBarProps {
@@ -65,7 +59,6 @@ export const ConversationContextBar = memo(function ConversationContextBar({
branches.get(ownFolder.id) ?? ownFolder.git_branch ?? null
return (
<TooltipProvider>
<div className="flex shrink-0 items-center gap-1.5 px-2 pt-2 text-xs text-muted-foreground">
<FolderPicker
folders={folders}
@@ -111,7 +104,6 @@ export const ConversationContextBar = memo(function ConversationContextBar({
}}
/>
</div>
</TooltipProvider>
)
})
@@ -146,6 +138,7 @@ const FolderPicker = memo(function FolderPicker({
<Button
variant="outline"
size="xs"
title={currentFolderName}
className={cn(
"min-w-0 bg-transparent",
!editable && "cursor-default opacity-60 hover:bg-transparent"
@@ -158,12 +151,7 @@ const FolderPicker = memo(function FolderPicker({
)
if (!editable) {
return (
<Tooltip>
<TooltipTrigger asChild>{trigger}</TooltipTrigger>
<TooltipContent side="bottom">{currentFolderName}</TooltipContent>
</Tooltip>
)
return trigger
}
return (

View File

@@ -24,12 +24,6 @@ import {
DropdownMenuSeparator,
DropdownMenuTrigger,
} from "@/components/ui/dropdown-menu"
import {
Tooltip,
TooltipContent,
TooltipProvider,
TooltipTrigger,
} from "@/components/ui/tooltip"
import { useIsMobile } from "@/hooks/use-mobile"
import {
loadShowCompleted,
@@ -81,7 +75,6 @@ export function Sidebar() {
return (
<aside className="flex h-full min-h-0 flex-col overflow-hidden bg-sidebar text-sidebar-foreground select-none">
<TooltipProvider>
<div className="flex h-10 shrink-0 items-center justify-between gap-2 border-b border-border pl-4 pr-2">
<div className="flex min-w-0 items-baseline gap-[0.375rem]">
<h2 className="truncate text-[0.875rem] font-bold tracking-[-0.00625rem] text-sidebar-foreground">
@@ -114,22 +107,16 @@ export function Sidebar() {
)}
</Button>
<DropdownMenu>
<Tooltip>
<TooltipTrigger asChild>
<DropdownMenuTrigger asChild>
<Button
variant="ghost"
size="icon"
className="h-6 w-6 shrink-0 text-muted-foreground"
title={t("moreOptions")}
>
<EllipsisVertical className="h-3.5 w-3.5" />
</Button>
</DropdownMenuTrigger>
</TooltipTrigger>
<TooltipContent side="bottom">
{t("moreOptions")}
</TooltipContent>
</Tooltip>
<DropdownMenuContent align="end">
<DropdownMenuCheckboxItem
checked={showCompleted}
@@ -154,7 +141,6 @@ export function Sidebar() {
</DropdownMenu>
</div>
</div>
</TooltipProvider>
{/* On mobile, clicking a conversation card auto-closes the Sheet */}
<div