mirror of
https://github.com/brl/mutter.git
synced 2024-11-11 08:46:26 -05:00
keybindings: Fix external grabs not being ungrabbed
Before starting to use display_get_keybinding() we could compare MetaKeyBinding.modifiers with MetaKeyCombo.modifiers directly. Now, we need to resolve the virtual modifiers to match with the mask.
This commit is contained in:
parent
7e8833a215
commit
c07004aefe
@ -1356,6 +1356,7 @@ meta_display_ungrab_accelerator (MetaDisplay *display,
|
|||||||
MetaKeyBinding *binding;
|
MetaKeyBinding *binding;
|
||||||
MetaKeyGrab *grab;
|
MetaKeyGrab *grab;
|
||||||
char *key;
|
char *key;
|
||||||
|
guint mask = 0;
|
||||||
|
|
||||||
g_return_val_if_fail (action != META_KEYBINDING_ACTION_NONE, FALSE);
|
g_return_val_if_fail (action != META_KEYBINDING_ACTION_NONE, FALSE);
|
||||||
|
|
||||||
@ -1364,9 +1365,9 @@ meta_display_ungrab_accelerator (MetaDisplay *display,
|
|||||||
if (!grab)
|
if (!grab)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
binding = display_get_keybinding (display,
|
meta_display_devirtualize_modifiers (display, grab->combo->modifiers, &mask);
|
||||||
grab->combo->keycode,
|
|
||||||
grab->combo->modifiers);
|
binding = display_get_keybinding (display, grab->combo->keycode, mask);
|
||||||
if (binding)
|
if (binding)
|
||||||
{
|
{
|
||||||
guint32 index_key;
|
guint32 index_key;
|
||||||
|
Loading…
Reference in New Issue
Block a user