summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2024-03-08 10:20:10 +0100
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2024-03-10 19:19:58 +0000
commitd9c4088fa32cef1c9c22c432b6941a69758f1357 (patch)
tree230b34f2691ea4ffd78144613a893b43245d6031
parentc0978ce798c1d85a485f74a891d18516ef3409f8 (diff)
client: use current modifiers in repeat keys
This amends 35880c7e1021a379e3cdd4005edd53472b63856c . Fixes: QTBUG-123007 Pick-to: 6.6 6.5 6.2 5.15 Change-Id: I3b4e5d4a8304fd57558eec3897562895c294aadd Reviewed-by: David Edmundson <davidedmundson@kde.org> (cherry picked from commit 9ae6b38fef8a8ee7b3fbc0311216c8fa3b3e1d8f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r--src/client/qwaylandinputdevice.cpp11
-rw-r--r--src/client/qwaylandinputdevice_p.h2
2 files changed, 5 insertions, 8 deletions
diff --git a/src/client/qwaylandinputdevice.cpp b/src/client/qwaylandinputdevice.cpp
index 13b7da077..25d61ede8 100644
--- a/src/client/qwaylandinputdevice.cpp
+++ b/src/client/qwaylandinputdevice.cpp
@@ -69,11 +69,12 @@ QWaylandInputDevice::Keyboard::Keyboard(QWaylandInputDevice *p)
return;
}
mRepeatTimer.setInterval(1000 / mRepeatRate);
- handleKey(mRepeatKey.time, QEvent::KeyRelease, mRepeatKey.key, mRepeatKey.modifiers,
- mRepeatKey.code, mRepeatKey.nativeVirtualKey, mRepeatKey.nativeModifiers,
+ Qt::KeyboardModifiers modifiers = this->modifiers();
+ handleKey(mRepeatKey.time, QEvent::KeyRelease, mRepeatKey.key, modifiers,
+ mRepeatKey.code, mRepeatKey.nativeVirtualKey, this->mNativeModifiers,
mRepeatKey.text, true);
- handleKey(mRepeatKey.time, QEvent::KeyPress, mRepeatKey.key, mRepeatKey.modifiers,
- mRepeatKey.code, mRepeatKey.nativeVirtualKey, mRepeatKey.nativeModifiers,
+ handleKey(mRepeatKey.time, QEvent::KeyPress, mRepeatKey.key, modifiers,
+ mRepeatKey.code, mRepeatKey.nativeVirtualKey, this->mNativeModifiers,
mRepeatKey.text, true);
});
}
@@ -1349,8 +1350,6 @@ void QWaylandInputDevice::Keyboard::keyboard_key(uint32_t serial, uint32_t time,
mRepeatKey.code = code;
mRepeatKey.time = time;
mRepeatKey.text = text;
- mRepeatKey.modifiers = modifiers;
- mRepeatKey.nativeModifiers = mNativeModifiers;
mRepeatKey.nativeVirtualKey = sym;
mRepeatTimer.setInterval(mRepeatDelay);
mRepeatTimer.start();
diff --git a/src/client/qwaylandinputdevice_p.h b/src/client/qwaylandinputdevice_p.h
index 67bfb9afd..cf565cb85 100644
--- a/src/client/qwaylandinputdevice_p.h
+++ b/src/client/qwaylandinputdevice_p.h
@@ -237,9 +237,7 @@ public:
uint32_t code = 0;
uint32_t time = 0 ;
QString text;
- Qt::KeyboardModifiers modifiers;
uint32_t nativeVirtualKey = 0;
- uint32_t nativeModifiers = 0;
} mRepeatKey;
QTimer mRepeatTimer;