feat(wall): navigation manuelle (flèches, boutons, pastilles) + position mémorisée + fix SSE

←/→ et contrôles à l'écran changent de projet; navigation manuelle
= pause de rotation 90 s; Espace = pause franche avec badge. La
position survit aux rechargements via sessionStorage (le cycle de
12 projets x 30 s dépassait le refresh de sécurité de 5 min: le
mur semblait figé). Fix: l'écoute SSE utilisait onmessage, inerte
pour les événements nommés 'gitea' du hub.
This commit is contained in:
Spark
2026-10-11 13:37:54 -04:00
parent 2bc8ccaf4f
commit 715687da66
3 changed files with 114 additions and 10 deletions
+8
View File
@@ -58,6 +58,14 @@
</section>
{% endfor %}
</div>
{% if not single and slides|length > 1 %}
<nav class="wall-nav" aria-label="Navigation des projets">
<button type="button" class="wall-nav-btn" id="wall-prev" title="Projet précédent (←)">❮</button>
<div class="wall-dots" id="wall-dots"></div>
<button type="button" class="wall-nav-btn" id="wall-next" title="Projet suivant (→)">❯</button>
<div class="wall-paused" id="wall-paused" hidden>⏸️ Rotation en pause — Espace pour reprendre</div>
</nav>
{% endif %}
{% else %}
<div class="wall-empty">
<h1>🖥️ Wallboard</h1>