Chat header toolbar controls show no hover tooltips
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 23k
- Forks
- 5.9k
- Avg merge
- 11h 14m
- Merged PRs (30d)
- 357
Description
What happened
Chat header toolbar buttons have no hover tooltips (quickGitActions, open-in-editor, action chevrons)
Hovering the action controls in the chat header produces no tooltip. The buttons are icon-only at narrow container widths, so there is nothing on screen that names what they do.
Diagnosis
Five controls in the chat header toolbar carry only an aria-label or an sr-only span. Both are screen-reader affordances; neither renders a hover hint, so sighted mouse users get no label.
| Control | Source | Label it should surface |
|---|---|---|
| Git quick action (Commit / Push / Create PR) | apps/web/src/components/GitActionsControl.tsx (enabled branch) |
quickAction.label |
| Git action chevron | apps/web/src/components/GitActionsControl.tsx:1717 |
Git action options |
| Open-in-editor button | apps/web/src/components/chat/OpenInPicker.tsx:271 |
Open in <editor> |
| Editor chevron | apps/web/src/components/chat/OpenInPicker.tsx:306 |
Choose editor |
| Script actions chevron | apps/web/src/components/ProjectScriptsControl.tsx:189 |
Script actions |
Line numbers are from 50ff4c37, the commit the affected nightly build was cut from. They are unchanged on main at 87a12b53.
This reads as an oversight rather than a deliberate choice, for two reasons:
ProjectScriptsControlalready wraps its primary script button and its "Add action" button inTooltip. The chevron sitting directly between them was missed.GitActionsControlalready importsTooltip(line 81) and uses it elsewhere in the same file.OpenInPickerdoes not import it at all.
One adjacent case is already correct and should stay as it is: when the git quick action is disabled, it renders a Popover with openOnHover that explains quickActionDisabledReason. Only the enabled path is bare.
Note for whoever fixes this: wrapping these in TooltipTrigger render={<Button/>} replaces the button's data-slot attribute, which is what the themed toolbar styling keys on (apps/web/src/index.css:1285-1287 and :1321-1323). Those rules already accept [data-toolbar-control] as an alternate hook, and upstream ProjectScriptsControl already uses it for exactly this reason. Adding data-toolbar-control="" to each wrapped button keeps the themed background, border and foreground intact.
Steps to reproduce
- Open a thread in a workspace that has a git repo and at least one project script.
- Widen the chat header enough that the git actions, open-in-editor and script controls are all visible.
- Hover the git quick action button, its chevron, the open-in-editor button, its chevron, and the script actions chevron.
Expected: each shows a tooltip naming the action, the way the project scripts primary button and "Add action" button already do.
Actual: no tooltip appears on any of the five. Hovering the project scripts primary button right next to them does show one, which makes the gap visible side by side.
Narrowing the header below the @3xl/header-actions breakpoint makes it worse: the text labels collapse to sr-only and the controls become icon-only with no hover affordance at all.
Version
0.0.41-nightly.20260915.1752 (desktop app, built from 50ff4c37) — also reproduced on main at 87a12b53
Environment
Linux x64, kernel 6.17.0-1025-oem, Node v22.21.0, T3 Code Nightly desktop app (.deb, t3code 0.0.41~nightly.20260915.1752), Wayland session
Related issues
#11787 (open) fixes the same class of gap for the composer's environment and workspace controls, but touches only BranchToolbar*.tsx — no file overlap with the chat header, so this is a sibling gap rather than a duplicate. A search of open and closed issues for tooltip, hover and chat-header terms turned up nothing covering these five controls.
Fix applied or workaround
Nothing was changed on the machine; this is a code-level gap, not a broken install. No workaround exists from the UI — the labels are reachable only via a screen reader or by widening the header enough for the text labels to un-collapse, which still leaves the three chevrons unlabeled at every width.
The reporter has a local fix ready on branch t3code/add-action-buttons-hover-tooltips and can open a PR if that is welcome.
Filed by
claude (Opus 5, 1M context) via t3 triage
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Read the existing Tooltip usage in apps/web/src/components/ProjectScriptsControl.tsx, then inspect the five controls in GitActionsControl.tsx, chat/OpenInPicker.tsx, and ProjectScriptsControl.tsx. Preserve the toolbar styling hooks described in apps/web/src/index.css and verify all five controls show their specified labels when hovered at wide and narrow header widths.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- accessibility, frontend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 78/100