From ad09a41542f7f64b8fd6e3d076967754c8997c96 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 2 Apr 2026 16:38:16 +0000 Subject: [PATCH] Add Start button and Home/End keys to editor for navigation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit After auto-scroll during preview, users couldn't easily navigate back to the beginning to reposition the play-from marker. Added: - "⏮ Start" button that resets scroll and play-from marker to beginning - Home key shortcut to do the same - End key shortcut to jump to end of piece https://claude.ai/code/session_01TLvDyKzUQekd9hzFuEJ5YX --- index.html | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/index.html b/index.html index 45981d6..5cc5793 100644 --- a/index.html +++ b/index.html @@ -197,6 +197,7 @@ canvas{display:block;} + @@ -5614,6 +5615,17 @@ function edKeyDown(e){ edSelRange=null;edSelected=-1;edPlayFromMarker=-1;edDraw();e.preventDefault();return; } + // Home key — scroll to start and reset play-from marker + if(e.key==="Home"){edGoToStart();e.preventDefault();return;} + + // End key — scroll to end of piece + if(e.key==="End"){ + var cv=getEdCanvas(); + var endT=edIsClassical?(edPiece&&edPiece.duration||90):4; + edScrollX=Math.max(0,endT*edPxPerUnit()-cv.width+50); + edDraw();e.preventDefault();return; + } + if((e.key==="Delete"||e.key==="Backspace")&&edSelected>=0){ edMelody.splice(edSelected,1); edSelected=-1; @@ -5753,6 +5765,12 @@ function edDurInfo(durSec){ return {sym:"\u266C\u266C",name:"32nd",val:0.125}; } +function edGoToStart(){ + edScrollX=0; + edPlayFromMarker=-1; + edDraw(); +} + function edStopPlayhead(){ edPlayhead=-1; if(edPlayheadRAF)cancelAnimationFrame(edPlayheadRAF);