mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-09 00:04:56 +01:00
Fix key-forwarding to linuxVST UIs
Tested with VeeSeeVST
This commit is contained in:
parent
a79fe23935
commit
d9fcab88f0
1 changed files with 2 additions and 3 deletions
|
|
@ -116,7 +116,7 @@ LXVSTPluginUI::forward_key_event (GdkEventKey* gdk_key)
|
||||||
mask = KeyPressMask;
|
mask = KeyPressMask;
|
||||||
break;
|
break;
|
||||||
case GDK_KEY_RELEASE:
|
case GDK_KEY_RELEASE:
|
||||||
xev.xany.type = KeyPress;
|
xev.xany.type = KeyRelease;
|
||||||
mask = KeyReleaseMask;
|
mask = KeyReleaseMask;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|
@ -133,14 +133,13 @@ LXVSTPluginUI::forward_key_event (GdkEventKey* gdk_key)
|
||||||
xev.xkey.x_root = 0;
|
xev.xkey.x_root = 0;
|
||||||
xev.xkey.y_root = 0;
|
xev.xkey.y_root = 0;
|
||||||
xev.xkey.root = gdk_x11_get_default_root_xwindow();
|
xev.xkey.root = gdk_x11_get_default_root_xwindow();
|
||||||
xev.xkey.window = _vst->state()->xid;
|
xev.xkey.window = _vst->state()->linux_plugin_ui_window ? _vst->state()->linux_plugin_ui_window : _vst->state()->xid;
|
||||||
xev.xkey.subwindow = None;
|
xev.xkey.subwindow = None;
|
||||||
xev.xkey.time = gdk_key->time;
|
xev.xkey.time = gdk_key->time;
|
||||||
|
|
||||||
xev.xany.serial = 0; /* we don't have one */
|
xev.xany.serial = 0; /* we don't have one */
|
||||||
xev.xany.send_event = true; /* pretend we are using XSendEvent */
|
xev.xany.send_event = true; /* pretend we are using XSendEvent */
|
||||||
xev.xany.display = GDK_WINDOW_XDISPLAY (gdk_window->gobj());
|
xev.xany.display = GDK_WINDOW_XDISPLAY (gdk_window->gobj());
|
||||||
xev.xany.window = _vst->state()->xid;
|
|
||||||
|
|
||||||
if (!_vst->state()->eventProc) {
|
if (!_vst->state()->eventProc) {
|
||||||
XSendEvent (xev.xany.display, xev.xany.window, TRUE, mask, &xev);
|
XSendEvent (xev.xany.display, xev.xany.window, TRUE, mask, &xev);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue