Flash highlight ring draws outside the card and clips in the hunk scroll wrapper #574
Labels
No labels
actions
bug
cli
duplicate
enhancement
fork
forum
git storage
help wanted
insights
invalid
issues
moderation
oidc
ownership transfer
packages
pr/merge protection rules
projects
pull requests
question
releases
sponsorships
tags
webhooks
wiki
wontfix
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
crueber/walhub#574
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Flash highlight ring draws outside the card and clips in the hunk scroll wrapper
What's requested
The flashed-card highlight (the emerald ring drawn when a Comments-index pill jumps to an inline thread/staged card) uses outside-drawn outline geometry inside a clipping scroll container. Move the ring geometry inside the card's own box so it never clips, never widens the scroll extent, and follows the card's rounded corners.
Evidence
web/src/pages/Pull.jsx:693(StagedCard) andPull.jsx:754(ThreadCard):${flashed ? " outline outline-2 outline-emerald-500" : ""}— a plainoutline-2draws 2px OUTSIDE the border box.web/src/pages/Pull.jsx:524: every hunk renders inside<div class="mb-3 overflow-x-auto">. An element box that reaches the wrapper's edge clips the outside-drawn ring on that edge, and becauseoverflow-x: autoimpliesoverflow-y: auto, the outside ring can also contribute to/clip against the wrapper's scroll extent. Long code lines (the common case that makes the wrapper scroll) put the card's right edge at the wrapper edge — exactly where the ring paints.Fix shape
outline-offset: -2px(or an insetbox-shadowring composed in ui.css per F2), so the ring paints inside the card's border box and hugs theroundedcorners.web/src/ui.css:18-21) — that one is fine where it is; this ticket is only about the flash ring on cards living insideoverflow-x-auto.Architecture notes
Acceptance criteria
:focus-visibleoutline is unchanged.Fixed by #578 (merged): flash ring takes inset geometry (outline-offset -2px, Tailwind-only) on both ThreadCard and StagedCard — byte-identical fragment, paints inside the border box, no clip or scroll-extent change in the hunk wrapper; focus-visible untouched. Verified: 1417 unit tests green (smoke excluded, pre-existing), vite/esbuild green, independent review APPROVE incl. headless-Chromium rendered check (ring visible scrolled-right, scrollWidth unchanged).