Internal grabs do not send key release to clients
Affected version
Fedora 36 beta
Mutter 42 RC4
Native Wayland session (of course)
Intel + KMS + Mesa
Bug summary
When an internal grab is triggered, such as a permission or password prompt, it takes focus from the client window, but does not send key release events for any pressed keys to the client window. This leaves the client repeating until focus is returned to it.
Steps to reproduce
- Do something in the background that will cause a Mutter permission dialog to pop up, e.g. start SSH with a key which prompts for a passphrase via the agent
- Keep typing in the client window so you have a key down
- Mutter dialog pops up for e.g. passphrase entry, taking focus away from client window
What happened
- Last key pressed will repeat infinitely in client window as there is no key release event
What did you expect to happen
- Key release event sent to client so it stops repeating
Relevant logs, screenshots, screencasts etc.
I can get WAYLAND_DEBUG logs if it helps but it should be pretty clear.