Bug 372554

Summary: Modifier keys ignored in Plasma5 xlib (send_event routine)
Product: [Plasma] plasmashell Reporter: GHPS <kde-software>
Component: generalAssignee: David Edmundson <kde>
Status: RESOLVED FIXED    
Severity: major CC: bhush94, hans, plasma-bugs, rom85
Priority: NOR    
Version: 5.8.3   
Target Milestone: 1.0   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:

Description GHPS 2016-11-16 20:30:39 UTC
While trying to fix a problem in Autokey-py3 I came upon this rather serious bug. Since I’ve switched from Kubuntu 14.04 to 16.04 Autokey was unable to paste uppercase characters [1].  

The problem can be tracked down from Autokey to the python-xlib library to Plasma5. This led to the conclusion that xlib, here the send_event routine, doesn’t handle modifiers correctly.

This finding is backed by
1) The virtual keyboard xvkbd shows the same defect when started with -xsendevent.
2) The program crikey, a small utility to send keyboard events [2], has the same problem.

Under Plasma5 all three programs are unable to produce uppercase letters and characters that require the shift modifier key, e.g. ‘!”§’.

The problem is rather serious since it renders these programs more or less useless.

The bug is present in all version of Kubuntu 16.04 LTS (with KDE 5.5 up to 5.6.5) and the latest version of Neon with KDE 5.8.3 (neon-useredition-20161114-0947-amd64).


-----------
1: https://github.com/autokey-py3/autokey-py3/issues/20
2: http://www.shallowsky.com/software/crikey/
Comment 1 Christoph Feck 2016-11-17 01:07:36 UTC
Could you please clarify: Does xvkbd not produce uppercase letters in the Plasma 5 environment, or does it not work with Plasma 5 client applications? Could you also test other Qt5 based applications? It might be a Qt issue.
Comment 2 GHPS 2016-11-17 08:44:46 UTC
> Could you please clarify: Does xvkbd not produce uppercase letters in the
> Plasma 5 environment, or does it not work with Plasma 5 client applications?
OK, let's see...

I've started "xvkbd -xsendevent" from zsh and got
1) in Qt5 applications (zsh, kate, dolphin) no shift modifier.
2) in non-Qt5 applications (thunderbird, chromium, LibreOffice writer) shift works fine.

The problem depends on the client application. And Qt5...
Comment 3 GHPS 2016-11-17 08:58:58 UTC
And specific for Qt5: Okular is still Qt4 and works fine.
Comment 4 Christoph Feck 2016-11-18 02:46:11 UTC
Please report this issue to Qt developers via https://bugreports.qt.io/
Comment 6 GHPS 2017-02-02 20:07:58 UTC
Just checked against Plasma 5.9.0 with Qt 5.7.1 (neon-devedition-gitstable-20170201-1047-amd64): Bug is fixed.
Comment 7 David Edmundson 2017-02-06 15:39:44 UTC
thanks