summaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
authorJoona Petrell <joona.t.petrell@nokia.com>2011-09-12 21:20:00 +0300
committerQt by Nokia <qt-info@nokia.com>2011-09-14 21:30:26 +0200
commit5926e4041acd3ca43acc54a28548e577d2f5cede (patch)
tree6287f82f33f1267ca9d95d164d967620e1d97612 /src/plugins
parent2aaa8a28d433a79dc4f53497f6fc1fea26d37629 (diff)
Fix warnings received when xcb platform is ran without ibus platforminputcontext
Warnings like QMetaObject::invokeMethod: No such method PlatformInputContext::x11FilterEvent(uint,uint,uint,bool) QMetaObject::invokeMethod: No such method PlatformInputContext::x11FilterEvent(uint,uint,uint,bool) QMetaObject::invokeMethod: No such method PlatformInputContext::x11FilterEvent(uint,uint,uint,bool) QMetaObject::invokeMethod: No such method PlatformInputContext::x11FilterEvent(uint,uint,uint,bool) Ibus is not always available and QPlatformInputContextFactory is allowed to load different input methods. Change-Id: Id498a5e024e6646e73ed4db2efe5b007e6601698 Reviewed-on: http://codereview.qt-project.org/4738 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/platforms/xcb/qxcbkeyboard.cpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/plugins/platforms/xcb/qxcbkeyboard.cpp b/src/plugins/platforms/xcb/qxcbkeyboard.cpp
index 907dd0f1b6..cb65a5106e 100644
--- a/src/plugins/platforms/xcb/qxcbkeyboard.cpp
+++ b/src/plugins/platforms/xcb/qxcbkeyboard.cpp
@@ -1029,13 +1029,14 @@ void QXcbKeyboard::handleKeyEvent(QWindow *window, QEvent::Type type, xcb_keycod
if (QObject* inputContext = QGuiApplicationPrivate::platformIntegration()->inputContext()) {
- bool retval;
- QMetaObject::invokeMethod(inputContext, "x11FilterEvent", Qt::DirectConnection,
- Q_RETURN_ARG(bool, retval),
- Q_ARG(uint, sym),
- Q_ARG(uint, code),
- Q_ARG(uint, state),
- Q_ARG(bool, type == QEvent::KeyPress));
+ bool retval = false;
+ if (inputContext->metaObject()->indexOfMethod("x11FilterEvent") != -1)
+ QMetaObject::invokeMethod(inputContext, "x11FilterEvent", Qt::DirectConnection,
+ Q_RETURN_ARG(bool, retval),
+ Q_ARG(uint, sym),
+ Q_ARG(uint, code),
+ Q_ARG(uint, state),
+ Q_ARG(bool, type == QEvent::KeyPress));
if (retval)
return;
}