Repository navigation
feat(lab): TabBar — a bottom accessory #8172
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
Closed
Closed
Changes from 250 commits
Commits
Show all changes
1834 commits
Select commit
Hold shift + click to select a range
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 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 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 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 45b25e4
Merge #8320 (cixzhang's ea8531cd9b: the scroll-edge hold for a lone f…
vjeux 2fd9697
Merge #8336 (#8076 3bfd7c32da; the coarse-pointer query in utils/) in…
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 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 b16ea42
fix(core): restore the gesture line's press feedback, which a formatt…
vjeux 96b66ab
Merge the layer below into this layer
vjeux c177f89
Merge the layer below into this layer
vjeux f334d07
Merge the layer below into this layer
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 844e5c8
chore(core): this stack leaves core's direction helper as main has it
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 cc7aec0
test(lab): a held finger never starts text selection on the bar
vjeux b87dc44
Merge the layer below into this layer
vjeux 19bb9de
Merge the layer below into this layer
vjeux 1ee2b33
Merge the layer below into this layer
vjeux 83d0452
Merge the gesture line's fY head (#8320 @ 2fd96979f0) into the TabBar…
vjeux 07fe6f8
Merge the animator line (#8340 @ f5ac3e8904) into the TabBar stack
vjeux ff472f9
Merge Core's internal entries, re-folded onto main (#8562 @ abb3e0fb5…
vjeux 9d0530d
refactor(lab): TabBar reads Core through its internal entries
vjeux ebf0be5
Merge the layer below into this layer
vjeux f3455e3
Merge the layer below into this layer
vjeux 115a5e3
Merge the layer below into this layer
vjeux 3b8972f
Foundation for #8129's review link (not a pull request)
vjeux 088e13a
Merge the gesture line's fZ head (#8320 @ 3d7fa2ebcb) into the TabBar…
vjeux 80a12cb
Merge the foundation snapshot behind #8129's review link (tree unchan…
vjeux 7d96b4e
Merge the layer below into this layer
vjeux c88c29f
Merge the layer below into this layer
vjeux ffa1189
Merge the layer below into this layer
vjeux 47e9e85
Merge #8076 (e6ab0b9cd9: the animator reads no style for a node out o…
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 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 f562631
Merge #8358 (the host takes a finger once where it reads its pointer …
vjeux 598be90
Merge main (a63eb54f56: #8465 merged, one shared touch module) into C…
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 4d8fbe3
Foundation for #8129's review link (not a pull request)
vjeux 5e4795f
Merge Core's internal entries, re-folded onto main's shared touch mod…
vjeux 493f443
Merge the foundation snapshot behind #8129's review link (tree unchan…
vjeux 6c38c4e
Merge the layer below into this layer
vjeux 9cb76d3
Merge the layer below into this layer
vjeux c6a6b5f
Merge the layer below into this layer
vjeux 3fb31dd
Merge main (6aea9bda01: #8663 merged, one release policy) into the ex…
vjeux 9718a3d
Merge #8076 (3fb31ddb3e: main 6aea9bda merged, #8663's release policy…
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 0705f1d
Foundation for #8129's review link (not a pull request)
vjeux e392692
Merge the gesture line's fZ2 head (#8320 @ ca71fce61a) into the TabBa…
vjeux 2256331
Merge the foundation snapshot behind #8129's review link (tree unchan…
vjeux 99b2d0f
Merge the layer below into this layer
vjeux 1ceac20
Merge the layer below into this layer
vjeux 78dca18
Merge the layer below into this layer
vjeux c996c19
Foundation for #8129's review link (not a pull request)
vjeux d5d09cc
Merge the animator line, re-folded onto the touch foundation (#8340 @…
vjeux 60c8838
Merge the foundation snapshot behind #8129's review link (tree unchan…
vjeux 5f8da3f
Merge the layer below into this layer
vjeux b3eee5b
Merge the layer below into this layer
vjeux f972e82
Merge the layer below into this layer
vjeux 4f8d37b
Merge main (39ed04d76f) into Core's internal entries
vjeux cd3ad72
test(core): resolveSnapPoint stays internal, checked against public e…
vjeux 389db4e
fix(core): usePressTracker rebuilds its tracker when its options change
vjeux 3901418
Foundation for #8129's review link (not a pull request)
vjeux 68ddc2e
Merge Core's internal entries, on main 39ed04d76f (#8562 @ cd3ad72a1f…
vjeux c1c2ac3
Merge the foundation snapshot behind #8129's review link (tree unchan…
vjeux e8726cd
Merge the layer below into this layer
vjeux 6939694
Merge the layer below into this layer
vjeux 8cadef6
Merge the layer below into this layer
vjeux b6a910d
fix(core): a presented call's curve that a later one's channel holds …
vjeux 5588013
test(core): only the utils entry is pinned gesture-free; the root and…
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 43efaf0
test(lab): the TabBar accessory's busy-window proof blocks as its mov…
vjeux b039876
test(core): the held-dip proofs wait for the dip to finish, not for 2…
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 b390514
Merge #8358 (useLongPress measures its tolerance on each axis again, …
vjeux 5f6bc04
refactor(useLongPress): the per-press tolerance stays off the public …
vjeux 5636933
docs(core,lab): the tab-bar springs are internal motion roles (spec:A…
vjeux 8a891e6
docs(core,lab): the tab-bar springs are internal motion roles (spec:A…
vjeux e2e1094
docs(core,lab): the tab-bar springs are internal motion roles (spec:A…
vjeux ee6bc8b
test(lab): TabBar's slide and collapse busy-window proofs block as th…
vjeux c83ae69
docs(core,lab): the tab-bar springs are internal motion roles (spec:A…
vjeux e7b0676
fix(core): a motion from rest that a block delays starts after it in …
vjeux 7f2aa46
test(core): the after-block start is judged on the first frame after …
vjeux 4e2895d
Merge #8076 (389db4e90a: usePressTracker rebuilds its tracker when it…
vjeux 11c3536
fix(core): a handle's finished waits while a sampler holds its animation
vjeux 3846b6a
Merge main 70ea85903c into #8073
vjeux ca2543d
Merge remote-tracking branch 'origin/main' into HEAD
cixzhang 10c62f5
test(core): a mouse press ending early leaves a held row to its owner
vjeux fdf8766
fix(core): a press ended early clears its paint through the one writer
vjeux 63128d3
test(core): pressFeedback.test.ts drops its unused durationToMs import
vjeux f24e872
Merge #8446 ca2543df75 and #8073 63128d3530 into #8076
vjeux 8c70274
Merge main (70ea8590: #8045, #8046 landed)
cixzhang 6f994bc
docs(core): the gestures README names both writers of the press attri…
vjeux 8daabc8
Merge #8076 6f994bcdfb into #8360
vjeux 73e90c2
docs(core): pressFeedback says paintPress writes the presses it track…
vjeux 323a8fd
docs(changeset): the press-tracking changeset names both writers of t…
vjeux f3b1290
test(useMenuPress): a finger held on the trigger keeps FR29's drift a…
vjeux 1e1431f
fix(useMenuPress): a finger held on the trigger keeps FR29's drift al…
vjeux 3dafeb8
Merge #8360 1e1431fe2f and main 90da4a77b6 into #8340
vjeux 1682f96
chore(gestures): the gesture files on this line have no unused bindings
vjeux 856c4d1
test(gestures): a rotation re-based on every change releases at its r…
vjeux 8310bcb
fix(gestures): a re-based rotation keeps its release velocity
vjeux fe7f5f9
test(motion): the Reduce Motion late-dip proof reads what the dip ani…
vjeux e4713e8
test(gestures): a finger inside an open shadow root is down in its sc…
vjeux 839b33c
fix(gestures): a finger inside an open shadow root is compared along …
vjeux 01d358b
test(gestures): an element stays an action group while any of its att…
vjeux 1251af1
fix(gestures): an element is an action group while any of its attachm…
vjeux 826534b
test(gestures): a tap on a moving sheet's shadow-root content reaches…
vjeux 66e17cb
fix(gestures): the presented hit test descends into open shadow roots
vjeux 1bf9da8
test(gestures): no touch-action rule stays once the last marked eleme…
vjeux db3d3f7
fix(gestures): a document's or shadow root's touch-action rules go wi…
vjeux 82579aa
docs(gestures): presented hit testing names its review condition, and…
vjeux 955fed4
docs(gestures): the README and the barrel point Lab at @astryxdesign/…
vjeux 38acf83
docs(core): the input stream's notes name the stops it fixes, what st…
vjeux 121937a
docs(changeset): the build changeset names the treeshakeCompensation …
vjeux 2e2f92a
test(gestures): real-touch proofs for a still finger's sub-pixel jitt…
vjeux 75392b2
test(gestures): a retargeted tap with only watchers attached activate…
vjeux 339a352
Merge #8360 75392b296a into #8340
vjeux 045f666
docs(core): the input stream's notes no longer list click among the g…
vjeux becc44d
Merge #8360 @ 045f666f7a into the TabBar stack
vjeux d38fc3d
Merge #8340 @ 339a352e88 into the TabBar stack
vjeux bbc0a4a
Foundation for #8129's review link (not a pull request)
vjeux a4ef8f3
Merge the foundation snapshot behind #8129's review link (tree unchan…
vjeux fdba3c4
test(lab): TabBar's tab list is always named, and the aria naming pro…
vjeux 1af14c0
fix(lab): TabBar's tab list is always named, and aria-label reaches it
vjeux de20800
docs(core,lab): the tab bar's springs play as measured
vjeux 94bba42
docs(lab): the lens's selection Effect says what it synchronizes
vjeux 7839692
Merge #8129's fixes into this layer
vjeux 5347ce3
test(lab): a TabBar press ends without a choice when the tab list cha…
vjeux 4f58312
fix(lab): a TabBar press ends without a choice when the tab list chan…
vjeux 66273b6
Merge #8141's fixes into this layer
vjeux 0f0448a
test(lab): TabBar's collapsed circle, scroll run and mounting
vjeux d287041
fix(lab): TabBar's collapsed circle is one button, and the scroll run…
vjeux c0f9ea0
Merge #8154's fixes into this layer
vjeux 1fd10ed
test(lab): the bottom accessory's content stays in its glass, and a t…
vjeux f6716db
fix(lab): the bottom accessory's content stays in its glass, and a tu…
vjeux 91fa349
test(lab): the no-scrollend case removes the handler from the global …
vjeux eba4755
Merge #8154's test fix into this layer
vjeux 55180a4
Restore files the #8129 merge reformatted
vjeux 760fb10
Merge #8141's restored files into this layer
vjeux 955acf2
Merge #8154's restored files into this layer
vjeux f2e52c1
test(lab): the second-landing case sends its events back to back
vjeux 0056d05
Merge #8141's test fixes into this layer
vjeux 1c426ab
Merge #8154's test fixes into this layer
vjeux c919a39
test(lab): the accessory's turn comes early and is measured against a…
vjeux 646c150
test(lab): the accessory's turn is predicted from its animations' sta…
vjeux ff6c905
docs(lab): the press Effects name what they synchronize
vjeux c304f0d
Merge #8141's review fixes into this layer
vjeux 5f4e586
docs(lab): activating the collapsed circle expands the bar
vjeux 6752122
Merge #8154's review fixes into this layer
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. The `{stylexOptions}` form now passes StyleX `treeshakeCompensation: true` by default (before, its babel pass ran with StyleX's default, `false`), as the plugin form already does; pass `treeshakeCompensation: false` in `stylexOptions` to restore the old behavior. | ||
|
|
||
| @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 discover` lists the lab's new TabBar and TabBarItem among the official packages' components. | ||
|
|
||
| @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. Where the primary pointer is fine, the host attaches nothing and registers no listener, following the pointer when it changes; a recognizer that reads each event's pointer itself opts out with `perEventPointer`, and a press tracker with it paints a finger's press feedback only, with no control event and no mouse or pen press. 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. `paintPress` in `utils/pressFeedback.ts` writes `data-astryx-press` for every press it tracks; the action-group tracker writes its groups' presses itself. 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 | ||
| --- | ||
|
|
||
| [experimental] The message catalog gains `@astryx.tabBar.badgedItem` ("{label}, {badge}"): the spoken name the lab TabBar gives a tab that shows a badge, one message so a translation can reorder the two. | ||
|
|
||
| @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 hear page-wide input through one shared stream on the window's capture phase, so an app's window-capture `stopPropagation`, or a document-capture `stopImmediatePropagation` registered before Core, no longer hides a touch from them. A recognizer that must claim a touch mid-gesture still needs the touch to reach its element. Each event type's listener is passive unless a subscriber cancels it (the gesture host's `touchend` and `contextmenu` while a claiming recognizer or press tracker is attached, the page hold's `touchmove` while it holds, and the click guard's `click` once it first arms), so 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/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 under every primary pointer, a phone's, a tablet's and a touchscreen laptop's alike, as AST-094 FR29 allows; it cancelled past 10px. No menu, row or trigger reads 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 | ||
| --- | ||
|
|
||
| [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 | ||
| --- | ||
|
|
||
| [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
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 |
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
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: useAnimator, a React wrapper around the touch presentations' animator that never re-renders per frame, and browser proofs on the interaction harness that the animator's motion keeps running through a blocked main thread in Chromium and WebKit. 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 UIKit constants table's `tabBar` gains the measured values of the iOS 26 tab bar's bottom accessory: its height, its gap to the bar and to the minimized circle, and the springs it moves inline and back on. Not exported from the package entry point; the lab TabBar imports it by name. | ||
|
|
||
| @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 UIKit constants table's `tabBar` gains the measured values of the iOS 26 tab bar's minimize on scroll: the scroll distance that collapses it, the minimized circle's size, the lens's travel and size springs into and out of the circle, and a provisional fade spring for the items (`minimizeFade`, still a guess pending its measurement, M-TB1). Not exported from the package entry point; the lab TabBar imports it by name. | ||
|
|
||
| @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 UIKit constants table's `tabBar` gains the measured values of the iOS 26 tab bar's press: the selection lens's tracking and settle springs, its lift (outset, magnification, spring), the bar's flex (scale and springs) and the lens's rubber band past the first and last tabs. Not exported from the package entry point; the lab TabBar imports it by name. | ||
|
|
||
| @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 UIKit constants table gains `tabBar` (each value plays as measured: `registerTabBarTable()` lists no motion role): the iOS 26 tab bar's measured geometry (capsule, items, badge), its selection lens's travel spring, each with its source. Nothing else changes. Not exported from the package entry point; the lab TabBar imports it by name. | ||
|
|
||
| @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: `useFingerScroll(scroller)` tells a finger's scroll from the program's, and the gestures README gains a guide to migrating a raw-touch drag onto the recognizers. Internal to the touch components: not exported from the package entry point or the gestures barrel. | ||
|
|
||
| @vjeux |
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.
This
[fix]describes a change this head no longer makes:addListeners()inpackages/core/src/utils/pressFeedback.ts:490registerstouchcancelunconditionally, as the base does, since the coarse-pointer gating and its tests left this branch. Release notes would announce a fix that does not ship; drop this Changeset or restore the change it describes in its own pull request.