Bug 372554 - Modifier keys ignored in Plasma5 xlib (send_event routine)
Summary: Modifier keys ignored in Plasma5 xlib (send_event routine)
Status: RESOLVED FIXED
Alias: None
Product: plasmashell
Classification: Plasma
Component: general (show other bugs)
Version: 5.8.3
Platform: Ubuntu Linux
: NOR major
Target Milestone: 1.0
Assignee: David Edmundson
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-11-16 20:30 UTC by GHPS
Modified: 2017-02-06 15:39 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
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