diff --git a/CHANGELOG.md b/CHANGELOG.md index 9dcc449..0dd1300 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). the command line tools. ### Fixed +- Pressing a or 1 when editing note values in hex mode created a note off line + ([#162][i162]) - Warn about plugin sample rate being different from 44100 only after ProcessFloatFunc has been called, so that host has time to set the sample rate after initialization. @@ -234,3 +236,4 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). [i149]: https://github.com/vsariola/sointu/issues/149 [i150]: https://github.com/vsariola/sointu/issues/150 [i158]: https://github.com/vsariola/sointu/issues/158 +[i162]: https://github.com/vsariola/sointu/issues/162 diff --git a/tracker/gioui/note_editor.go b/tracker/gioui/note_editor.go index 9274664..c21a0c4 100644 --- a/tracker/gioui/note_editor.go +++ b/tracker/gioui/note_editor.go @@ -339,15 +339,6 @@ func noteAsValue(octave, note int) byte { } func (te *NoteEditor) command(gtx C, t *Tracker, e key.Event) { - if e.Name == "A" || e.Name == "1" { - t.Model.Notes().Table().Fill(0) - if step := t.Model.Step().Value(); step > 0 { - te.scrollTable.Table.MoveCursor(0, step) - te.scrollTable.Table.SetCursor2(te.scrollTable.Table.Cursor()) - } - te.scrollTable.EnsureCursorVisible() - return - } var n byte if t.Model.Notes().Effect(te.scrollTable.Table.Cursor().X) { if nibbleValue, err := strconv.ParseInt(string(e.Name), 16, 8); err == nil { @@ -356,6 +347,15 @@ func (te *NoteEditor) command(gtx C, t *Tracker, e key.Event) { goto validNote } } else { + if e.Name == "A" || e.Name == "1" { + t.Model.Notes().Table().Fill(0) + if step := t.Model.Step().Value(); step > 0 { + te.scrollTable.Table.MoveCursor(0, step) + te.scrollTable.Table.SetCursor2(te.scrollTable.Table.Cursor()) + } + te.scrollTable.EnsureCursorVisible() + return + } if val, ok := noteMap[e.Name]; ok { n = noteAsValue(t.OctaveNumberInput.Int.Value(), val) t.Model.Notes().Table().Fill(int(n))