Builtin Library
README.md
gui.hoverElement
Move the pointer over a UI element by its elementTree id, so its hover state paints. The cursor stays there, so a following gui.captureElement shows the hovered look.
The pointer is moved only while ui.diagnose(id) reports painted, since a widget the frame left undrawn is one the pointer would sit over something else at. Any other verdict comes back as { ok = false, id, x, y, reason, detail, error } carrying it. On a painted widget the pointer goes to the middle of the part that reached the frame, so a row clipped to a band of itself is hovered inside that band. The x, y of the answer are that point, in the logical points gui.bounds and ui.hitTest use.