Phones get flat glass: no live blur, no baked layer

The touch fallback from 0.3.8 (a real backdrop-filter over the live
scene) was the wrong trade: every pane re-blurs on every frame while
the bubbles animate, and phones choke - input lag, "buttons take ages
to respond". Touch devices now drop both the bake (which mispaints
there) and the live blur: the panes keep the thin Ask-pill tint over
the sharp scene, and the hand-rolled activity fills keep their own
tints - transparent glass at zero per-frame cost. Desktop keeps the
baked blur.

tests/mobile-test.mjs pins the flat contract (no baked layer, no
backdrop-filter on a card) with a touch context: 124/124.
Contrast 0 findings, axe clean, chat 101/101, regression 44/44, i18n
13/13, native 33/33. Version 0.3.9, SW -> freezmo-v68.
This commit is contained in:
Martin Dvořák 2026-10-13 15:57:46 +00:00
commit 2b78dcf0d1
5 changed files with 29 additions and 17 deletions

View file

@ -1411,6 +1411,15 @@ Things I chose while building, with the reasoning:
pre-blurred wallpaper — the scene is clearly visible through the glass, and the
pixel-contrast scan still passes.
74. **Phones get flat glass, not live blur.** The touch fallback from 73 (a real backdrop blur
over the live scene) turned out to be the wrong trade: every pane re-blurs on every frame
while the bubbles animate, and phones choke — input lag, "buttons take ages to respond". Touch
devices now drop both the bake (which mispaints there) *and* the live blur: the panes keep the
thin Ask-pill tint over the sharp scene (the hand-rolled activity fills keep their own tints),
i.e. transparent glass at zero per-frame cost. Desktop keeps the baked blur — the same look as
the phones had, without the GPU bill. `tests/mobile-test.mjs` pins the flat contract (no baked
layer, no backdrop-filter on a card) with a touch context.
73. **Touch devices blur the live backdrop; desktop keeps the bake.** Mobile engines repaint
`background-attachment: fixed` late (and iOS treats it as scroll), so the baked glass showed a
stale crop of the wallpaper until a tap forced a repaint — "some of the UI looks bugged until I