How does KWin interact with multiple keyboards/key input devices?

Bit of an odd question but bear with me and I’ll explain what I’m asking.

I’m looking into switching from Arch+Gnome to Manjaro and I’d like to try the Plasma edition instead of Gnome. I use a Logitech G600 MMO mouse and Gnome’s WM, Mutter, reloads the keyboard layouts whenever a key is sent from a different device than the most recent key input.

When playing World of Warcraft I am often moving my character and/or holding ctrl/alt/shift while also pressing the buttons on my mouse which causes severe stuttering. It’s not a bug, it’s a feature™ that’s important for multi-lingual users. So for my personal use I’ve had to get the Mutter source code, comment out the single line responsible, and then build and install the program with every update.

To demonstrate how unplayable the effect can be here’s a quick clip I recorded when I first discovered the issue. When it’s smooth I’m just tapping spacebar and when it begins to stutter I am tapping both the spacebar and a button on my mouse bound to the 1 key.

i [DOT] imgur [DOT] com/X5HjbQN [DOT] mp4

(I just made this account to ask this question, if circumventing the rules for links like that is frowned upon I’ll edit my post and remove it)

All that said, how does KWin handle subsequent key inputs from different key-input devices? If a similar feature exists in KWin would it be as (relatively) easy to remove as it is for Mutter?

I can’t answer your question, but perhaps installing and testing Plasma in a VM could give you an answer.

It doesn’t. That which handles keyboard and mouse input is the X.Org server. The difference with the GNOME edition however is that GNOME uses Wayland by default as its display server instead of X.Org.

I made some room on a disk and installed it there so I could test it on my hardware with a demanding game.

There does seem to be a tiny amount of noise displayed in MangoHud’s frametime graph when spamming keys on my keyboard and my mouse buttons, but it doesn’t seem to actually increase the frametime/lower the framerate at all!

I’m very pleased about this, and I’m definitely going to be switching fully to Manjaro soon.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.