summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforminputcontexts
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/platforminputcontexts')
-rw-r--r--src/plugins/platforminputcontexts/compose/qcomposeplatforminputcontext.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/plugins/platforminputcontexts/compose/qcomposeplatforminputcontext.cpp b/src/plugins/platforminputcontexts/compose/qcomposeplatforminputcontext.cpp
index 57fe7c2fa2..4e9828663f 100644
--- a/src/plugins/platforminputcontexts/compose/qcomposeplatforminputcontext.cpp
+++ b/src/plugins/platforminputcontexts/compose/qcomposeplatforminputcontext.cpp
@@ -40,6 +40,7 @@
#include <QtCore/QCoreApplication>
#include <QtGui/QKeyEvent>
+#include <QtGui/QGuiApplication>
#include <locale.h>
@@ -121,7 +122,14 @@ bool QComposeInputContext::filterEvent(const QEvent *event)
QInputMethodEvent event;
event.setCommitString(composedText);
- QCoreApplication::sendEvent(m_focusObject, &event);
+
+ if (!m_focusObject && qApp)
+ m_focusObject = qApp->focusObject();
+
+ if (m_focusObject)
+ QCoreApplication::sendEvent(m_focusObject, &event);
+ else
+ qCWarning(lcXkbCompose, "no focus object");
reset();
return true;