@synopackageland/ui 0.25.19 → 0.25.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,18 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 0.25.20 (2026-11-14)
6
+
7
+ ### BottomSheet
8
+
9
+ - **The slide waits for the GPU to raster the sheet, and the scrim shows at once.** The sheet first draws in place at 1% opacity, with its slide held, so its tiles are rastered before it moves. The scrim starts fading in on the first frame instead of waiting, so a tap shows right away. The slide starts once two frames in a row arrive within 40 ms of each other (the GPU has caught up), or after 150 ms at most, counted from when the sheet's first frame starts rendering (not from that frame's timestamp, which can fall before a long click handler). Duration and easing are unchanged (250 ms in, 150 ms out, `--ui-ease-standard`). The sheet and the scrim keep the same `will-change` the whole time, so they stay on the same compositor layer and keep their tiles. A fast device waits about two frames. On Studio's ordering sheet on an Android phone (median of 3 alternating rounds against the previous build), the scrim shows in the sheet's first frame, about 200–235 ms after the tap, where it used to wait for the slide (about 245–270 ms). The longest gap during the slide is about the same (117–151 ms, was 117–134 ms). Most of the time before the first frame is the app's click handler (about 150 ms).
10
+ - **A lighter shadow:** the sheet casts the bar's short upward shadow (`--ui-shadow-bar`) instead of the dialog's 40px one. Under the scrim it looks the same, and the sheet rasters about a third faster. Desktop dialogs keep `--ui-shadow-dialog`.
11
+ - **Touch focus waits for the slide:** on touch, the panel takes focus when the opening animation ends, instead of in the opening task. Focusing there forced a style pass before the first frame (12–17 ms), and moving focus off the pressed card repainted the page under the sliding sheet. A field the user focuses first keeps focus. With a mouse, or after a key press, focus still moves at once (the first field, or the panel on touch), as before.
12
+
13
+ ### AppLayout
14
+
15
+ - **The phone nav drawer casts the card's short shadow** (`--ui-shadow-card`) instead of the dialog's 40px one. The scrim already sets it apart, and the wide blur slows its raster on a phone.
16
+
5
17
  ## 0.25.19 (2026-11-14)
6
18
 
7
19
  ### Button