Details
-
Bug
-
Resolution: Fixed
-
P2: Important
-
5.9.1
-
-
610bafdfc (dev)
Description
On Platform Wayland the QKeySequenceEdit dialog is not able to properly caputure shortcuts with Meta key.
Steps to reproduce:
- Use a Wayland compositor (e.g. Weston or KWin)
- Start designer
- create a new form
- Add a QKeySequenceEdit
- Preview
- Press Meta and a
Expected result:
QKeySequenceEdit captures Meta + a
Actual result:
ៀ?, Meta+B
As far as I investigated this is not a problem in QtWayland, but in QKeySequenceEdit. On Wayland pressing the Meta key generates Qt::Key_Super_L or Qt::Key_Super_R and not Qt::Key_Meta. Due to that the special handling for modifier key presses in QKeySequenceEdit::keyPressEvent does not work. See https://code.qt.io/cgit/qt/qtbase.git/tree/src/widgets/widgets/qkeysequenceedit.cpp#n251
Attachments
Issue Links
- relates to
-
QTBUG-74479 Rewrite QWaylandSeat::sendKeyEvent() via text-input extenssion or extend core protocol
- Closed
-
QTBUG-111992 QKeySequenceEdit can't register shortcuts with dead keys
- Reported
-
QTBUG-69715 QKeySequence::toString() returns garbage strings for some simple QKeySequence
- Closed
-
QTBUG-65503 Unify key handling code on linux
- Closed
For Gerrit Dashboard: QTBUG-62102 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
349549,6 | qxkbcommon: Map Super/Hyper to Meta early enough to have an effect | dev | qt/qtbase | Status: MERGED | +2 | 0 |
350898,2 | qxkbcommon: Map Super/Hyper to Meta early enough to have an effect | 6.1 | qt/qtbase | Status: MERGED | +2 | 0 |
350899,2 | qxkbcommon: Map Super/Hyper to Meta early enough to have an effect | 6.0 | qt/qtbase | Status: MERGED | +2 | 0 |
350902,3 | qxkbcommon: Map Super/Hyper to Meta early enough to have an effect | tqtc/lts-5.15 | qt/tqtc-qtbase | Status: MERGED | +2 | 0 |
458312,2 | client: Treat XKB_KEY_{Super,Hyper}_{L,R} as Qt::Key_Meta | dev | qt/qtwayland | Status: ABANDONED | +1 | 0 |
458395,9 | qxkbcommon: Treat XKB_KEY_{Super,Hyper}_{L,R} as Qt::Key_Meta by default | dev | qt/qtbase | Status: MERGED | +2 | 0 |
463206,3 | libinput: Treat XKB_KEY_{Super,Hyper}_{L,R} as Qt::Key_Meta | dev | qt/qtbase | Status: ABANDONED | -1 | 0 |