From cd311d8145aca77b11d7cca12b6360e87cea1067 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Kr=C3=BCger?= Date: Wed, 19 Nov 2025 10:50:09 +0100 Subject: [PATCH] fix: make only waveform area scrollable, keep track controls fixed MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixed horizontal scrollbar implementation to only scroll the waveform content area while keeping track controls fixed in the viewport. Changes: - Wrapped waveform content in a scrollable container with overflow-x-auto - Moved minWidth calculation to inner container - Track controls now stay fixed at 192px width - No scrollbar appears on initial track load - Scrollbar only appears when zooming extends content beyond viewport Resolves issue where entire track row (including controls) was scrolling out of view when zoomed in. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- components/tracks/Track.tsx | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/components/tracks/Track.tsx b/components/tracks/Track.tsx index c19d3d2..8aa0670 100644 --- a/components/tracks/Track.tsx +++ b/components/tracks/Track.tsx @@ -604,7 +604,7 @@ export function Track({ )} > {/* Top: Track Row (Control Panel + Waveform) */} -
+
{/* Left: Track Control Panel (Fixed Width) - Ableton Style */}
- {/* Right: Waveform Area (Flexible Width) */} -
+ {/* Right: Waveform Area (Flexible Width) - Scrollable */} +
+ {/* Inner container with dynamic width */} +
{/* Delete Button - Top Right Overlay */}
-
+
{/* Close inner container with minWidth */} +
{/* Close waveform scrollable area */} +
{/* Close track row */} {/* Automation Lane */} {!track.collapsed && track.automation?.showAutomation && (() => {