LoVisual/frontend/src/features
loki5512344 ab86078ca3
perf(frontend): stop theme switches from janking the whole page
Two inherited-custom-property transitions were forcing a full style
recalculation on every animation frame during a theme switch:

- html transitioned --color-ice/--page-accent-glow (inherits: true),
  both read by dozens of selectors site-wide (buttons, links, glows,
  color-mix() gradients) -- animating them recomputed style for every
  element that references them, across the whole page, not just the
  swatch that was clicked.
- .lv-gui (the ClickGui replica used in ThemeStrip, HudPlayground, the
  login backdrop and the theme editor panel) transitioned 21 inherited
  custom properties at once, including per-row/per-tab ones
  (--gui-row-*, --gui-tab-*, --gui-menu-*) -- with a long module list
  that's the same cost multiplied by every row/tab in the tree.

Both now snap instantly instead of transitioning; .lv-gui keeps a
300ms cross-fade but only on the ~8 properties that read as "the
theme" (window/header/stroke/text/accent/panel), not per-row state.

Claude-Session: https://claude.ai/code/session_01F1M1Jic1wTSn4igUENynmZ
2026-09-30 10:37:40 +02:00
..
account fix(frontend): avatar history strip fills in without a reload 2026-09-29 10:14:18 +02:00
auth feat(frontend): full redesign of login/register 2026-09-30 10:30:53 +02:00
clickgui perf(frontend): stop theme switches from janking the whole page 2026-09-30 10:37:40 +02:00
configs feat(frontend): avatar upload QOL — feedback, re-crop, drop, progress, history 2026-09-28 22:56:01 +02:00
device-link feat(frontend): avatar upload QOL — feedback, re-crop, drop, progress, history 2026-09-28 22:56:01 +02:00
download feat(download): two-button page with the jar served by our backend 2026-09-29 18:39:40 +02:00
landing feat(download): two-button page with the jar served by our backend 2026-09-29 18:39:40 +02:00
profile feat(frontend): avatar upload QOL — feedback, re-crop, drop, progress, history 2026-09-28 22:56:01 +02:00
showcase feat(frontend): avatar upload QOL — feedback, re-crop, drop, progress, history 2026-09-28 22:56:01 +02:00
themes feat(frontend): redesign the theme editor page 2026-09-30 10:28:59 +02:00