compositor: Update grab variable in notify_key() after binding handler.
We need to update the temp grab pointer after weston_compositor_run_key_binding()
before calling the key handler because it may have installed a new grab.
diff --git a/src/compositor.c b/src/compositor.c
index 26c9a95..09de2f6 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -1839,9 +1839,11 @@
*k = key;
}
- if (grab == &seat->keyboard->default_grab)
+ if (grab == &seat->keyboard->default_grab) {
weston_compositor_run_key_binding(compositor, ws, time, key,
state);
+ grab = seat->keyboard->grab;
+ }
grab->interface->key(grab, time, key, state);
if (mods)