aboutsummaryrefslogtreecommitdiffstats
path: root/src/virtualkeyboard/platforminputcontext.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/virtualkeyboard/platforminputcontext.cpp')
-rw-r--r--src/virtualkeyboard/platforminputcontext.cpp12
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);