summaryrefslogtreecommitdiff
path: root/gtk2_ardour/lxvst_plugin_ui.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2018-11-01 19:14:25 +0100
committerRobin Gareus <robin@gareus.org>2018-11-01 20:09:20 +0100
commit3b1d9193ba30bbbe69734d6b2833a8096b60f2a9 (patch)
tree684906392ea47cc5fe9378f8c2772b721324e13d /gtk2_ardour/lxvst_plugin_ui.cc
parent197f5460dff915846cc2a1ce0d5a2118de4a78a4 (diff)
Prefer key-event dispatch over emulated events for VST plugins.
Diffstat (limited to 'gtk2_ardour/lxvst_plugin_ui.cc')
-rw-r--r--gtk2_ardour/lxvst_plugin_ui.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/gtk2_ardour/lxvst_plugin_ui.cc b/gtk2_ardour/lxvst_plugin_ui.cc
index baad5722ad..161ceabe47 100644
--- a/gtk2_ardour/lxvst_plugin_ui.cc
+++ b/gtk2_ardour/lxvst_plugin_ui.cc
@@ -141,10 +141,10 @@ LXVSTPluginUI::forward_key_event (GdkEventKey* gdk_key)
xev.xany.send_event = true; /* pretend we are using XSendEvent */
xev.xany.display = GDK_WINDOW_XDISPLAY (gdk_window->gobj());
- if (!_vst->state()->eventProc) {
- XSendEvent (xev.xany.display, xev.xany.window, TRUE, mask, &xev);
- } else {
+ if (_vst->state()->eventProc) {
_vst->state()->eventProc (&xev);
+ } else if (!dispatch_effeditkey (gdk_key)) {
+ XSendEvent (xev.xany.display, xev.xany.window, TRUE, mask, &xev);
}
}