diff --git a/src/components/layout/Sidebar.tsx b/src/components/layout/Sidebar.tsx index c50a8ca..043f16a 100644 --- a/src/components/layout/Sidebar.tsx +++ b/src/components/layout/Sidebar.tsx @@ -257,27 +257,35 @@ export function Sidebar({ -
- {/* Navigation */} -
+ {/* Top navigation stays pinned: Home + Spotify shortcut are + one-click destinations the user wants at hand regardless of + how deep into the playlist list they've scrolled. */} +
+ } + label={t("sidebar.nav.home")} + active={activeView === "home"} + onClick={() => setActiveView("home")} + /> + {showSpotify && ( } - label={t("sidebar.nav.home")} - active={activeView === "home"} - onClick={() => setActiveView("home")} + icon={} + label={t("sidebar.nav.spotify", "Spotify")} + active={activeView === "spotify"} + onClick={() => setActiveView("spotify")} /> - {showSpotify && ( - } - label={t("sidebar.nav.spotify", "Spotify")} - active={activeView === "spotify"} - onClick={() => setActiveView("spotify")} - /> - )} -
+ )} +
+ {/* Single scroll surface for everything below the pinned nav so + Ma musique and Playlists share the leftover vertical space + instead of fighting over it. Reported in #54: at 1080p with + Spotify enabled the playlist section collapsed to ~0 px + because `shrink-0` on Ma musique pinned its full 5-row + height. */} +
{/* ─── MA MUSIQUE ─── */} -
+
{t("sidebar.myMusic.title")}
-
+
{/* Pinned: Liked + Recent */} {pinnedRows.map((row) => (