Repository navigation
feat(lab): CircleCheckIndicator presses the same way for every pointer (spec:AST-094 FR43) #8701
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
vjeux
wants to merge
1,910
commits into
meta:main
Choose a base branch
from
vjeux:uikit/c06-fr43b
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+41,756
−869
Draft
Changes from all commits
Commits
Show all changes
1910 commits
Select commit
Hold shift + click to select a range
777ff9a
fix(gestures): the action-group press leaves its click to the click g…
vjeux bec2283
fix(gestures): a gesture that cancels itself on a finger's move keeps…
vjeux 7bc0733
test(Indicator): the busy-window proof accepts a change presented ins…
vjeux 995eb32
test(gestures): a scroll-edge pan cancels its first moves while every…
vjeux e7ec6d1
test(gestures): browser proof that a scroll-edge pull's first move is…
vjeux 885c7f1
feat(gestures): a scroll-edge pan holds its finger from the first mov…
vjeux 0eafffd
test(gestures): real-touch states for AST-094 FR18–FR22: 9 and 10 px …
cixzhang a3e07d8
fix(core): the gesture host measures a screen-edge pan's view, so an …
cixzhang 9adbe2d
fix(gestures): a strip authored at the edge region is the edge zone a…
cixzhang 584ee5a
Merge a3e07d88 (#8076: the host's arena environment measures a view) …
cixzhang cc9afb6
Merge 9adbe2d8 (#8061: an edge strip within half a pixel of its band …
cixzhang 2d1a06e
test(gestures): the real-touch edge strip is the band's own 40.2 px, …
cixzhang 9800eb5
fix(gestures): a scroll takes a finger only after its 10 px of travel…
cixzhang 9ac14dc
docs(gestures): the README's touch-action table qualifies the edge pa…
cixzhang c3375f6
Merge 9800eb54 (#8072: a scroll takes a finger after 10 px; pointer-e…
cixzhang 8ae6540
Merge #8309 (c3375f65: #8076 a3e07d88, #8061 9adbe2d8, #8072 9800eb54…
cixzhang 36a1037
Merge #8315 (8ae65405: #8309 c3375f65 with #8076 a3e07d88, #8061 9adb…
cixzhang 5c59af1
fix(gestures): a finger on an action group under a fine pointer reach…
cixzhang 479fe54
fix(core): with only watchers attached, the host's document listeners…
cixzhang 54901eb
Merge #8589 (#8315 8ae65405, and its passive-only listeners for watch…
cixzhang 08305ad
Merge #8336 (#8315 8ae65405; vjeux's scroll-edge hold; #8589's passiv…
cixzhang 2d4b4bd
Merge 5c59af12 (#8072: a finger on an action group under a fine point…
cixzhang 10abed5
Merge #8309 (2d4b4bdc: #8072 5c59af12, an action group's finger under…
cixzhang cef87ea
Merge #8315 (10abed58: #8309 2d4b4bdc, #8072 5c59af12: an action grou…
cixzhang b8d7f4c
Merge #8589 (#8315 10abed58) into the host line
cixzhang 71b9578
Merge #8336 (#8315 10abed58) into the arena fixes
cixzhang cba0ad9
Merge main (a00afee502: #8521 merged) into the experimental touch layer
vjeux f5ac3e8
Merge #8076 (cba0ad93f6: main with #8521 merged) into the presented s…
vjeux 050fb02
Merge #8076 (cba0ad93f6: a3e07d889b's edge-zone measuring, main with …
vjeux 13b556b
Merge #8270 (#8076 cba0ad93f6) into #8309
vjeux 8b5e539
Merge #8309 (#8076 cba0ad93f6) into #8315
vjeux bbacf83
Merge #8315 (#8076 cba0ad93f6) into #8336
vjeux 303e507
Merge #8336 (#8076 cba0ad93f6) into #8320
vjeux d8efc9a
Merge #8320 (#8076 cba0ad93f6: a3e07d889b and main with #8521; her #8…
vjeux 4f11c60
Merge #8340 (f5ac3e8904: no frame shows where a touch motion is going…
vjeux 0c9d2fb
docs(core): drawnTranslate's note wraps at the file's width again
vjeux f23d22d
Merge #8076 (cba0ad93f6: main with #8521) into this change
vjeux 8766c55
Merge #8076 (cba0ad93: main through #8521's merge) into the row press…
vjeux 1a693f3
Merge the row press release change (with #8076 at cba0ad93) into the …
vjeux e7b3c0a
Merge the list dividers change (with #8076 at cba0ad93) into the sele…
vjeux 0ee1b4e
Merge #8293 (#8076 cba0ad93f6; #8340 f5ac3e8904) into #8356
vjeux 1ae267a
Merge #8356 (#8076 cba0ad93f6; #8340 f5ac3e8904) into #8358
vjeux 68d5491
Merge #8358 (#8076 cba0ad93f6; #8340 f5ac3e8904) into #8360
vjeux 1a4eb1c
test(gestures): a watcher follows a touch the browser scrolls with to…
cixzhang 9f87f08
fix(gestures): a scroll-edge pan holds a lone finger only, so a pinch…
cixzhang 7c8c729
Merge #8589 (a watcher's real-touch browser test) into the host line
cixzhang 36c2669
Merge #8336 (a scroll-edge pan holds a lone finger only; #8589's watc…
cixzhang c5b1e89
test(gestures): the 41 px edge-band case skips WebKit like the file's…
cixzhang 2850d32
Merge #8309 (c5b1e894: the 41 px edge-band case skips WebKit) as a de…
cixzhang 2e0bf48
Merge #8315 (2850d32b: #8309 c5b1e894, a WebKit test skip) into the g…
cixzhang d3c39fa
Merge #8589 (#8315 2850d32b) into the host line
cixzhang 46fb7be
Merge #8336 (#8315 2850d32b) into the arena fixes
cixzhang d97753d
Merge #8270 (#8076 cba0ad93f6) into #8309
vjeux 9affd96
Merge #8315 (#8076 cba0ad93f6) into #8336
vjeux 13f603d
Merge #8309 (#8076 cba0ad93f6) into #8315
vjeux 0567e2c
Merge #8336 (#8076 cba0ad93f6) into #8320
vjeux e18b6d4
Merge #8320 (her 46fb7beee4: the 41 px case skips WebKit; a scroll-ed…
vjeux 797c704
Merge #8356 (#8320 46fb7beee4) into #8358
vjeux 8ed72d9
Merge #8293 (#8320 46fb7beee4) into #8356
vjeux df700c4
Merge #8358 (#8320 46fb7beee4) into #8360
vjeux 2c8edc3
test(gestures): a scroll-edge pan holds nothing while a second finger…
vjeux 54a4c27
fix(gestures): a scroll-edge pan holds nothing while a second finger …
vjeux ead9254
Merge #8082 (e7b3c0a753: the list stack on #8076 cba0ad93f6) into the…
vjeux a4b9ee8
Merge #8117 (ead9254101: #8082 e7b3c0a753 with #8076 cba0ad93f6) into…
vjeux c449e1c
test(List): the no-scrollend case deletes window's onscrollend once
vjeux 3bfd7c3
fix(core): the animator reads no style for a node out of the document
vjeux abb3e0f
Merge main (f19b6547b5: #8561 merged) into Core's internal entries
vjeux b87b40b
test(gestures): the watcher's browser test checks it reports moves af…
cixzhang 21347b3
Merge #8589 (the watcher's browser test checks moves after the takeov…
cixzhang 528e3e1
Merge #8336 (vjeux's two-finger scroll-edge fix; #8589's watcher brow…
cixzhang 8972559
fix(Button): a touch press keeps the button's layer through its relea…
vjeux 37a232b
Merge the instant-marks change (with #8076 at cba0ad93f6) into the ci…
vjeux 168713c
Merge #8562 (abb3e0fb52: Core's internal entries for Lab) into the ci…
vjeux 4802fef
refactor(lab): CircleCheckIndicator keeps its measured geometry besid…
vjeux 2119cfa
Merge #8076 (3bfd7c32da: the animator reads no style for a node out o…
vjeux d70e066
test(core): the press feedback controller imports nothing from the ge…
vjeux fbed9d2
refactor(core): the coarse-pointer query moves to the environment que…
vjeux 9db6af5
Merge #8270 (#8076 3bfd7c32da; the coarse-pointer query in utils/) in…
vjeux 999afb7
Merge #8309 (#8076 3bfd7c32da; the coarse-pointer query in utils/) in…
vjeux b57ac07
test(gestures): the watcher's browser test names its record type (lint)
cixzhang 6cca0de
Merge #8589 (the watcher browser test's lint fix) into the host line
cixzhang ea8531c
Merge #8336 (#8589's lint fix) into the arena fixes
cixzhang 1b6e19f
test(gestures): the watcher's real-touch test reads its end before th…
vjeux 790c65e
Merge #8315 (#8076 3bfd7c32da; the coarse-pointer query in utils/) in…
vjeux 2fd9697
Merge #8336 (#8076 3bfd7c32da; the coarse-pointer query in utils/) in…
vjeux 45b25e4
Merge #8320 (cixzhang's ea8531cd9b: the scroll-edge hold for a lone f…
vjeux e95a4e2
Merge #8356 (#8320 ea8531cd9b; #8076 3bfd7c32da; the coarse-pointer q…
vjeux d80cebe
Merge #8293 (#8320 ea8531cd9b; #8076 3bfd7c32da; the coarse-pointer q…
vjeux 741787a
Merge #8358 (#8320 ea8531cd9b; #8076 3bfd7c32da; the coarse-pointer q…
vjeux 8111745
test(gestures): gestures attach for every pointer (spec:AST-094 FR43,…
vjeux 431f4b0
test(gestures): a press tracker's fine-pointer profile: no delay, and…
vjeux f9a93c3
test(gestures): the screen-edge pan stays off under a mouse and a pen…
vjeux f50207f
feat(gestures): gestures attach for every pointer (spec:AST-094 FR43,…
vjeux dc3840f
test(gestures): the browser proofs read FR43 under a fine pointer, wi…
vjeux 1aade8a
test(gestures): an in-band touch on a wider element decides at 15 px …
vjeux 3d85c30
fix(gestures): an in-band touch decides at 15 px whatever the element…
vjeux 9d0f6f2
Merge #8061 (3d85c303e6: an in-band screen-edge touch decides at 15 p…
vjeux 11dbebf
Merge #8641 (bec2283d0f: a gesture that cancels itself on a finger's …
vjeux d9a1e1a
fix(gestures): an in-band touch decides at 10 px on an element wider …
vjeux e6ab0b9
Merge #8061 (d9a1e1ad19: an in-band touch on an element wider than th…
vjeux e7b5b3c
Merge #8076 (e6ab0b9cd9: #8061 d9a1e1ad19, an in-band screen-edge tou…
vjeux e718566
Merge #8270 (#8076 e6ab0b9cd9: FR18 per DEC-22, #8641) into #8309
vjeux 1e44dc3
Merge #8315 (#8076 e6ab0b9cd9: FR18 per DEC-22, #8641) into #8336
vjeux 9486526
Merge #8309 (#8076 e6ab0b9cd9: FR18 per DEC-22, #8641; #8641's moving…
vjeux 03155c3
Merge the #8589 watcher-test fix (1b6e19f7b0: the real-touch test rea…
vjeux 3d7fa2e
Merge #8336 (#8076 e6ab0b9cd9: FR18 per DEC-22, #8641; #8589's watche…
vjeux 82fe8b7
Merge #8356 (#8076 e6ab0b9cd9: FR18 per DEC-22, #8641; #8589's watche…
vjeux d835d1c
Merge #8320 (#8076 e6ab0b9cd9: FR18 per DEC-22, #8641; #8589's watche…
vjeux ee5387a
Merge #8293 (#8076 e6ab0b9cd9: FR18 per DEC-22, #8641; #8589's watche…
vjeux aebbb7c
test(motion): retire the gate that kept the menus off the gestures table
vjeux 23ade34
Merge #8358 (#8076 e6ab0b9cd9: FR18 per DEC-22, #8641; #8589's watche…
vjeux 9fa271e
Merge #8360 (#8076 e6ab0b9cd9: FR18 per DEC-22, #8641; #8589's watche…
vjeux e90fc8a
test(gestures): a finger from a browser that sends Touch Events but e…
vjeux 00ab452
fix(gestures): the host reads no Touch Events where it takes fingers …
vjeux 1d43d0d
Merge #8336 (the host takes a finger once where it reads its pointer …
vjeux 898d317
Merge #8320 (the host takes a finger once where it reads its pointer …
vjeux 169cd73
Merge #8293 (the host takes a finger once where it reads its pointer …
vjeux cb552b2
Merge #8356 (the host takes a finger once where it reads its pointer …
vjeux b625667
chore(changeset): drop the core table changeset; the circle's geometr…
vjeux 496efa6
Merge #8118 (8972559ff7: the press controller's two slots, arming and…
vjeux 11a1a2d
test(motion): the uikit barrel keeps UIKIT_CLICK for importers writte…
vjeux d8651c2
fix(motion): the uikit barrel keeps UIKIT_CLICK, with the click guard…
vjeux c246cf6
Merge #8360 (the uikit barrel keeps UIKIT_CLICK) into the every-point…
vjeux f562631
Merge #8358 (the host takes a finger once where it reads its pointer …
vjeux 22f0517
Merge #8360 (the host takes a finger once where it reads its pointer …
vjeux 6d1d5ae
Review base for the press paint under a fine pointer: #8665 9fa271efe…
vjeux 673acfe
Merge #8360 d8651c2bb1 (UIKIT_CLICK kept in the motion/uikit barrel) …
vjeux 598be90
Merge main (a63eb54f56: #8465 merged, one shared touch module) into C…
vjeux 7d07d22
test(press): a fine pointer's press paints at once through the press …
vjeux ca66aa5
feat(press): a mouse's or a pen's press paints at once through the pr…
vjeux 4e98f8c
Review base for the press paint under a fine pointer: #8665 c246cf669…
vjeux f360696
Merge the review base (4e98f8cbfe: #8665 c246cf6691, the union helper…
vjeux 6f56ef9
test(core): Core's root, hooks and utils entries carry no gesture code
vjeux 57b5bbd
fix(core): the haptic switch's attribute lives in utils, so Core's pu…
vjeux c400589
Merge #8562 (598be908c6: Core's internal entries on main with #8465 m…
vjeux 32ccda6
test(gestures): a claiming recognizer keeps its blocking touchmove un…
vjeux dbf5390
fix(gestures): a claiming recognizer's element keeps its blocking tou…
vjeux 78d4c1d
test(gestures): a mouse or a pen pan takes no text selection once it …
vjeux 7356a69
fix(gestures): a mouse or a pen pan takes no text selection once it c…
vjeux c69cf92
docs(gestures): the README and changeset name the claiming touchmove,…
vjeux 7fc24e1
test(gestures): a right click or a ctrl-click on macOS starts no pres…
vjeux e78b2da
fix(gestures): a ctrl-click on macOS starts no press, as a right clic…
vjeux f4be8f0
Merge #8360 (the haptic switch's attribute lives in utils: Core's pub…
vjeux 4c3a7d8
fix(press): a surface's activator is its own; the desktop-rule proofs…
vjeux 894ea35
Review base for the press paint under a fine pointer: #8665 f4be8f0f2…
vjeux 83af095
Merge the review base (894ea35501: #8665 f4be8f0f27, which brings uti…
vjeux a2a2708
test(List): a mouse's click to push never reads held, before and afte…
vjeux 3fb31dd
Merge main (6aea9bda01: #8663 merged, one release policy) into the ex…
vjeux 170162d
Merge #8076 (main's #8663 rows in motion/README.md) into #8270
vjeux 58dbb1a
Merge #8270 (#8076: main's #8663 rows in motion/README.md) into #8309
vjeux 2e77071
Merge #8309 (#8076: main's #8663 rows in motion/README.md) into #8315
vjeux 3b1b26d
Merge #8315 (#8076: main's #8663 rows in motion/README.md) into #8336
vjeux ca71fce
Merge #8336 (#8076: main's #8663 rows in motion/README.md) into #8320
vjeux fe527be
Merge #8320 (#8076: main's #8663 rows in motion/README.md; this pull …
vjeux 0dd683d
Merge #8358 (#8076: main's #8663 rows in motion/README.md) into #8360
vjeux c5465c2
Merge #8356 (#8076: main's #8663 rows in motion/README.md) into #8358
vjeux 52e5eb7
Merge #8293 (#8076: main's #8663 rows in motion/README.md) into #8356
vjeux f785deb
Merge #8360 (#8076: main's #8663 rows in motion/README.md) into the e…
vjeux b52f236
Merge #8076 (3fb31ddb3e: main with her #8663) into the instant-marks …
vjeux 8803c0e
Merge the instant-marks change (b52f2363c7: #8076 3fb31ddb3e) into th…
vjeux 686aefa
test(press): the press controller's clocks read their motion roles (f…
vjeux c325cad
feat(press): the press controller's clocks read their motion roles (f…
vjeux 8890dd9
Merge #8076 3fb31ddb3e (e6ab0b9cd9 with main 6aea9bda01: the motion R…
vjeux 3b98eb6
Merge #8117 (8890dd90d9: #8076 3fb31ddb3e, the motion README union) u…
vjeux 21cfa97
Merge #8360 0dd683d038 (F2's line on #8076 3fb31ddb3e) into the #8118…
vjeux d21755b
Merge #8118 (3b98eb6291: #8076 3fb31ddb3e) into the #8118 union
vjeux 187b04e
Review base for the press paint under a fine pointer: #8665 f785debd7…
vjeux 5898795
Merge the review base (187b04ef5e: #8665 f785debd7b, the union helper…
vjeux a3511eb
test(gestures): a mouse drag a pan claimed selects no page text, in W…
vjeux 4f8d37b
Merge main (39ed04d76f) into Core's internal entries
vjeux cd3ad72
test(core): resolveSnapPoint stays internal, checked against public e…
vjeux 95ac074
Merge #8562 (cd3ad72a1f: resolveSnapPoint stays internal, checked aga…
vjeux 49f872a
fix(gestures): a claimed mouse or pen drag holds selection off docume…
vjeux c1f24bf
test(gestures): a fine-pointer finger's press on an action group ends…
vjeux 0d5f4e3
Review base for the press paint under a fine pointer: #8665 c1f24bf8c…
vjeux e6618c6
Merge the review base (0d5f4e3b3d: #8665 c1f24bf8ce, the WebKit selec…
vjeux 9adc6f2
Merge #8360 (only the utils entry is pinned gesture-free) into the ev…
vjeux 5588013
test(core): only the utils entry is pinned gesture-free; the root and…
vjeux 57bb18a
Review base for the press paint under a fine pointer: #8665 9adc6f230…
vjeux 05f7523
Merge the review base (57bb18a857: #8665 9adc6f230b, the union helper…
vjeux 3ad2239
Merge #8360 55880136d1 (the root entry's gesture-free check reads the…
vjeux 0b2b013
test(gestures): a recognizer inside a shadow root gets its finger and…
vjeux c06acd5
fix(gestures): the host resolves what an input landed on through the …
vjeux 3c8817f
test(gestures): the drag selection case reads the page once the selec…
vjeux 9a77cbd
Review base for the press paint under a fine pointer: #8665 3c8817f57…
vjeux cebd381
Merge the review base (9a77cbd387: #8665 3c8817f57d, shadow-root rout…
vjeux 620fbfe
test(gestures): a recognizer inside a shadow root gets its finger and…
vjeux c3c119a
fix(gestures): the host resolves what an input landed on through the …
vjeux 53a1e69
Merge #8336 (a recognizer inside a shadow root gets its finger: the h…
vjeux 9a0d046
Merge #8320 (#8336: a recognizer inside a shadow root gets its finger…
vjeux 6e42f12
Merge #8358 (#8336: a recognizer inside a shadow root gets its finger…
vjeux 27d3958
Merge #8356 (#8336: a recognizer inside a shadow root gets its finger…
vjeux 5805486
Merge #8293 (#8336: a recognizer inside a shadow root gets its finger…
vjeux ca3bfdb
Review base for #8117: #8082 e7b3c0a753 and #8076 3fb31ddb3e
vjeux f67ec83
Merge the review base (ca3bfdbc2b: #8082 e7b3c0a753 with #8076 3fb31d…
vjeux c2cd3ba
Merge #8360 (#8336: a recognizer inside a shadow root gets its finger…
vjeux 37524f5
Merge #8682 (cebd381393: the press paint for a mouse and a pen) under…
vjeux 1f713f0
Merge #8665 (c2cd3bac69: on #8336 c3c119a466) under the circle's FR43…
vjeux d2aa559
feat(lab): CircleCheckIndicator paints a mouse or pen press like a fi…
vjeux 41d3e61
test(useMenuPress): the trigger keeps the released tolerance on a fin…
vjeux d06691b
fix(useMenuPress): the trigger takes its tolerance when its press sta…
vjeux a3527b9
test(useLongPress): the travel is measured on each axis, as its docum…
vjeux f62179d
fix(useLongPress): the tolerance is measured on each axis again, as d…
vjeux 120350b
test(gestures): a scroll and its brake see a finger inside an open sh…
vjeux a0c57a3
fix(gestures): a scroll and its brake compare a finger along the flat…
vjeux a8b174a
Merge #8336 (the host compares a finger with a scroller along the fla…
vjeux c1186e4
Merge #8320 (#8336: the host compares a finger with a scroller along …
vjeux 886749b
Merge #8293 (#8336: the host compares a finger with a scroller along …
vjeux af9cb4e
Merge #8356 (#8336: the host compares a finger with a scroller along …
vjeux 1ffc9d8
Merge #8360 (the menu trigger takes its tolerance when its press star…
vjeux b390514
Merge #8358 (useLongPress measures its tolerance on each axis again, …
vjeux 0f2397e
test(gestures): a claimed pen's stylus touchend is cancelled, as a fi…
vjeux 5a64900
fix(gestures): a claimed pen's stylus touchend is cancelled, as a fin…
vjeux 5f6bc04
refactor(useLongPress): the per-press tolerance stays off the public …
vjeux 6b3e60d
docs(gestures): the host's header and the host-owner changeset descri…
vjeux 8d7da28
test(gestures): the screen-edge pan is locked to a finger; a widened …
vjeux 83b2084
fix(gestures): the screen-edge pan is a finger's only; its options ta…
vjeux 95bd2ac
Merge #8118 (c3e5045cd7: main 6a751f7b7a, Button FR15 on #8646's text…
vjeux a22716c
Review base for #8118: #8117 f67ec83265 and main 6a751f7b7a
vjeux c3e5045
Merge the review base (a22716c980: #8117 with main 6a751f7b7a, #8646 …
vjeux e749c0e
Merge #8360 5f6bc04b20 (F2's reviewer-raised fixes) into the #8118 union
vjeux d511b7d
Review base for the press paint: and #8665 6b3e60d3d8 (F2's reviewer-…
vjeux 439a56b
Merge the review base (2a22e77497: #8665 6b3e60d3d8, the union helper…
vjeux 2a22e77
Review base for the press paint: and the union helper e749c0eb3a (#81…
vjeux 61cc2f5
docs(Button): FR15's mouse and pen press ships through the press cont…
vjeux da02df9
test(selectionLock): a finger's and a pen's hold take the lock under …
vjeux 42baf0f
fix(selectionLock): a finger's and a pen's hold take the lock under a…
vjeux 207291b
Merge #8682 (61cc2f57ce: Button's record on main's text) under the ci…
vjeux 12be9b4
Merge #8665 (42baf0feb9) under the circle's FR43 change
vjeux d1681ad
Merge the new base (12be9b4f0f: #8682 61cc2f57ce, #8665 42baf0feb9; m…
vjeux 538039c
test(clickGuard): a guard whose view goes away lets its window run ou…
vjeux 9c1d352
test(gestures): a cancelled mouse or pen press lifts the document-wid…
vjeux 2d365a7
fix(gestures): a click guard whose view went away drops without touch…
vjeux 156b9d7
test(clickGuard): no guard outlives the test that armed it
vjeux 9960efe
fix(test-utils): the shared setup disarms every click guard as each t…
vjeux 80d3101
Merge main (ab0db1f735, AST-108 theme motion) into the #8118 review base
vjeux adf99c3
Merge the #8118 review base (main ab0db1f735) into #8118
vjeux 871ed31
Merge #8118 (main ab0db1f735) into the #8118 x #8360 union
vjeux 3192ba9
Merge the union helper (main ab0db1f735) into the press-paint base
vjeux 11144f8
Merge the press-paint base (main ab0db1f735) into the fine-pointer pr…
vjeux 1669b0c
test(core): a release ends when its animation does, not on a clock a …
vjeux 2564d68
fix(core): a release ends when its animation does, however late a bus…
vjeux a040718
Merge #8118 (a release ends when its animation does) into the #8118 x…
vjeux 1a28dd9
Merge the union helper (a release ends when its animation does) into …
vjeux 759d562
Merge the press-paint base (a release ends when its animation does) i…
vjeux 48e9cef
Merge #8682 (11144f8fd3: main ab0db1f735, Button's record on main's t…
vjeux dd35d77
Merge #8665 (9960efe095: the click guard disarmed after each test) un…
vjeux 8339623
Merge the new base (dd35d77387: #8682 11144f8fd3, #8665 9960efe095; m…
vjeux bdc151c
Merge #8682 (759d562c02: a release ends when its animation does) unde…
vjeux c36a3c6
Merge the new base (bdc151c129: #8682 759d562c02; a release ends when…
vjeux File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/build': patch | ||
| --- | ||
|
|
||
| [fix] `astryxStylex` resolves `defineConsts` values read from another file. With the `{stylexOptions}` form (the one Storybook uses), a file that read only constants from a `.stylex.ts` module lost that import once StyleX compiled it, so the constants never reached the CSS: a constant used as a media-query key failed the build ("Invalid empty selector") and one used as a value shipped as a custom property nothing declares. In either form, a constant defined on the other side of the layer split, or in an Astryx package (compiled with the library class-name prefix) and read from an app file (compiled with its own), stayed unresolved. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/cli': patch | ||
| --- | ||
|
|
||
| [fix] `astryx component` matches component and hook names case for case, and only in the file that exports the name. A lowercased name such as `list` or `badge` is now unknown, with the component it matches by case suggested, instead of opening List's or Badge's doc. A module that only shares a name's spelling, such as a lowercase `button.ts` table elsewhere in Core, no longer opens the nearest doc either, and `--source` no longer reads it. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: the gesture recognizers and the menu press model share one guard for the browser's click after a gesture that already acted, swallowing it for 400ms or until the next press. Keyboard and assistive-technology clicks (`detail` 0) always pass. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Core's internal entries, reserved for Astryx's own packages, also give Lab components the pan recognizer, the gesture types, the touch presentation queries and the motion math and tuning tables that Core components use. Apps import nothing new. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: a gesture that cancels itself on a finger's move (a long press dragged past its tolerance) keeps that finger claimed until it lifts, so the page never takes the drag over midway; a resting finger is still given back when its gesture is cancelled. Not exported from the package entry point. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: touch-action derivation, the native scroll probe and haptics for the gesture system. Not exported from the package entry point. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: the gesture hooks call nothing back after unmount; `usePressTracker` brakes with the host by default and keeps one tracker, so an option change or a new ref never drops a press in progress; the recognizer's arena plumbing is `protected`. Not exported from the package entry point. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: gesture host fixes from review. A page scroll under a still finger keeps the press and its click; watchers and touches nothing can claim get passive listeners only; a claimed pen holds only its own stylus touches; an element's own `touch-action` is never widened; slotted content scrolls with its shadow-tree scroller. Not exported from the package entry point. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: the gesture host becomes the one document-level touch owner: the finger count, touch gates, and a kept press for continuous-tracking controls, whose element gets `touch-action: manipulation` where the pointer is coarse. A scroll lock's page hold and the finger-scroll watch keep their own listeners and ask the host only about the touches it owns. A second finger fails a one-finger pan that has not claimed, so the page can pinch. A scroll-edge pan holds a lone finger from the first move that pulls away from an edge every scroller under it is at, so those moves are cancelled before it begins; with a second finger anywhere on the screen the page keeps its pinch. The host follows the primary pointer when it changes; what it attaches under a fine pointer is in the every-pointer changeset (`gestures-every-pointer.md`). A press tracker whose hold acts (a stepper's hold-repeat) can bring a selection lock for its presses, as a recognizer can. Internal, for the touch components that adopt them; not exported from the package entry point. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: the gesture system's DOM host (claims, click suppression, the browser's takeover, the pointer behind a contact). Not exported from the package entry point. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: UIControl press tracking with control and cell profiles and the gesture hooks, with every press painter writing `data-astryx-press` through one internal writer in `utils/pressFeedback.ts`. Not exported from the package entry point. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: the gesture system's README for component authors, with its browser proof in Chromium and WebKit. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: gesture recognizer and arena fixes from review; a pan claims nothing before it begins at 10 pt; one velocity tracker for every gesture (`spec:AST-100`: UIKit's measured blend, a scrolling surface's release through the pan's `scrollVelocity()`, and FR2's release rules). Not exported from the package entry point. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: swipe, pinch, rotation, screen-edge pan and hover gesture recognizers. Not exported from the package entry point. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: a recognizer created with `claimsTouches: false` is a watcher: passive listeners only, simultaneous with every recognizer, and it follows a touch the browser takes for a scroll to the lift. Not exported from the package entry point. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: gestures attach for every pointer, a mouse, a pen and a finger alike (AST-094 FR43). Under a fine primary pointer an element that uses a gesture keeps one passive `pointerdown` listener (a recognizer that claims a moving finger also keeps its blocking `touchmove`), and the page's listeners last only a press. A right click or a ctrl-click on macOS starts no press. A finger's or a pen's hold that does something keeps text unselected under any primary pointer, a touchscreen laptop's included, while a mouse keeps its released behavior (FR41). A mouse or pen drag that a recognizer claims takes no text selection from then on, anywhere on the page, and a finger is read once where the browser sends Touch Events without exposing `ontouchstart`. A press tracker takes a mouse press as a press, painting at once with no scroll brake. The screen-edge pan is a finger's only: it stays off under a mouse, a trackpad and a pen, and takes no `allowedPointerTypes`, and `perEventPointer` is accepted and does nothing. Not exported from the package entry point. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [feat] A theme indicator can paint its own press layer: an indicator marked with the new `indicatorPressScope` marker (`@astryxdesign/core/Indicator/indicator.markers.stylex`) and `data-astryx-indicator-press="self"` paints the press itself, and CheckboxInput leaves its rounded-square layer off, so a round indicator's press stays round. Indicators without it are unchanged. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [fix] The touch press feedback and the gesture recognizers now listen on the window's capture phase through one shared input stream: one passive listener per event type for both. An app's own capture-phase `stopPropagation` at the document no longer starves them, and a page of pressables registers no listener that can hold a scroll. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/cli': patch | ||
| --- | ||
|
|
||
| [experimental] `astryx` discovery lists the lab's new `CircleCheckIndicator`. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [feat] In a `List` with `hasDividers`, a touch press hides the dividers on either side of the pressed row, so the pressed row reads as one unbroken highlight; both come back the moment the finger lifts, while the highlight fades. This applies under any finger (a coarse primary pointer); with a mouse the dividers stay drawn. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [fix] A list row's touch press release keeps fading while the page runs script. `ListItem`, `Item` and `TreeList` rows used to stay fully pressed after the finger lifted until the main thread was free, and every frame of the fade repainted the row; the release now runs on the compositor, with the same color, clock and curve as before. Under a finger, while a row is pressed and through its release, the press paints on the row's `::before` and the row is its own stacking context; at rest nothing of it applies, so a row's own `::before` decoration and its children's stacking are as they were. During a press the layer is the row's `::before`, so a caller's decoration there takes the layer's box and paint for that time (a page stylesheet keeps the properties it sets); decoration that should stay through a press belongs on `::after` or a child element. With a mouse or trackpad the row is unchanged: no layer and no new stacking context. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,8 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| '@astryxdesign/cli': patch | ||
| --- | ||
|
|
||
| [chore] Internal: under a finger, a list row tapped to push can stay selected while the pushed screen covers it, then deselect as the screen pops, as a UIKit table row does; with a mouse the press releases at the lift as before. The hold that drives it (`List/selectionHold.ts`) is internal to core, so no public export changes. The deselect runs on the compositor, and a divided list keeps the dividers around the held row hidden. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: `useLongPress` (ContextMenu's long press, and the held finger that opens a menu from its trigger) takes its default duration and tolerance, 500ms and 10px on either axis, from the same source as the long-press gesture recognizer. No behavior changes. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [fix] A finger held on a DropdownMenu trigger may drift up to 13px on each axis and still open the menu where the primary pointer is coarse (phones and tablets), as AST-094 FR29 allows; it cancelled past 10px. Where the primary pointer is fine (a touchscreen laptop, a pen tablet), the trigger keeps its 10px. The trigger reads the pointer when its press starts, so no menu or row observes the pointer query. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] On iOS, a touch on an element the compositor animator is moving reaches what is drawn: the animator reports each moving element's offset from its layout box, and the gesture host sends the touch, press bounds and the tap's click there instead of to the layout position iOS WebKit hit-tests. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [fix] On a phone or tablet, a press made with a mouse, a trackpad or the Space key now shows the pressed state. Touch devices drop the CSS `:active` press so a finger only sees the touch press model, but that rule keys on the device's primary pointer, so a tablet with a trackpad and keyboard (or a phone with a mouse) lost the pressed state for every press that was not a finger. The touch press controller now paints those presses on such devices with the same pixels a desktop press has: at once, held while the button or key is down, faded at the release. As on a desktop, Space paints only a focused button that is itself the pressed surface (a checkbox's or radio's row stays at rest), and a menu row keeps the menu's own highlight. Desktop presses and finger presses are unchanged. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [fix] Under a finger, a button, card, link or other control now highlights in the frame the finger lands, as UIKit's controls do, instead of after a 150 ms delay; inside a scroller it still waits that delay (a flick paints nothing), and a scroll that takes a held press cancels it with no fade. List rows (Item, TreeList) wait the 150 ms delay only inside a scroll view, and are cancelled by 10 px of travel. `usePressFeedback` is unchanged: a local pressable it marks is tracked as a control. The press controller now keeps only two passive listeners on the document at rest and attaches the rest while a press is live. A mouse on a desktop keeps `:active`. | ||
|
|
||
| @vjeux | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [feat] A press with a mouse or a pen now shows the same pressed state a finger's does, on every device. It paints at once when the button goes down (no delay, even in a scrolling list), holds while it is down, and fades at the release on the same clock a finger's press uses, in place of the browser's `:active`. A right click, a ctrl-click on macOS and a pen's barrel button paint nothing, and a Space press is unchanged. A press on a link or a button inside a pressable row (a link in a radio option's description, for example) no longer paints the row, under a finger or a mouse. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [fix] Under Reduce Motion the shared press paint's release follows design:reduced-motion: with a coarse primary pointer it is the system cross-fade (its duration and curve from `reducedMotionFadeConsts`), and with any other pointer it completes at the lift with no animation. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [fix] Under a coarse primary pointer (a touch screen as the main input), a button's or a card's touch press release now runs on the compositor: it keeps fading while the page's script is busy instead of freezing at full strength and snapping off, and it paints nothing per frame. There, every control's touch release (Button, the cards, and the other controls on the shared overlay, such as Switch, Link, Tab and CheckboxInput) follows UIButton's highlight release, 250 ms ease-in-out instead of 200 ms ease-out; a list row's stays on the deselect clock; and under reduced motion the release is an opacity cross-fade of 200 ms or less. With any other pointer, a finger on a touch screen beside a mouse included, nothing changes. Under a coarse primary pointer, while a press is on or fading, Button paints it on its own `::before` and sets `isolation: isolate`; at rest it adds neither, so a `::before` you style, through `xstyle` or a `className` rule, merges into that layer only during a press. Style a child element to keep it unchanged. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: Reduce Motion for the touch presentations follows design:reduced-motion beyond the animator too. `reducedMotionFade()` gives code beside the animator the animator's own fade (an opacity-only 200 ms cross-fade on a coarse pointer or after a touch release, at once on any other pointer), `animator.reducedMotion()` reports which form a change takes for feedback that plays no fade of its own, and `reducedMotion.stylex.ts` holds the fade's constants for StyleX transitions. The fade's length is not a theme motion role. Not exported from the package entry point. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [feat] Under a finger (a coarse primary pointer, on every touch device), a checkbox or radio mark now changes in the frame the selection lands, the way UIKit shows a selection mark. The box or circle used to fade between its two colors over the theme duration, so a tap first showed half-filled frames. With a mouse the marks keep the theme duration and easing, and under Reduce Motion they still change at once. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: the gesture host applies a recognizer's own `selectionLock` to that recognizer's contact and imports no lock itself; a long press brings one only when it has a hold (a `minimumPressDuration` above 0), and `selectionLock: null` opts out. Not exported from the package entry point. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [fix] Where the primary pointer is fine (a mouse, a trackpad, a touchscreen laptop, a desktop pen tablet), the press feedback controller no longer registers a touch listener: it reads the primary pointer at the first finger or pen press and keeps its `touchcancel` listener only while that pointer is coarse. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: core's touch style keys stay literal, and a test pins every one to the touch presentation resolver's constants (`touchKeys`, internal to core). An imported `defineConsts` key compiles to a different StyleX priority than the same literal. No public export and no style changes. | ||
|
|
||
| @vjeux |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| --- | ||
| '@astryxdesign/core': patch | ||
| --- | ||
|
|
||
| [chore] Internal: the touch presentations' animator drives a pseudo-element such as a dialog's ::backdrop: a static filling animation holds its value after a curve ends and after `set`, a custom property on its host promotes it, and a Reduce Motion dip borrows and hands back the pseudo-element's own opacity. Not exported from the package entry point. | ||
|
|
||
| @vjeux |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"A mouse on a desktop keeps
:active" contradicts.changeset/press-fine-pointer.mdin the same head, which says a mouse press now paints "in place of the browser's:active". Released together, both would appear in the same@astryxdesign/corenotes.gesture-host-owner.mdandgestures-every-pointer.mddisagree the same way about listeners under a fine pointer.