Add fx components 291-320 and the home scene; Kit.Shot, Kit.Toward

Palette cycling, sky, sun and moon, clouds, starfield, rain, snow,
petals, leaves, fireflies, waterfall, ocean, campfire, lava, aurora,
lightning, mountains and a season scene; scanlines, vignette, screen
shake, flash, dither fades, iris wipes, dissolves, mosaics, glitches,
sparkles, explosions and confetti. Home opens on a live scene in the
palette's season and a strip of all eight palettes.

pixel adds Canvas.Cycled, Sprite.At, SpriteOf, Kit.Toward and
Kit.Shot, which spends a cue under Reduce Motion so it never replays;
display exports Reduce. Gallery grids and the sidebar are one Tab
stop each.
This commit is contained in:
ZacharyZhang-NY committed 2026-10-12 04:05:25 -04:00
1 parent 86a6901333
commit 8be66c09f2
56 files changed
+3324 -101

No files matched your search

+19
View File
@@ -54,6 +54,25 @@ func TestDrawerSlidesInInSteps(t *testing.T) {
}
}
func TestDrawerOpenedUnderReduceMotionNeverSlides(t *testing.T) {
clk, open := newClock(), false
tt := view(640, 400, clk, false, func(c *ui.Context) {
overlay.Drawer(c, "Menu", &open, overlay.DrawerOptions{Side: display.Right, Size: 100}, func() {
pixel.Text(c, "Items", pixel.TextOptions{})
})
})
tt.SetPreferences(ui.Preferences{ReduceMotion: true, TextScale: 1})
open = true
// At rest the panel's text sits at 640-200+16.
for _, reduce := range []bool{true, false} {
tt.SetPreferences(ui.Preferences{ReduceMotion: reduce, TextScale: 1})
tt.Frame()
if x := find(t, tt, "Items").X; x != 456 {
t.Fatalf("reduce %v: the drawer's text is at %v", reduce, x)
}
}
}
func TestSheetClosesOnALongPull(t *testing.T) {
open, closed := true, 0
tt := view(640, 400, newClock(), false, func(c *ui.Context) {