Skip to content

fix(log-viewer): keep a find match's panel up, and make a highlighted frame read on any theme - #1059

Closed
lukecotter wants to merge 2 commits into
refactor-inspector-tab-controllerfrom
bug-find-tooltip
Closed

lukecotter wants to merge 2 commits into
refactor-inspector-tab-controllerfrom
bug-find-tooltip

Conversation

@lukecotter

@lukecotter lukecotter commented Sep 17, 2026

Copy link
Copy Markdown
Collaborator

📝 PR Overview

Stepping through find results on the Timeline often showed no frame details panel, and the frame you were on could be lost among the frames around it on some themes.

Stacked on #1058, which is where both faults live — merge that one first.

🛠️ Changes made

  • The panel stays with the match. Stepping to a match centres the view, and the render that moves the frames asks the hit test again at the pointer. That answer took the match's own panel away, so the panel appeared only when the pointer happened to rest off the chart — hence "sometimes". The chart now reports what changed the hover (the pointer, or the frames moving under it), and a panel opened by find or by the keyboard is held until the pointer moves or something else closes it.
  • A highlighted frame reads on any theme. The highlight takes its colour from the host's editor.findMatchBackground — a grey in several themes — and a search dims the frames around a match towards grey too. Every highlight now carries a halo in the tone that colour is not. A frame too brief to carry a border got none at all; it is now bordered at the width the wash widened it to. Both hairlines sit inside the frame's own row, so a highlight no longer reaches into the rows above and below.

🧩 Type of change (check all applicable)

  • 🐛 Bug fix - something not working as expected

🔗 Related Issues

None — both faults were found while testing the branch below.

✅ Tests added?

  • 👍 yes

find-tooltip-hold.test.ts covers the hold, the handback and the three ways the panel closes; HighlightHalo.test.ts covers the halo tone either way and the bordered thin frame; HoverRehit.test.ts covers the cause the chart reports.

📚 Docs updated?

  • 🙅 not needed

Neither fault reached a release: the hover re-hit they both build on is unreleased.

Stepping to a match centres the view, and the render that moves the
frames asks the hit test again at the pointer. That answer took the
match's own panel away, so the panel showed only when the pointer
happened to rest off the chart.

The chart now reports what changed the hover, and a panel opened by find
or by the keyboard is held until the pointer moves or something else
closes it.
The highlight takes its colour from the host's `editor.findMatchBackground`,
a grey in several themes, and a search dims the frames around a match
towards grey too, so the match could be lost among them. A frame too
brief to carry a border got no border at all, leaving a hairline.

Every highlight now carries a halo in the tone its colour is not, and a
frame too thin to border is bordered at the width the wash widened it
to. Both hairlines sit inside the frame's own row.
@lukecotter

Copy link
Copy Markdown
Collaborator Author

Superseded by #1061, which puts the same two commits straight onto main.

@lukecotter lukecotter closed this Sep 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant