From 1aa5d5d8b45a5ddebf6e938dac79f9565fb51254 Mon Sep 17 00:00:00 2001 From: Robbert van der Helm Date: Mon, 21 Dec 2020 22:46:59 +0100 Subject: [PATCH] Add note to input focus grabbing This shouldn't be necessary for VST3, but it is. --- src/wine-host/editor.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/wine-host/editor.cpp b/src/wine-host/editor.cpp index 05f66f43..0d7dedf6 100644 --- a/src/wine-host/editor.cpp +++ b/src/wine-host/editor.cpp @@ -346,10 +346,10 @@ void Editor::set_input_focus(bool grab) const { // back to that window when the user moves their mouse outside of the Wine // window while the host's window is still active (that's an important // detail, since plugins may have dialogs). - // FIXME: This should not be done for VST3 plugins since keyboard handling - // is part of `IPlugView`. Or at least, that's the idea. We have to - // figure out if plugins (and especially text input in things like - // FabFilter plugins) work without this. + // XXX: In theory we wouldn't have to do this for VST3 because + // `IPlugView::onKey{Down,Up}` should handle all keyboard events. But + // in practice a lot of hosts don't use that, so we still need to grab + // focus ourselves. xcb_set_input_focus(x11_connection.get(), XCB_INPUT_FOCUS_PARENT, grab ? parent_window : topmost_window, XCB_CURRENT_TIME);