summaryrefslogtreecommitdiff
path: root/src/client/qwaylandinputdevice.cpp
diff options
context:
space:
mode:
authorAleix Pol <aleixpol@kde.org>2021-03-10 01:09:13 +0100
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2021-04-13 02:20:37 +0000
commit34b066db62d807655f2f39d5eb173a771cbe5b10 (patch)
tree4cf55385210f0f42ffbe543c0ef948f029e4f248 /src/client/qwaylandinputdevice.cpp
parent2c429f742b5593bf9a3f6e90d60f76ed434d4946 (diff)
downloadqtwayland-34b066db62d807655f2f39d5eb173a771cbe5b10.tar.gz
client: Allow QWaylandInputContext to accept composed key combinations
At the moment, we are forcing user to choose to either compose or use the text-input channel. This patch brings some of the QComposeInputContext functionality in order to let applications understand dead key combinations like they are supposed to. Having it in QWaylandInputContext rather than in QWaylandInputDevice should solve the problems 3aedd01271dc4f4a13103d632df224971ab2b6df had with 57c4af2b18c0fb1d266b245a107fa6cb876b9d9e, because we are doing it in the input context rather than before. This way, if the user is overriding the input method (e.g. by setting QT_IM_MODULE), all the key strokes will still be properly forwarded to the module to use. This in turn allows us to solve https://bugs.kde.org/show_bug.cgi?id=411729 and https://bugs.kde.org/show_bug.cgi?id=405388 since we don't need to choose anymore between physical and virual keyboards anymore. Change-Id: I8601f5d7ae21edf4b3a1191fa75877286e505588 Reviewed-by: David Edmundson <davidedmundson@kde.org> (cherry picked from commit cca1b94190a094b5d1d7ce492b6533e2d330c5e8) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src/client/qwaylandinputdevice.cpp')
-rw-r--r--src/client/qwaylandinputdevice.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/client/qwaylandinputdevice.cpp b/src/client/qwaylandinputdevice.cpp
index 9c80bceb..3a61ced4 100644
--- a/src/client/qwaylandinputdevice.cpp
+++ b/src/client/qwaylandinputdevice.cpp
@@ -1201,7 +1201,7 @@ void QWaylandInputDevice::Keyboard::handleKey(ulong timestamp, QEvent::Type type
QPlatformInputContext *inputContext = QGuiApplicationPrivate::platformIntegration()->inputContext();
bool filtered = false;
- if (inputContext && !mParent->mQDisplay->usingInputContextFromCompositor()) {
+ if (inputContext) {
QKeyEvent event(type, key, modifiers, nativeScanCode, nativeVirtualKey,
nativeModifiers, text, autorepeat, count);
event.setTimestamp(timestamp);