Skip to content

Sidebar tooltip overlaps and blocks hover on the item below #1144

Description

@maartenpeels

Bug

Hovering a sidebar item (Chat, Lanes, Files, PRs, CTO, Graph, History, Automations, Settings, Chats) in the left nav shows a tooltip that renders below the hovered item, landing directly on top of the next item in the list. Because most of these tooltips include a docUrl ("Learn more" link), the tooltip's pointerEvents is set to "auto", so it actually intercepts the mouse — you can't hover/click the next sidebar item until the tooltip dismisses itself.

This makes quickly scanning down the sidebar very frustrating: each item pauses on you until its tooltip decides to go away.

Root cause

  • apps/desktop/src/renderer/components/app/TabNav.tsx wraps every vertical sidebar item in <SmartTooltip side="bottom"> (e.g. lines ~190, ~221, ~338).
  • apps/desktop/src/renderer/components/ui/SmartTooltip.tsx:
    • positions a side="bottom" tooltip at trigger.bottom + GAP (line ~92) — i.e. directly over the next row in a vertical list.
    • sets pointerEvents: content.docUrl ? "auto" : "none" (line ~207). Since TAB_TOOLTIP_BY_PATH sets a docUrl for nearly every tab, these tooltips are pointer-event-capturing, not just visual.

The combination (side="bottom" position + pointerEvents: auto from docUrl) is what turns a cosmetic overlap into an actual hover-blocking bug.

Suggested fix

For a vertical icon-rail sidebar, tooltips should render to the side (right of the icon), not above/below — matching the pattern already used correctly for session hover cards (SessionHoverCard.tsx, anchored at rect.right + gap). Add a side="right" option to SmartTooltip and switch TabNav.tsx's sidebar tooltips to use it, instead of tweaking pointerEvents as a band-aid.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions