From d8d68a80a39ec80251bc3d242e8a566b7d2c33cf Mon Sep 17 00:00:00 2001 From: Tim McCarthy Date: Fri, 10 Jul 2026 19:24:04 -0700 Subject: [PATCH] Pin event log across all phases --- frontend/src/assets/css/base.css | 8 +++++++- frontend/src/lib/changelog.js | 9 ++++++++- frontend/src/pages/Dashboard.svelte | 19 ++++++++++++++++--- 3 files changed, 31 insertions(+), 5 deletions(-) diff --git a/frontend/src/assets/css/base.css b/frontend/src/assets/css/base.css index a754f84..1b19c75 100644 --- a/frontend/src/assets/css/base.css +++ b/frontend/src/assets/css/base.css @@ -72,7 +72,7 @@ input[type="checkbox"] { .phase-view-layout { display: grid; - grid-template-columns: 180px minmax(0, 1fr); + grid-template-columns: 180px minmax(0, 1fr) minmax(300px, 0.8fr); gap: 1.5rem; align-items: start; } @@ -81,6 +81,12 @@ input[type="checkbox"] { min-width: 0; } +@media (min-width: 1101px) { + .phase-view-layout.log-collapsed { + grid-template-columns: 180px minmax(0, 1fr); + } +} + @media (max-width: 1100px) { .phase-view-layout { grid-template-columns: 1fr; diff --git a/frontend/src/lib/changelog.js b/frontend/src/lib/changelog.js index 139dc29..bce50d4 100644 --- a/frontend/src/lib/changelog.js +++ b/frontend/src/lib/changelog.js @@ -6,10 +6,17 @@ // - Add a CHANGELOG entry only when a commit changes something players can // see. Skip refactors, tests, and tooling. Keep wording player-facing. -export const VERSION = 24; +export const VERSION = 25; // Newest first. Each entry: { version, date: 'YYYY-MM-DD', changes: [string, ...] }. export const CHANGELOG = [ + { + version: 25, + date: '2026-07-10', + changes: [ + 'The Event Log now uses the same pinned column and fixed close/reopen control in every game phase.', + ], + }, { version: 24, date: '2026-07-10', diff --git a/frontend/src/pages/Dashboard.svelte b/frontend/src/pages/Dashboard.svelte index c35d84f..f76d8b2 100644 --- a/frontend/src/pages/Dashboard.svelte +++ b/frontend/src/pages/Dashboard.svelte @@ -33,6 +33,9 @@ let reconnectDelay = 1000; let destroyed = false; let staleSession = false; + // Non-scene phases use the same pinned Event Log column and fixed corner + // toggle that ScenePhase owns for the main play screen. + let phaseLogOpen = true; function discardStaleSession(message) { staleSession = true; @@ -223,7 +226,7 @@ {#if state.game.phase === 'scene'} {:else} -
+
{#if state.game.phase === 'lobby'} @@ -242,13 +245,23 @@
Unknown phase: {state.game.phase}
{/if}
+ {#if phaseLogOpen} +
+ (phaseLogOpen = false)} /> +
+ {/if}
{/if}
- {#if state.game.phase !== 'scene'} - + {/if}