This is mostly a simple lexical search+replace but the absence of operator< for
std::weak_ptr<T> leads to some complications, particularly with Evoral::Sequence
and ExportPortChannel.
The virtual keyboard sends all events with the same timestamp.
When playing fast (mouse-sweep) note-on and note-off will have
the same timestamp.
Since dbd8089fb8, a393f75694 concurrent MIDI are sorted with note-off
first. This correctly handles events when played from the timeline:
note-on .. note-off|note-on ... note-off
But in case of a MIDI keyboard a note-off event must be send after
the note-on.
Otherwise the Simple QWERTY layout is loaded in the Virtual MIDI Keyboard
regardless of what is set in
Preferences->MIDI->Virtual Keyboard->Virtual Keyboard Layout
* remove Y-axis dependent velocity (difference between
black/white keys made this not very usable
* remove Bank/Patch selector (there are already three other
Bank/Patch UIs
* move keyboard-layout selection into Preferences > MIDI
This fixes an issue with arrow-keys (up/down, left/right). Those
were previously only handled when the Virtual Keyboard window itself
had focus.
Also key-repeat for pitch-bend is now ignored and a dedicated timer
is used to queue events. This fixes an issue with the first repeat
taking longer than successive ones, and makes this feature independent
of any desktop user settings.
This unconditionally returns the pitch-bend wheel when used
by mouse-drag/drop. Mouse-wheel retains the "wheel" mode.
<F1>-<F4> key-bindings have been added to jump to discrete values
- Fix key-bindings (first propagate to piano, ignore global bindings)
- Allow to switch octaves with left/right arrow key
- Tweak font-sizes used for annotations
* Reset default note range to 0..127 for step-entry and other users
* Allow to print label "C-<n>" on keyboard
* Fix 6 octave note range
* Save/load user settings in virtual-keyboard window
* fix key-range off-by-one 0..127
* allow to shift octave
* allow to configure note range
* highlight grand-piano range and keyboard-shortcut range
* proper piano layout (black key offsets)
* add support for DVORAK keyboard layout
(still incomplete: settings are not yet saved/restored,
_piano_key_velocity should become a HSliderController, ...)
* allow gtk_pianokeyboard to respond to y-axis click position
and include MIDI velocity with note-on signal
* add configuration settings to virual-keyboard
min/max velocity, keyboard-layout
* add a CC7 controller knob