Details
-
Bug
-
Resolution: Done
-
P2: Important
-
None
-
5.1.0
-
None
-
Qt 5.1.0
Window manager: awesome v3.4.14 (White Christmas)
-
Change-Id: I662bf5aad3ab0e8591109994e746d85ff61ad6ef
Description
I'm using Qt Creator and after a while the shift key stops working, e.g. it's not possible to write capital letters anymore (...and other characters that can be triggered via Shift).
Observations:
- For other Qt and Non-Qt applications it is still working
- Also, restarting Qt Creator fixes the problem for a while
- I've debugged this a bit a QLineEdit/QWidgtLineControl. A breakpoint at qwidgetlinecontrol.cpp:1875 (line with "insert(t)" in the function "processKeyEvent", t = event->text()) shows that:
- Working case: t is "A" if shift is pressed
- Non-Working case: t is "a" if shift is pressed
This already the case at QWindowSystemInterface::sendWindowSystemEventsImplementation() (qwindowsysteminterface.cpp:581, "QGuiApplicationPrivate::processWindowSystemEvent(event);") in the stack trace.
I can reproduce the issue reliably only in the debugger.
- Start a Hello-Worl-GUI app with a QLineEdit (e.g. create a "Qt Gui Application" with Creator and drah a line edit on the form in the *.ui).
- Set a breakpoint at qwidgetlinecontrol.cpp:1875 (function QWidgetLineControl::processKeyEvent, line contents: "insert(t);", t = event->text())
- Run the application
- Press Shift-a - breakpoint is triggered, inspect "t". It's "A".
- Continue debugging
- Press Shift-a again, breakpoint is triggered, inspect "t". It's "a".
Attachments
For Gerrit Dashboard: QTBUG-32660 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
61986,3 | Fix stuck modifier issue in the non-xcb_xkb code path | release | qt/qtbase | Status: ABANDONED | 0 | 0 |
62027,1 | Fix stuck modifier issue in the non-xcb_xkb code path | stable | qt/qtbase | Status: MERGED | +2 | 0 |