Vkeybd: grab all key-events and use timer instead of key-repeat

Multimedia / Ardour - Robin Gareus [gareus.org] - 16 December 2019 14:02 EST

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.

322e6e08c4 Vkeybd: grab all key-events and use timer instead of key-repeat
gtk2_ardour/pianokeyboard.cc | 61 ++++++++++++++++++++
gtk2_ardour/pianokeyboard.h | 12 ++--
gtk2_ardour/virtual_keyboard_window.cc | 102 +++++++++++++++------------------
gtk2_ardour/virtual_keyboard_window.h | 7 +++
4 files changed, 123 insertions(+), 59 deletions(-)

  • Share