From 647bde2cf4e2585c42415b468533d011ff2e47ca Mon Sep 17 00:00:00 2001 From: Mistral Vibe Date: Tue, 7 Apr 2026 13:42:04 +0000 Subject: [PATCH] Optimize song view: remove queue section and center comments on mobile - Removed 'Up next in Session' queue section to declutter mobile view - Added responsive layout that stacks waveform and comments vertically on mobile - Centered comment panel on mobile with max-width constraint - Removed unused queueSongs variable Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe --- web/src/pages/SongPage.tsx | 75 +++++++++++++------------------------- 1 file changed, 26 insertions(+), 49 deletions(-) diff --git a/web/src/pages/SongPage.tsx b/web/src/pages/SongPage.tsx index 7241b16..a810dda 100644 --- a/web/src/pages/SongPage.tsx +++ b/web/src/pages/SongPage.tsx @@ -409,9 +409,7 @@ export function SongPage() { } }, []); - // ── Queue: other songs in the session ──────────────────────────────────── - const queueSongs = session?.songs?.filter((s) => s.id !== songId) ?? []; // ── Styles ──────────────────────────────────────────────────────────────── @@ -511,11 +509,11 @@ export function SongPage() { - {/* ── Body: waveform/queue | comments ────────────────────────────── */} -
+ {/* ── Body: waveform | comments ────────────────────────────────── */} +
- {/* ── Left: waveform + transport + queue ───────────────────────── */} -
+ {/* ── Left: waveform + transport ──────────────────────────────── */} +
{/* Waveform card */}
- {/* Queue */} - {queueSongs.length > 0 && ( -
-
- Up next in session -
-
- {queueSongs.map((s, i) => ( - - ))} -
-
- )} +
{/* ── Right: comment panel ──────────────────────────────────────── */}
{/* Header */} @@ -965,6 +924,24 @@ export function SongPage() { 0%, 100% { opacity: 1; } 50% { opacity: 0.3; } } + + /* Responsive layout for mobile */ + @media (max-width: 768px) { + .song-page-body { + flex-direction: column; + } + .waveform-section { + padding: 12px 16px; + } + .comment-panel { + width: 100% !important; + min-width: auto !important; + border-left: none; + border-top: 1px solid rgba(255,255,255,0.055); + margin: 0; + max-width: 600px; + } + } `}
);