core: Let unhandled key release events be propagated by keybindings
This leads to possibly missed key release events being propagated down to
clients, and in the case of X11 clients, to stuck keys e.g. after switching
workspace with Ctrl+Alt+Left/Right and ending up with a X11 client focused.
Fixes: 11a4d56185
("keybindings: Send trigger when a key accelerator is deactivated")
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3935>
This commit is contained in:
parent
a35326cc93
commit
cdf427039d
1 changed files with 4 additions and 2 deletions
|
@ -1458,12 +1458,14 @@ process_event (MetaDisplay *display,
|
|||
|
||||
invoke_handler (display, binding->handler, window, event, binding);
|
||||
binding->release_pending = FALSE;
|
||||
return TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
meta_topic (META_DEBUG_KEYBINDINGS,
|
||||
"Ignore release for handler %s",
|
||||
binding->name);
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -1481,9 +1483,9 @@ process_event (MetaDisplay *display,
|
|||
binding->name);
|
||||
binding->release_pending = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
not_found:
|
||||
meta_topic (META_DEBUG_KEYBINDINGS,
|
||||
|
|
Loading…
Reference in a new issue