summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.h
diff options
context:
space:
mode:
authorTakao Fujiwara <takao.fujiwara1@gmail.com>2015-08-25 14:54:31 +0900
committerFriedemann Kleint <Friedemann.Kleint@theqtcompany.com>2015-08-25 19:41:46 +0000
commit418824dc691fd7fe2fede6b9566f0c4db098e772 (patch)
treee81f126c4c94035d6061967a31b8e5e64a9c8ff4 /src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.h
parent4b5da50b29b79b899838685163ce01cfac01bc60 (diff)
ibus: Return correct scan code to windows
ibus keycode is qt scancode - 8 and needs to be returned to app windows as the right value. Use QWindowSystemInterface::handleExtendedKeyEvent() instead of QCoreApplication::sendEvent() in qtbase 5.6 to follow QXcbKeyboard::handleKeyEvent(). Also qApp->focusObject() returns QMdiChild which is a QWidget and that is not a QWindow. Task-number: QTBUG-47833 Change-Id: Ie634a86d7790d8093cfca2dc8666f726844ae654 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Diffstat (limited to 'src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.h')
-rw-r--r--src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.h b/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.h
index 91f15ea159..127db7df8b 100644
--- a/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.h
+++ b/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.h
@@ -38,6 +38,7 @@
#include <QtCore/qpointer.h>
#include <QtDBus/qdbuspendingreply.h>
#include <QLoggingCategory>
+#include <QWindow>
QT_BEGIN_NAMESPACE
@@ -51,23 +52,23 @@ class QIBusFilterEventWatcher: public QDBusPendingCallWatcher
public:
explicit QIBusFilterEventWatcher(const QDBusPendingCall &call,
QObject *parent = 0,
- QObject *input = 0,
+ QWindow *window = 0,
const Qt::KeyboardModifiers modifiers = 0,
const QVariantList arguments = QVariantList())
: QDBusPendingCallWatcher(call, parent)
- , m_input(input)
+ , m_window(window)
, m_modifiers(modifiers)
, m_arguments(arguments)
{}
~QIBusFilterEventWatcher()
{}
- inline QObject *input() const { return m_input; }
+ inline QWindow *window() const { return m_window; }
inline const Qt::KeyboardModifiers modifiers() const { return m_modifiers; }
inline const QVariantList arguments() const { return m_arguments; }
private:
- QPointer<QObject> m_input;
+ QPointer<QWindow> m_window;
const Qt::KeyboardModifiers m_modifiers;
const QVariantList m_arguments;
};