[PR #7420] Display URI tooltip, render dashed/solid underline for links #26928

Closed
opened 2026-01-31 09:18:56 +00:00 by claunia · 0 comments
Owner

Original Pull Request: https://github.com/microsoft/terminal/pull/7420

State: closed
Merged: Yes


Summary of the Pull Request

  • Render hyperlinks with a dashed underline
  • Render hovered hyperlinks with a solid underline
  • Show URI tooltip on hover

References

#5001

PR Checklist

  • Closes #xxx
  • I work here
  • Tests added/passed
  • I've discussed this with core contributors already.

Detailed Description of the Pull Request / Additional comments

TermControl now has a canvas that contains a tiny border to which a tooltip is attached. When we hover over hyperlinked text, we move the border to the mouse location and update the tooltip content with the URI.

Introduced a new underline type (HyperlinkUnderline), supports rendering for it, and uses it to render hyperlinks. HyperlinkUnderline is usually a dashed underline, but when a link is hovered, all text with the same hyperlink ID is rendered with a solid underline.

Validation Steps Performed

tooltip

**Original Pull Request:** https://github.com/microsoft/terminal/pull/7420 **State:** closed **Merged:** Yes --- <!-- Enter a brief description/summary of your PR here. What does it fix/what does it change/how was it tested (even manually, if necessary)? --> ## Summary of the Pull Request - Render hyperlinks with a dashed underline - Render hovered hyperlinks with a solid underline - Show URI tooltip on hover <!-- Other than the issue solved, is this relevant to any other issues/existing PRs? --> ## References #5001 <!-- Please review the items on the PR checklist before submitting--> ## PR Checklist * [ ] Closes #xxx * [x] I work here * [ ] Tests added/passed * [x] I've discussed this with core contributors already. <!-- Provide a more detailed description of the PR, other things fixed or any additional comments/features here --> ## Detailed Description of the Pull Request / Additional comments TermControl now has a canvas that contains a tiny border to which a tooltip is attached. When we hover over hyperlinked text, we move the border to the mouse location and update the tooltip content with the URI. Introduced a new underline type (HyperlinkUnderline), supports rendering for it, and uses it to render hyperlinks. HyperlinkUnderline is usually a dashed underline, but when a link is hovered, all text with the same hyperlink ID is rendered with a solid underline. <!-- Describe how you validated the behavior. Add automated tests wherever possible, but list manual validation steps taken as well --> ## Validation Steps Performed ![tooltip](https://user-images.githubusercontent.com/26824113/92273256-0779ba80-eeb9-11ea-8319-fcdfbdbce0f2.gif)
claunia added the pull-request label 2026-01-31 09:18:56 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#26928