aboutsummaryrefslogtreecommitdiff
path: root/dotfiles/dwm/.local/bin/screenshotmenu
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-07-23 11:00:01 -0500
committerCraig Jennings <c@cjennings.net>2026-07-23 11:00:01 -0500
commitafd2ff1459387af5dcd793071da5860fec83a1e8 (patch)
tree6ae4c271aeebd1af22bdf951d25502fce59d5bd9 /dotfiles/dwm/.local/bin/screenshotmenu
parent5fedecbd7a25e6357ccfa1b9fa587d36752492a4 (diff)
downloadarchsetup-main.tar.gz
archsetup-main.zip
fix(probe): scroll instantly so the drag checks stop missing the widgetHEADmain
The gallery sets `html{scroll-behavior:smooth}`, so `scrollIntoView` animates. The fader check slept a fixed 200ms and then read `getBoundingClientRect`, which sometimes caught the rect mid-scroll. The drag went out at stale coordinates. The press landed off the fader, and the check reported a dead widget about one run in six. The probe has no reason to animate, so it now scrolls with `behavior:'instant'`. That removes the race rather than waiting it out. A `settledGeom` read still guards against zoom and column relayout. It requires the geometry to be stable twice over and on screen, because two matching samples taken before a relayout begins look identical to a settled one. Both checks now assert the press landed on the widget before dispatching. That assertion earned itself during the fix. My first attempt polled for a stable rect and returned pre-scroll coordinates every time, and the press-landed check caught it by printing a point below the window. The toggle check has the same fixed-sleep shape and failed that way while I was diagnosing, so it got the same fix. Verified over 8 consecutive runs against the measured 1-in-6 rate. All three checks pass with the press point identical each time, so the result is deterministic rather than lucky.
Diffstat (limited to 'dotfiles/dwm/.local/bin/screenshotmenu')
0 files changed, 0 insertions, 0 deletions