BetterFrame/kiosk
Mitchell R 6bad53da37 feat(kiosk): per-cell morph animation on layout swap
When the active layout switches, cells that exist in both old + new (same
camera, same URL, same HTML) now slide + scale from their old screen
position to the new one over 350ms (ease-out cubic). Fresh cells fade in;
removed cells fade out where they were.

Implementation:
- Each cell widget gets a stable widget_name (cam:<id>:<selector>,
  web:<url>, html:<hash>) so old/new can be matched.
- Before swap, capture each cell's bounds + a WidgetPaintable snapshot.
- New grid wrapped in an Overlay; a Fixed ghost layer hosts the animated
  Picture widgets driven by add_tick_callback + ease-out cubic.
- Once the window finishes the animation timer, the overlay is unwrapped
  back to a plain grid so subsequent renders don't accumulate layers.
2026-05-18 11:15:30 +02:00
..
src feat(kiosk): per-cell morph animation on layout swap 2026-05-18 11:15:30 +02:00
Cargo.lock fix(kiosk): complete hot/warm/cooling/cold state machine 2026-05-13 02:59:22 +02:00
Cargo.toml feat(kiosk): LAN-side local HTTP server (GET layout API + admin proxy) 2026-05-14 07:24:21 +02:00
prototype.sh fix(deploy): require proxied local services 2026-05-11 09:51:00 +02:00