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:
@@ -1080,3 +1080,29 @@ footer {
|
||||
}
|
||||
.triage-project:hover { border-color: var(--accent, #58a6ff); }
|
||||
.triage-project-count { color: var(--text-3); }
|
||||
|
||||
/* ── Wallboard : navigation manuelle (0.11.0) ── */
|
||||
.wall-nav {
|
||||
position: fixed; left: 50%; bottom: 22px; transform: translateX(-50%);
|
||||
display: flex; align-items: center; gap: 14px; z-index: 50;
|
||||
}
|
||||
.wall-nav-btn {
|
||||
width: 46px; height: 46px; border-radius: 50%;
|
||||
background: rgba(19, 26, 41, 0.72); color: #dbe4f0;
|
||||
border: 1px solid rgba(143, 163, 191, 0.45);
|
||||
font-size: 1.15rem; cursor: pointer; backdrop-filter: blur(4px);
|
||||
}
|
||||
.wall-nav-btn:hover { border-color: #58a6ff; color: #fff; }
|
||||
.wall-dots { display: flex; gap: 8px; }
|
||||
.wall-dot {
|
||||
width: 13px; height: 13px; border-radius: 50%; padding: 0;
|
||||
background: rgba(143, 163, 191, 0.35); border: 1px solid rgba(143, 163, 191, 0.5);
|
||||
cursor: pointer;
|
||||
}
|
||||
.wall-dot.on { background: #58a6ff; border-color: #58a6ff; }
|
||||
.wall-paused {
|
||||
position: fixed; top: 18px; left: 50%; transform: translateX(-50%);
|
||||
background: rgba(19, 26, 41, 0.85); color: #f0b429;
|
||||
border: 1px solid rgba(240, 180, 41, 0.55); border-radius: 99px;
|
||||
padding: 6px 16px; font-size: 0.95rem; z-index: 51;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user