diff options
Diffstat (limited to 'src/virtualkeyboard/platforminputcontext.cpp')
-rw-r--r-- | src/virtualkeyboard/platforminputcontext.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/virtualkeyboard/platforminputcontext.cpp b/src/virtualkeyboard/platforminputcontext.cpp index fc229f52..d57a63e4 100644 --- a/src/virtualkeyboard/platforminputcontext.cpp +++ b/src/virtualkeyboard/platforminputcontext.cpp @@ -243,7 +243,17 @@ void PlatformInputContext::sendEvent(QEvent *event) void PlatformInputContext::sendKeyEvent(QKeyEvent *event) { const QGuiApplication *app = qApp; - QWindow *focusWindow = app ? app->focusWindow() : nullptr; + QWindow *focusWindow = nullptr; + if (app) { + if (QT_VIRTUALKEYBOARD_FORCE_EVENTS_WITHOUT_FOCUS) { + if (!app->allWindows().isEmpty()) { + focusWindow = app->allWindows().first(); + } + } + else { + focusWindow = app->focusWindow(); + } + } if (focusWindow) { m_filterEvent = event; QGuiApplication::sendEvent(focusWindow, event); |