aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMarco Martin <notmart@gmail.com>2017-11-16 14:53:35 +0100
committerKai Uwe Broulik <kde@privat.broulik.de>2017-11-22 11:06:24 +0000
commitecda8f1ced1400ca399deafba04d1f7a6c55be62 (patch)
treecab32cfae79b0448f9c79251b04bd6b7fa43a01f /src
parenta0559ea88be32e19e83b2131cb26e61e873dc817 (diff)
watch for the actual render window if there is a QQuickRenderControl
if the scene is rendered by a QQuickRenderControl and we have a different target window (for instance QQuickWidget) we check the target window of the render control instead of the own window, this fixes window keyboard shortcuts for QQuickWidget Task-number: QTBUG-64548 Change-Id: I7614be580f2a707c752189e4c9b53a5d5f0159d7 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/quicktemplates2/qquickshortcutcontext.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/quicktemplates2/qquickshortcutcontext.cpp b/src/quicktemplates2/qquickshortcutcontext.cpp
index 6553beb4..92e4c04a 100644
--- a/src/quicktemplates2/qquickshortcutcontext.cpp
+++ b/src/quicktemplates2/qquickshortcutcontext.cpp
@@ -40,6 +40,7 @@
#include "qquickpopup_p.h"
#include <QtGui/qguiapplication.h>
+#include <QtQuick/qquickrendercontrol.h>
QT_BEGIN_NAMESPACE
@@ -77,6 +78,8 @@ bool QQuickShortcutContext::matcher(QObject *obj, Qt::ShortcutContext context)
item = popup->popupItem();
}
}
+ if (QWindow *renderWindow = QQuickRenderControl::renderWindowFor(qobject_cast<QQuickWindow *>(obj)))
+ obj = renderWindow;
return obj && obj == QGuiApplication::focusWindow() && !isBlockedByPopup(item);
default:
return false;