[PATCH v2 weston 11/17] bindings: make install_binding_grab take a keyboard instead of a seat
Derek Foreman
derekf at osg.samsung.com
Wed Jul 15 11:00:42 PDT 2015
It doesn't need the seat pointer, and the caller should already have
tested that the keyboard pointer is valid.
Reviewed-by: Jonas Ã…dahl <jadahl at gmail.com>
Signed-off-by: Derek Foreman <derekf at osg.samsung.com>
---
src/bindings.c | 17 ++++++++++-------
1 file changed, 10 insertions(+), 7 deletions(-)
diff --git a/src/bindings.c b/src/bindings.c
index cc726af..2b712dc 100644
--- a/src/bindings.c
+++ b/src/bindings.c
@@ -254,15 +254,15 @@ static const struct weston_keyboard_grab_interface binding_grab = {
};
static void
-install_binding_grab(struct weston_seat *seat, uint32_t time, uint32_t key,
- struct weston_surface *focus)
+install_binding_grab(struct weston_keyboard *keyboard, uint32_t time,
+ uint32_t key, struct weston_surface *focus)
{
struct binding_keyboard_grab *grab;
grab = malloc(sizeof *grab);
grab->key = key;
grab->grab.interface = &binding_grab;
- weston_keyboard_start_grab(seat->keyboard, &grab->grab);
+ weston_keyboard_start_grab(keyboard, &grab->grab);
/* Notify the surface which had the focus before this binding
* triggered that we stole a keypress from under it, by forcing
@@ -272,9 +272,9 @@ install_binding_grab(struct weston_seat *seat, uint32_t time, uint32_t key,
* If the old focus surface is different than the new one it
* means it was changed in the binding handler, so it received
* the enter event already. */
- if (focus && seat->keyboard->focus == focus) {
- weston_keyboard_set_focus(seat->keyboard, NULL);
- weston_keyboard_set_focus(seat->keyboard, focus);
+ if (focus && keyboard->focus == focus) {
+ weston_keyboard_set_focus(keyboard, NULL);
+ weston_keyboard_set_focus(keyboard, focus);
}
}
@@ -305,7 +305,10 @@ weston_compositor_run_key_binding(struct weston_compositor *compositor,
* swallow the key press. */
if (seat->keyboard->grab ==
&seat->keyboard->default_grab)
- install_binding_grab(seat, time, key, focus);
+ install_binding_grab(seat->keyboard,
+ time,
+ key,
+ focus);
}
}
}
--
2.1.4
More information about the wayland-devel
mailing list