From 76dfd103e7e2ada5961af019d5b8bcfb3f595e9f Mon Sep 17 00:00:00 2001 From: vsariola Date: Wed, 6 Jan 2021 15:04:32 +0200 Subject: [PATCH] feat(tracker): ctrl + arrow move cursor entire pattern --- tracker/keyevent.go | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/tracker/keyevent.go b/tracker/keyevent.go index b80f356..411859e 100644 --- a/tracker/keyevent.go +++ b/tracker/keyevent.go @@ -79,11 +79,19 @@ func (t *Tracker) KeyEvent(e key.Event) bool { } } case key.NameUpArrow: - t.CursorRow = (t.CursorRow + t.song.PatternRows() - 1) % t.song.PatternRows() + if e.Modifiers.Contain(key.ModCtrl) { + t.DisplayPattern = (t.DisplayPattern + t.song.SequenceLength() - 1) % t.song.SequenceLength() + } else { + t.CursorRow = (t.CursorRow + t.song.PatternRows() - 1) % t.song.PatternRows() + } t.NoteTracking = false return true case key.NameDownArrow: - t.CursorRow = (t.CursorRow + 1) % t.song.PatternRows() + if e.Modifiers.Contain(key.ModCtrl) { + t.DisplayPattern = (t.DisplayPattern + 1) % t.song.SequenceLength() + } else { + t.CursorRow = (t.CursorRow + 1) % t.song.PatternRows() + } t.NoteTracking = false return true case key.NameLeftArrow: