From fd947a1fd8f89394781e352e9610b10f5d770db9 Mon Sep 17 00:00:00 2001 From: Xubin Ren <52506698+Re-bin@users.noreply.github.com> Date: Wed, 10 Jun 2026 04:10:24 +0800 Subject: [PATCH] fix(webui): normalize action tooltips --- webui/src/components/MessageBubble.tsx | 104 ++++++++++-------- .../src/components/thread/ThreadComposer.tsx | 1 - 2 files changed, 60 insertions(+), 45 deletions(-) diff --git a/webui/src/components/MessageBubble.tsx b/webui/src/components/MessageBubble.tsx index 60e94a87b..4ef4713f1 100644 --- a/webui/src/components/MessageBubble.tsx +++ b/webui/src/components/MessageBubble.tsx @@ -22,6 +22,12 @@ import { AttachmentTile } from "@/components/AttachmentTile"; import { CliAppMentionText } from "@/components/CliAppMentionText"; import { ImageLightbox } from "@/components/ImageLightbox"; import { MarkdownText, preloadMarkdownText } from "@/components/MarkdownText"; +import { + Tooltip, + TooltipContent, + TooltipProvider, + TooltipTrigger, +} from "@/components/ui/tooltip"; import { cn } from "@/lib/utils"; import { copyTextToClipboard } from "@/lib/clipboard"; import { formatTurnLatency } from "@/lib/format"; @@ -187,50 +193,60 @@ export function MessageBubble({ {media.length > 0 ? : null} {showAssistantFooterRow ? ( -
- {showCopyButton ? ( - - ) : null} - {showForkButton ? ( - - ) : null} - {showLatencyFooter ? ( - - {formatTurnLatency(latencyMs)} - - ) : null} -
+ +
+ {showCopyButton ? ( + + + + + {copyReplyLabel} + + ) : null} + {showForkButton ? ( + + + + + {forkLabel} + + ) : null} + {showLatencyFooter ? ( + + {formatTurnLatency(latencyMs)} + + ) : null} +
+
) : null} )} diff --git a/webui/src/components/thread/ThreadComposer.tsx b/webui/src/components/thread/ThreadComposer.tsx index 585a88c4e..1ac6e398a 100644 --- a/webui/src/components/thread/ThreadComposer.tsx +++ b/webui/src/components/thread/ThreadComposer.tsx @@ -1768,7 +1768,6 @@ export function ThreadComposer({ disabled={voiceRecorder.buttonDisabled} aria-label={voiceButtonLabel} aria-keyshortcuts={VOICE_SHORTCUT_ARIA} - title={voiceButtonTooltip} onPointerDown={voiceRecorder.beginPress} onPointerUp={voiceRecorder.endPress} onPointerCancel={voiceRecorder.endPress}