ui-preview: hold <id or key> <pseudo> - hover, active, focus, focus-visible, checked or disabled held on from the next frame on top of the real input, by the element's key (so through model and load), let go with "" or reset; ludic.ui's held.ludic keeps them and the matcher asks it first; protocol-v1.md and smoke.txt

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Orkun ÇAKILKAYA 2026-09-29 22:04:20 +03:00
parent 3d5aaa6f6e
commit aac58ec6fa
10 changed files with 122 additions and 1 deletions

View file

@ -168,6 +168,45 @@
< "dem Nordbecken"
<= ok
# hold: a pseudo-class held on without input - the :hover rule draws from the next frame, rules lists
# it, and letting go puts the plain background back
> load "Hov" "<row><button id=\"b\" class=\"b\">Go</button></row>" ".b { background: #0000ff; }\n.b:hover { background: #00ff00; }"
<= ok
> show "Hov"
<= ok
> frame 0
< #0000ff
<! #00ff00
<= ok
> hold "b" "hover"
<= ok
> frame 1
< #00ff00
<= ok
> rules "b"
< ".b:hover"
<= ok
> hold "nothing" "hover"
<= fail "no element nothing"
> hold "b" "wobble"
< fail
<= fail "hold: wobble cannot be held (hover, active, focus, focus-visible, checked, disabled)"
> hold "" ""
<= ok
> frame 2
< #0000ff
<! #00ff00
<= ok
> frobnicate
<= fail "unknown request frobnicate"