[Interest] Has X event handling changed from Qt 4 to 5?

Scott Kostyshak skostysh at lyx.org
Sun Jun 15 09:05:29 CEST 2014


Hi,

At LyX we use xvkbd to send key presses for the purposes of testing.
When building LyX with Qt 5 [1], our scripts no longer send capital
letters as capital letters. They are instead sent as lower case
letters. With Qt 4.8.5 they are sent correctly as upper case letters.
Another LyX developer has independently confirmed the above behavior.

The problem only occurs when using XSendEvent(). The following results
in "hello world" (on LyX built with Qt 5):
xvkbd -no_root -wait_idle 18844 -xsendevent -window 0x05400008 -delay
100 -text "Hello World"
while this results in "Hello World" (also with Qt 5):
xvkbd -no_root -wait_idle 18844 -window 0x05400008 -delay 100 -text
"Hello World"

I've contacted the xvkbd author and he suspects a change in how X
events are handled by Qt.

I found a bug that I think is related:
https://bugreports.qt-project.org/browse/QTBUG-7465

I'd be happy to reopen that bug report and continue any further
discussion there if that would be appropriate. I can also provide an
example if that would help. I just wanted to check in here first to
see what the recommended next step is.

Best,

Scott

[1] I've only tested on Ubuntu. I've tested with the Qt 5 libraries in
Ubuntu repos 13.10 and 14.04, as well as with the development version
from June 5, d244c119



More information about the Interest mailing list