aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-07-12 20:30:07 -0500
committerCraig Jennings <c@cjennings.net>2026-07-12 20:30:07 -0500
commit70507b703223e63dd696fe66521dd702c94945a6 (patch)
tree971881c3e3a6536a7a985666d9a0d994ecb44e42 /docs
parentb062359a93a6b3308d98e4318bb8623f8a00220a (diff)
downloadarchsetup-70507b703223e63dd696fe66521dd702c94945a6.tar.gz
archsetup-70507b703223e63dd696fe66521dd702c94945a6.zip
feat(gallery): persist the widget-size choice across refreshes
The S/M/L pick saves to localStorage alongside the validation lamps and restores on load, falling back to the default M when unset or invalid.
Diffstat (limited to 'docs')
-rw-r--r--docs/prototypes/panel-widget-gallery.html5
1 files changed, 5 insertions, 0 deletions
diff --git a/docs/prototypes/panel-widget-gallery.html b/docs/prototypes/panel-widget-gallery.html
index 99342bc..168a50c 100644
--- a/docs/prototypes/panel-widget-gallery.html
+++ b/docs/prototypes/panel-widget-gallery.html
@@ -692,8 +692,13 @@ const $ = id => document.getElementById(id);
const reduced = matchMedia('(prefers-reduced-motion: reduce)').matches;
document.querySelectorAll('.szbar .key').forEach(b=>b.addEventListener('click',()=>{
document.body.dataset.size=b.dataset.sz;
+ localStorage.setItem('gv-size',b.dataset.sz);
document.querySelectorAll('.szbar .key').forEach(k=>k.classList.toggle('on',k===b));
}));
+(function(){const s=localStorage.getItem('gv-size');
+ if(!s||!/^[123]$/.test(s))return;
+ document.body.dataset.size=s;
+ document.querySelectorAll('.szbar .key').forEach(k=>k.classList.toggle('on',k.dataset.sz===s));})();
/* boost the intrinsically tiny widgets (audit: content under 10% of the stage) */
const BOOST=['01','07','08','12','13','N14','18'];