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
@ -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…
x
Reference in New Issue
Block a user