Bug 370454

Summary: KModifierKeyInfo non-functional on Wayland
Product: [Frameworks and Libraries] frameworks-kguiaddons Reporter: Martin Flöser <mgraesslin>
Component: generalAssignee: kdelibs bugs <kdelibs-bugs>
Status: REPORTED ---    
Severity: normal CC: aspotashev, justin.zobel, trmdi
Priority: NOR Keywords: wayland
Version: 5.54.0   
Target Milestone: ---   
Platform: Other   
OS: Linux   
See Also: https://bugs.kde.org/show_bug.cgi?id=401768
Latest Commit: Version Fixed In:

Description Martin Flöser 2016-10-11 12:04:06 UTC
KModifierKeyInfo has a private which is platform selected on build time. If built with X11 support that one is used. There is no wayland-specific implementation, thus it's not working at all.

A possibility to fix this is:
1) Implement a plugin infrastructure for the platforms
2) Add a Wayland sepcific plugin
2a) Wayland specific plugin built on top of KWayland using a KWayland::Client::Seat and a Keyboard and Pointer on the Seat so that it can track all key presses (on the application) and all pointer events
2b) Use xkbcommon to figure out which modifiers are pressed

A problem with this approach is that it would require an (optional) dependency on KWayland which is not possible for a tier1 framework.
Comment 1 Justin Zobel 2020-11-20 06:57:54 UTC
Martin is this still valid? If so can you mark it as confirmed, thanks.