[PATCH 2/3] compositor: Fold wl_keyboard into weston_keyboard

Kristian Høgsberg krh at bitplanet.net
Mon Apr 29 14:23:37 PDT 2013


Now that these struct are both in weston, there's no point in having both.
Consolidate things by moving wl_keyboard into weston_keyboard.
---
 src/bindings.c       | 16 +++++-----
 src/compositor-x11.c |  2 +-
 src/compositor.c     | 46 ++++++++++++++---------------
 src/compositor.h     | 82 +++++++++++++++++++++++++---------------------------
 src/input.c          | 33 +++++++++++----------
 src/shell.c          | 44 ++++++++++++++--------------
 src/text-backend.c   | 32 ++++++++++----------
 tests/weston-test.c  |  2 +-
 8 files changed, 127 insertions(+), 130 deletions(-)

diff --git a/src/bindings.c b/src/bindings.c
index 322736d..1fabc77 100644
--- a/src/bindings.c
+++ b/src/bindings.c
@@ -143,11 +143,11 @@ weston_binding_list_destroy_all(struct wl_list *list)
 
 struct binding_keyboard_grab {
 	uint32_t key;
-	struct wl_keyboard_grab grab;
+	struct weston_keyboard_grab grab;
 };
 
 static void
-binding_key(struct wl_keyboard_grab *grab,
+binding_key(struct weston_keyboard_grab *grab,
 	    uint32_t time, uint32_t key, uint32_t state_w)
 {
 	struct binding_keyboard_grab *b =
@@ -156,14 +156,14 @@ binding_key(struct wl_keyboard_grab *grab,
 	struct wl_display *display;
 	enum wl_keyboard_key_state state = state_w;
 	uint32_t serial;
-	struct weston_keyboard *keyboard = (struct weston_keyboard *)grab->keyboard;
+	struct weston_keyboard *keyboard = grab->keyboard;
 
 	resource = grab->keyboard->focus_resource;
 	if (key == b->key) {
 		if (state == WL_KEYBOARD_KEY_STATE_RELEASED) {
-			wl_keyboard_end_grab(grab->keyboard);
+			weston_keyboard_end_grab(grab->keyboard);
 			if (keyboard->input_method_resource)
-				keyboard->keyboard.grab = &keyboard->input_method_grab;
+				keyboard->grab = &keyboard->input_method_grab;
 			free(b);
 		}
 	} else if (resource) {
@@ -174,7 +174,7 @@ binding_key(struct wl_keyboard_grab *grab,
 }
 
 static void
-binding_modifiers(struct wl_keyboard_grab *grab, uint32_t serial,
+binding_modifiers(struct weston_keyboard_grab *grab, uint32_t serial,
 		  uint32_t mods_depressed, uint32_t mods_latched,
 		  uint32_t mods_locked, uint32_t group)
 {
@@ -188,7 +188,7 @@ binding_modifiers(struct wl_keyboard_grab *grab, uint32_t serial,
 				   mods_latched, mods_locked, group);
 }
 
-static const struct wl_keyboard_grab_interface binding_grab = {
+static const struct weston_keyboard_grab_interface binding_grab = {
 	binding_key,
 	binding_modifiers,
 };
@@ -202,7 +202,7 @@ install_binding_grab(struct wl_seat *seat,
 	grab = malloc(sizeof *grab);
 	grab->key = key;
 	grab->grab.interface = &binding_grab;
-	wl_keyboard_start_grab(seat->keyboard, &grab->grab);
+	weston_keyboard_start_grab(seat->keyboard, &grab->grab);
 }
 
 WL_EXPORT void
diff --git a/src/compositor-x11.c b/src/compositor-x11.c
index eb6e58b..bb8e892 100644
--- a/src/compositor-x11.c
+++ b/src/compositor-x11.c
@@ -865,7 +865,7 @@ static void
 update_xkb_state_from_core(struct x11_compositor *c, uint16_t x11_mask)
 {
 	uint32_t mask = get_xkb_mod_mask(c, x11_mask);
-	struct wl_keyboard *keyboard = &c->core_seat.keyboard.keyboard;
+	struct weston_keyboard *keyboard = &c->core_seat.keyboard;
 
 	xkb_state_update_mask(c->core_seat.xkb_state.state,
 			      keyboard->modifiers.mods_depressed & mask,
diff --git a/src/compositor.c b/src/compositor.c
index 693df2c..cac7562 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -981,7 +981,7 @@ weston_surface_unmap(struct weston_surface *surface)
 	wl_list_for_each(seat, &surface->compositor->seat_list, link) {
 		if (seat->seat.keyboard &&
 		    seat->seat.keyboard->focus == &surface->surface)
-			wl_keyboard_set_focus(seat->seat.keyboard, NULL);
+			weston_keyboard_set_focus(seat->seat.keyboard, NULL);
 		if (seat->seat.pointer &&
 		    seat->seat.pointer->focus == &surface->surface)
 			wl_pointer_set_focus(seat->seat.pointer,
@@ -1876,7 +1876,7 @@ weston_surface_activate(struct weston_surface *surface,
 	struct weston_compositor *compositor = seat->compositor;
 
 	if (seat->seat.keyboard) {
-		wl_keyboard_set_focus(seat->seat.keyboard, &surface->surface);
+		weston_keyboard_set_focus(seat->seat.keyboard, &surface->surface);
 		wl_data_device_set_keyboard_focus(&seat->seat);
 	}
 
@@ -1949,8 +1949,8 @@ notify_axis(struct weston_seat *seat, uint32_t time, uint32_t axis,
 WL_EXPORT void
 notify_modifiers(struct weston_seat *seat, uint32_t serial)
 {
-	struct wl_keyboard *keyboard = &seat->keyboard.keyboard;
-	struct wl_keyboard_grab *grab = keyboard->grab;
+	struct weston_keyboard *keyboard = &seat->keyboard;
+	struct weston_keyboard_grab *grab = keyboard->grab;
 	uint32_t mods_depressed, mods_latched, mods_locked, group;
 	uint32_t mods_lookup;
 	enum weston_led leds = 0;
@@ -2040,8 +2040,8 @@ notify_key(struct weston_seat *seat, uint32_t time, uint32_t key,
 	struct weston_compositor *compositor = seat->compositor;
 	struct weston_keyboard *keyboard = &seat->keyboard;
 	struct weston_surface *focus =
-		(struct weston_surface *) keyboard->keyboard.focus;
-	struct wl_keyboard_grab *grab = keyboard->keyboard.grab;
+		(struct weston_surface *) keyboard->focus;
+	struct weston_keyboard_grab *grab = keyboard->grab;
 	uint32_t serial = wl_display_next_serial(compositor->wl_display);
 	uint32_t *k, *end;
 
@@ -2050,14 +2050,14 @@ notify_key(struct weston_seat *seat, uint32_t time, uint32_t key,
 			compositor->ping_handler(focus, serial);
 
 		weston_compositor_idle_inhibit(compositor);
-		keyboard->keyboard.grab_key = key;
-		keyboard->keyboard.grab_time = time;
+		keyboard->grab_key = key;
+		keyboard->grab_time = time;
 	} else {
 		weston_compositor_idle_release(compositor);
 	}
 
-	end = keyboard->keyboard.keys.data + keyboard->keyboard.keys.size;
-	for (k = keyboard->keyboard.keys.data; k < end; k++) {
+	end = keyboard->keys.data + keyboard->keys.size;
+	for (k = keyboard->keys.data; k < end; k++) {
 		if (*k == key) {
 			/* Ignore server-generated repeats. */
 			if (state == WL_KEYBOARD_KEY_STATE_PRESSED)
@@ -2065,17 +2065,17 @@ notify_key(struct weston_seat *seat, uint32_t time, uint32_t key,
 			*k = *--end;
 		}
 	}
-	keyboard->keyboard.keys.size = (void *) end - keyboard->keyboard.keys.data;
+	keyboard->keys.size = (void *) end - keyboard->keys.data;
 	if (state == WL_KEYBOARD_KEY_STATE_PRESSED) {
-		k = wl_array_add(&keyboard->keyboard.keys, sizeof *k);
+		k = wl_array_add(&keyboard->keys, sizeof *k);
 		*k = key;
 	}
 
-	if (grab == &keyboard->keyboard.default_grab ||
+	if (grab == &keyboard->default_grab ||
 	    grab == &keyboard->input_method_grab) {
 		weston_compositor_run_key_binding(compositor, seat, time, key,
 						  state);
-		grab = keyboard->keyboard.grab;
+		grab = keyboard->grab;
 	}
 
 	grab->interface->key(grab, time, key, state);
@@ -2120,7 +2120,7 @@ notify_keyboard_focus_in(struct weston_seat *seat, struct wl_array *keys,
 			 enum weston_key_state_update update_state)
 {
 	struct weston_compositor *compositor = seat->compositor;
-	struct wl_keyboard *keyboard = seat->seat.keyboard;
+	struct weston_keyboard *keyboard = seat->seat.keyboard;
 	struct wl_surface *surface;
 	uint32_t *k, serial;
 
@@ -2143,7 +2143,7 @@ notify_keyboard_focus_in(struct weston_seat *seat, struct wl_array *keys,
 
 	if (surface) {
 		wl_list_remove(&seat->saved_kbd_focus_listener.link);
-		wl_keyboard_set_focus(keyboard, surface);
+		weston_keyboard_set_focus(keyboard, surface);
 		seat->saved_kbd_focus = NULL;
 	}
 }
@@ -2152,7 +2152,7 @@ WL_EXPORT void
 notify_keyboard_focus_out(struct weston_seat *seat)
 {
 	struct weston_compositor *compositor = seat->compositor;
-	struct wl_keyboard *keyboard = seat->seat.keyboard;
+	struct weston_keyboard *keyboard = seat->seat.keyboard;
 	uint32_t *k, serial;
 
 	serial = wl_display_next_serial(compositor->wl_display);
@@ -2172,11 +2172,11 @@ notify_keyboard_focus_out(struct weston_seat *seat)
 			      &seat->saved_kbd_focus_listener);
 	}
 
-	wl_keyboard_set_focus(keyboard, NULL);
+	weston_keyboard_set_focus(keyboard, NULL);
 	/* FIXME: We really need keyboard grab cancel here to
 	 * let the grab shut down properly.  As it is we leak
 	 * the grab data. */
-	wl_keyboard_end_grab(keyboard);
+	weston_keyboard_end_grab(keyboard);
 }
 
 static void
@@ -2450,8 +2450,8 @@ seat_get_keyboard(struct wl_client *client, struct wl_resource *resource,
 
 	if (seat->seat.keyboard->focus &&
 	    seat->seat.keyboard->focus->resource.client == client) {
-		wl_keyboard_set_focus(seat->seat.keyboard,
-				      seat->seat.keyboard->focus);
+		weston_keyboard_set_focus(seat->seat.keyboard,
+					  seat->seat.keyboard->focus);
 		wl_data_device_set_keyboard_focus(&seat->seat);
 	}
 }
@@ -2668,8 +2668,8 @@ weston_seat_init_keyboard(struct weston_seat *seat, struct xkb_keymap *keymap)
 
 	seat->xkb_state.leds = 0;
 
-	wl_keyboard_init(&seat->keyboard.keyboard);
-	wl_seat_set_keyboard(&seat->seat, &seat->keyboard.keyboard);
+	weston_keyboard_init(&seat->keyboard);
+	wl_seat_set_keyboard(&seat->seat, &seat->keyboard);
 
 	seat->has_keyboard = 1;
 
diff --git a/src/compositor.h b/src/compositor.h
index 0301241..56b72d8 100644
--- a/src/compositor.h
+++ b/src/compositor.h
@@ -220,18 +220,18 @@ struct wl_pointer_grab {
 	wl_fixed_t x, y;
 };
 
-struct wl_keyboard_grab;
-struct wl_keyboard_grab_interface {
-	void (*key)(struct wl_keyboard_grab *grab, uint32_t time,
+struct weston_keyboard_grab;
+struct weston_keyboard_grab_interface {
+	void (*key)(struct weston_keyboard_grab *grab, uint32_t time,
 		    uint32_t key, uint32_t state);
-	void (*modifiers)(struct wl_keyboard_grab *grab, uint32_t serial,
+	void (*modifiers)(struct weston_keyboard_grab *grab, uint32_t serial,
 			  uint32_t mods_depressed, uint32_t mods_latched,
 			  uint32_t mods_locked, uint32_t group);
 };
 
-struct wl_keyboard_grab {
-	const struct wl_keyboard_grab_interface *interface;
-	struct wl_keyboard *keyboard;
+struct weston_keyboard_grab {
+	const struct weston_keyboard_grab_interface *interface;
+	struct weston_keyboard *keyboard;
 	struct wl_surface *focus;
 	uint32_t key;
 };
@@ -301,31 +301,6 @@ struct wl_pointer {
 	uint32_t button_count;
 };
 
-struct wl_keyboard {
-	struct wl_seat *seat;
-
-	struct wl_list resource_list;
-	struct wl_surface *focus;
-	struct wl_resource *focus_resource;
-	struct wl_listener focus_listener;
-	uint32_t focus_serial;
-	struct wl_signal focus_signal;
-
-	struct wl_keyboard_grab *grab;
-	struct wl_keyboard_grab default_grab;
-	uint32_t grab_key;
-	uint32_t grab_serial;
-	uint32_t grab_time;
-
-	struct wl_array keys;
-
-	struct {
-		uint32_t mods_depressed;
-		uint32_t mods_latched;
-		uint32_t mods_locked;
-		uint32_t group;
-	} modifiers;
-};
 
 struct wl_touch {
 	struct wl_seat *seat;
@@ -349,7 +324,7 @@ struct wl_seat {
 	struct wl_signal destroy_signal;
 
 	struct wl_pointer *pointer;
-	struct wl_keyboard *keyboard;
+	struct weston_keyboard *keyboard;
 	struct wl_touch *touch;
 
 	uint32_t selection_serial;
@@ -379,7 +354,7 @@ wl_seat_release(struct wl_seat *seat);
 void
 wl_seat_set_pointer(struct wl_seat *seat, struct wl_pointer *pointer);
 void
-wl_seat_set_keyboard(struct wl_seat *seat, struct wl_keyboard *keyboard);
+wl_seat_set_keyboard(struct wl_seat *seat, struct weston_keyboard *keyboard);
 void
 wl_seat_set_touch(struct wl_seat *seat, struct wl_touch *touch);
 
@@ -399,16 +374,17 @@ void
 wl_pointer_set_current(struct wl_pointer *pointer, struct wl_surface *surface);
 
 void
-wl_keyboard_init(struct wl_keyboard *keyboard);
+weston_keyboard_init(struct weston_keyboard *keyboard);
 void
-wl_keyboard_release(struct wl_keyboard *keyboard);
+weston_keyboard_release(struct weston_keyboard *keyboard);
 void
-wl_keyboard_set_focus(struct wl_keyboard *keyboard, struct wl_surface *surface);
+weston_keyboard_set_focus(struct weston_keyboard *keyboard,
+			  struct wl_surface *surface);
 void
-wl_keyboard_start_grab(struct wl_keyboard *device,
-		       struct wl_keyboard_grab *grab);
+weston_keyboard_start_grab(struct weston_keyboard *device,
+			   struct weston_keyboard_grab *grab);
 void
-wl_keyboard_end_grab(struct wl_keyboard *keyboard);
+weston_keyboard_end_grab(struct weston_keyboard *keyboard);
 
 void
 wl_touch_init(struct wl_touch *touch);
@@ -450,9 +426,31 @@ struct weston_xkb_info {
 };
 
 struct weston_keyboard {
-	struct wl_keyboard keyboard;
+	struct wl_seat *seat;
+
+	struct wl_list resource_list;
+	struct wl_surface *focus;
+	struct wl_resource *focus_resource;
+	struct wl_listener focus_listener;
+	uint32_t focus_serial;
+	struct wl_signal focus_signal;
+
+	struct weston_keyboard_grab *grab;
+	struct weston_keyboard_grab default_grab;
+	uint32_t grab_key;
+	uint32_t grab_serial;
+	uint32_t grab_time;
+
+	struct wl_array keys;
+
+	struct {
+		uint32_t mods_depressed;
+		uint32_t mods_latched;
+		uint32_t mods_locked;
+		uint32_t group;
+	} modifiers;
 
-	struct wl_keyboard_grab input_method_grab;
+	struct weston_keyboard_grab input_method_grab;
 	struct wl_resource *input_method_resource;
 };
 
diff --git a/src/input.c b/src/input.c
index 8ef5b2a..852bb8a 100644
--- a/src/input.c
+++ b/src/input.c
@@ -38,8 +38,8 @@ lose_pointer_focus(struct wl_listener *listener, void *data)
 static void
 lose_keyboard_focus(struct wl_listener *listener, void *data)
 {
-	struct wl_keyboard *keyboard =
-		container_of(listener, struct wl_keyboard, focus_listener);
+	struct weston_keyboard *keyboard =
+		container_of(listener, struct weston_keyboard, focus_listener);
 
 	keyboard->focus_resource = NULL;
 }
@@ -160,10 +160,10 @@ static const struct wl_touch_grab_interface default_touch_grab_interface = {
 };
 
 static void
-default_grab_key(struct wl_keyboard_grab *grab,
+default_grab_key(struct weston_keyboard_grab *grab,
 		 uint32_t time, uint32_t key, uint32_t state)
 {
-	struct wl_keyboard *keyboard = grab->keyboard;
+	struct weston_keyboard *keyboard = grab->keyboard;
 	struct wl_resource *resource;
 	struct wl_display *display;
 	uint32_t serial;
@@ -193,11 +193,11 @@ find_resource_for_surface(struct wl_list *list, struct wl_surface *surface)
 }
 
 static void
-default_grab_modifiers(struct wl_keyboard_grab *grab, uint32_t serial,
+default_grab_modifiers(struct weston_keyboard_grab *grab, uint32_t serial,
 		       uint32_t mods_depressed, uint32_t mods_latched,
 		       uint32_t mods_locked, uint32_t group)
 {
-	struct wl_keyboard *keyboard = grab->keyboard;
+	struct weston_keyboard *keyboard = grab->keyboard;
 	struct wl_pointer *pointer = keyboard->seat->pointer;
 	struct wl_resource *resource, *pr;
 
@@ -222,7 +222,7 @@ default_grab_modifiers(struct wl_keyboard_grab *grab, uint32_t serial,
 	}
 }
 
-static const struct wl_keyboard_grab_interface
+static const struct weston_keyboard_grab_interface
 				default_keyboard_grab_interface = {
 	default_grab_key,
 	default_grab_modifiers,
@@ -253,7 +253,7 @@ wl_pointer_release(struct wl_pointer *pointer)
 }
 
 WL_EXPORT void
-wl_keyboard_init(struct wl_keyboard *keyboard)
+weston_keyboard_init(struct weston_keyboard *keyboard)
 {
 	memset(keyboard, 0, sizeof *keyboard);
 	wl_list_init(&keyboard->resource_list);
@@ -266,7 +266,7 @@ wl_keyboard_init(struct wl_keyboard *keyboard)
 }
 
 WL_EXPORT void
-wl_keyboard_release(struct wl_keyboard *keyboard)
+weston_keyboard_release(struct weston_keyboard *keyboard)
 {
 	/* XXX: What about keyboard->resource_list? */
 	if (keyboard->focus_resource)
@@ -316,7 +316,7 @@ wl_seat_release(struct wl_seat *seat)
 	if (seat->pointer)
 		wl_pointer_release(seat->pointer);
 	if (seat->keyboard)
-		wl_keyboard_release(seat->keyboard);
+		weston_keyboard_release(seat->keyboard);
 	if (seat->touch)
 		wl_touch_release(seat->touch);
 }
@@ -354,7 +354,7 @@ wl_seat_set_pointer(struct wl_seat *seat, struct wl_pointer *pointer)
 }
 
 WL_EXPORT void
-wl_seat_set_keyboard(struct wl_seat *seat, struct wl_keyboard *keyboard)
+wl_seat_set_keyboard(struct wl_seat *seat, struct weston_keyboard *keyboard)
 {
 	if (keyboard && (seat->keyboard || keyboard->seat))
 		return; /* XXX: error? */
@@ -387,7 +387,7 @@ WL_EXPORT void
 wl_pointer_set_focus(struct wl_pointer *pointer, struct wl_surface *surface,
 		     wl_fixed_t sx, wl_fixed_t sy)
 {
-	struct wl_keyboard *kbd = pointer->seat->keyboard;
+	struct weston_keyboard *kbd = pointer->seat->keyboard;
 	struct wl_resource *resource, *kr;
 	struct wl_display *display;
 	uint32_t serial;
@@ -434,7 +434,8 @@ wl_pointer_set_focus(struct wl_pointer *pointer, struct wl_surface *surface,
 }
 
 WL_EXPORT void
-wl_keyboard_set_focus(struct wl_keyboard *keyboard, struct wl_surface *surface)
+weston_keyboard_set_focus(struct weston_keyboard *keyboard,
+			  struct wl_surface *surface)
 {
 	struct wl_resource *resource;
 	struct wl_display *display;
@@ -474,8 +475,8 @@ wl_keyboard_set_focus(struct wl_keyboard *keyboard, struct wl_surface *surface)
 }
 
 WL_EXPORT void
-wl_keyboard_start_grab(struct wl_keyboard *keyboard,
-		       struct wl_keyboard_grab *grab)
+weston_keyboard_start_grab(struct weston_keyboard *keyboard,
+			   struct weston_keyboard_grab *grab)
 {
 	keyboard->grab = grab;
 	grab->keyboard = keyboard;
@@ -484,7 +485,7 @@ wl_keyboard_start_grab(struct wl_keyboard *keyboard,
 }
 
 WL_EXPORT void
-wl_keyboard_end_grab(struct wl_keyboard *keyboard)
+weston_keyboard_end_grab(struct weston_keyboard *keyboard)
 {
 	keyboard->grab = &keyboard->default_grab;
 }
diff --git a/src/shell.c b/src/shell.c
index 9d0ae02..4108f3c 100644
--- a/src/shell.c
+++ b/src/shell.c
@@ -495,7 +495,7 @@ restore_focus_state(struct desktop_shell *shell, struct workspace *ws)
 		surface = state->keyboard_focus ?
 			&state->keyboard_focus->surface : NULL;
 
-		wl_keyboard_set_focus(state->seat->seat.keyboard, surface);
+		weston_keyboard_set_focus(state->seat->seat.keyboard, surface);
 	}
 }
 
@@ -892,8 +892,8 @@ move_surface_to_workspace(struct desktop_shell *shell,
 	drop_focus_state(shell, from, surface);
 	wl_list_for_each(seat, &shell->compositor->seat_list, link)
 		if (seat->has_keyboard &&
-		    seat->keyboard.keyboard.focus == &surface->surface)
-			wl_keyboard_set_focus(&seat->keyboard.keyboard, NULL);
+		    seat->keyboard.focus == &surface->surface)
+			weston_keyboard_set_focus(&seat->keyboard, NULL);
 
 	weston_surface_damage_below(surface);
 }
@@ -3673,7 +3673,7 @@ struct switcher {
 	struct desktop_shell *shell;
 	struct weston_surface *current;
 	struct wl_listener listener;
-	struct wl_keyboard_grab grab;
+	struct weston_keyboard_grab grab;
 };
 
 static void
@@ -3740,8 +3740,7 @@ static void
 switcher_destroy(struct switcher *switcher)
 {
 	struct weston_surface *surface;
-	struct wl_keyboard *keyboard = switcher->grab.keyboard;
-	struct weston_keyboard *weston_keyboard = (struct weston_keyboard *)keyboard;
+	struct weston_keyboard *keyboard = switcher->grab.keyboard;
 	struct workspace *ws = get_current_workspace(switcher->shell);
 
 	wl_list_for_each(surface, &ws->layer.surface_list, layer_link) {
@@ -3753,14 +3752,14 @@ switcher_destroy(struct switcher *switcher)
 		activate(switcher->shell, switcher->current,
 			 (struct weston_seat *) keyboard->seat);
 	wl_list_remove(&switcher->listener.link);
-	wl_keyboard_end_grab(keyboard);
-	if (weston_keyboard->input_method_resource)
-		keyboard->grab = &weston_keyboard->input_method_grab;
+	weston_keyboard_end_grab(keyboard);
+	if (keyboard->input_method_resource)
+		keyboard->grab = &keyboard->input_method_grab;
 	free(switcher);
 }
 
 static void
-switcher_key(struct wl_keyboard_grab *grab,
+switcher_key(struct weston_keyboard_grab *grab,
 	     uint32_t time, uint32_t key, uint32_t state_w)
 {
 	struct switcher *switcher = container_of(grab, struct switcher, grab);
@@ -3771,7 +3770,7 @@ switcher_key(struct wl_keyboard_grab *grab,
 }
 
 static void
-switcher_modifier(struct wl_keyboard_grab *grab, uint32_t serial,
+switcher_modifier(struct weston_keyboard_grab *grab, uint32_t serial,
 		  uint32_t mods_depressed, uint32_t mods_latched,
 		  uint32_t mods_locked, uint32_t group)
 {
@@ -3782,7 +3781,7 @@ switcher_modifier(struct wl_keyboard_grab *grab, uint32_t serial,
 		switcher_destroy(switcher);
 }
 
-static const struct wl_keyboard_grab_interface switcher_grab = {
+static const struct weston_keyboard_grab_interface switcher_grab = {
 	switcher_key,
 	switcher_modifier,
 };
@@ -3802,8 +3801,8 @@ switcher_binding(struct wl_seat *seat, uint32_t time, uint32_t key,
 
 	lower_fullscreen_layer(switcher->shell);
 	switcher->grab.interface = &switcher_grab;
-	wl_keyboard_start_grab(seat->keyboard, &switcher->grab);
-	wl_keyboard_set_focus(seat->keyboard, NULL);
+	weston_keyboard_start_grab(seat->keyboard, &switcher->grab);
+	weston_keyboard_set_focus(seat->keyboard, NULL);
 	switcher_next(switcher);
 }
 
@@ -3851,14 +3850,14 @@ fan_debug_repaint_binding(struct wl_seat *seat, uint32_t time, uint32_t key,
 }
 
 struct debug_binding_grab {
-	struct wl_keyboard_grab grab;
+	struct weston_keyboard_grab grab;
 	struct weston_seat *seat;
 	uint32_t key[2];
 	int key_released[2];
 };
 
 static void
-debug_binding_key(struct wl_keyboard_grab *grab, uint32_t time,
+debug_binding_key(struct weston_keyboard_grab *grab, uint32_t time,
 		  uint32_t key, uint32_t state)
 {
 	struct debug_binding_grab *db = (struct debug_binding_grab *) grab;
@@ -3926,16 +3925,15 @@ debug_binding_key(struct wl_keyboard_grab *grab, uint32_t time,
 	}
 
 	if (terminate) {
-		struct weston_keyboard *weston_keyboard = (struct weston_keyboard *) grab->keyboard;
-		wl_keyboard_end_grab(grab->keyboard);
-		if (weston_keyboard->input_method_resource)
-			grab->keyboard->grab = &weston_keyboard->input_method_grab;
+		weston_keyboard_end_grab(grab->keyboard);
+		if (grab->keyboard->input_method_resource)
+			grab->keyboard->grab = &grab->keyboard->input_method_grab;
 		free(db);
 	}
 }
 
 static void
-debug_binding_modifiers(struct wl_keyboard_grab *grab, uint32_t serial,
+debug_binding_modifiers(struct weston_keyboard_grab *grab, uint32_t serial,
 			uint32_t mods_depressed, uint32_t mods_latched,
 			uint32_t mods_locked, uint32_t group)
 {
@@ -3949,7 +3947,7 @@ debug_binding_modifiers(struct wl_keyboard_grab *grab, uint32_t serial,
 				   mods_latched, mods_locked, group);
 }
 
-struct wl_keyboard_grab_interface debug_binding_keyboard_grab = {
+struct weston_keyboard_grab_interface debug_binding_keyboard_grab = {
 	debug_binding_key,
 	debug_binding_modifiers
 };
@@ -3966,7 +3964,7 @@ debug_binding(struct wl_seat *seat, uint32_t time, uint32_t key, void *data)
 	grab->seat = (struct weston_seat *) seat;
 	grab->key[0] = key;
 	grab->grab.interface = &debug_binding_keyboard_grab;
-	wl_keyboard_start_grab(seat->keyboard, &grab->grab);
+	weston_keyboard_start_grab(seat->keyboard, &grab->grab);
 }
 
 static void
diff --git a/src/text-backend.c b/src/text-backend.c
index a92aebe..e1cb0f9 100644
--- a/src/text-backend.c
+++ b/src/text-backend.c
@@ -501,10 +501,10 @@ unbind_keyboard(struct wl_resource *resource)
 }
 
 static void
-input_method_context_grab_key(struct wl_keyboard_grab *grab,
+input_method_context_grab_key(struct weston_keyboard_grab *grab,
 			      uint32_t time, uint32_t key, uint32_t state_w)
 {
-	struct weston_keyboard *keyboard = (struct weston_keyboard *)grab->keyboard;
+	struct weston_keyboard *keyboard = grab->keyboard;
 	struct wl_display *display;
 	uint32_t serial;
 
@@ -518,11 +518,11 @@ input_method_context_grab_key(struct wl_keyboard_grab *grab,
 }
 
 static void
-input_method_context_grab_modifier(struct wl_keyboard_grab *grab, uint32_t serial,
+input_method_context_grab_modifier(struct weston_keyboard_grab *grab, uint32_t serial,
 				   uint32_t mods_depressed, uint32_t mods_latched,
 				   uint32_t mods_locked, uint32_t group)
 {
-	struct weston_keyboard *keyboard = (struct weston_keyboard *)grab->keyboard;
+	struct weston_keyboard *keyboard = grab->keyboard;
 
 	if (!keyboard->input_method_resource)
 		return;
@@ -532,7 +532,7 @@ input_method_context_grab_modifier(struct wl_keyboard_grab *grab, uint32_t seria
 				   mods_locked, group);
 }
 
-static const struct wl_keyboard_grab_interface input_method_context_grab = {
+static const struct weston_keyboard_grab_interface input_method_context_grab = {
 	input_method_context_grab_key,
 	input_method_context_grab_modifier,
 };
@@ -557,10 +557,10 @@ input_method_context_grab_keyboard(struct wl_client *client,
 				seat->xkb_info.keymap_fd,
 				seat->xkb_info.keymap_size);
 
-	if (keyboard->keyboard.grab != &keyboard->keyboard.default_grab) {
-		wl_keyboard_end_grab(&keyboard->keyboard);
+	if (keyboard->grab != &keyboard->default_grab) {
+		weston_keyboard_end_grab(keyboard);
 	}
-	wl_keyboard_start_grab(&keyboard->keyboard, &keyboard->input_method_grab);
+	weston_keyboard_start_grab(keyboard, &keyboard->input_method_grab);
 	keyboard->input_method_resource = cr;
 }
 
@@ -574,8 +574,8 @@ input_method_context_key(struct wl_client *client,
 {
 	struct input_method_context *context = resource->data;
 	struct weston_seat *seat = context->input_method->seat;
-	struct wl_keyboard *keyboard = seat->seat.keyboard;
-	struct wl_keyboard_grab *default_grab = &keyboard->default_grab;
+	struct weston_keyboard *keyboard = seat->seat.keyboard;
+	struct weston_keyboard_grab *default_grab = &keyboard->default_grab;
 
 	default_grab->interface->key(default_grab, time, key, state_w);
 }
@@ -592,8 +592,8 @@ input_method_context_modifiers(struct wl_client *client,
 	struct input_method_context *context = resource->data;
 
 	struct weston_seat *seat = context->input_method->seat;
-	struct wl_keyboard *keyboard = seat->seat.keyboard;
-	struct wl_keyboard_grab *default_grab = &keyboard->default_grab;
+	struct weston_keyboard *keyboard = seat->seat.keyboard;
+	struct weston_keyboard_grab *default_grab = &keyboard->default_grab;
 
 	default_grab->interface->modifiers(default_grab,
 					   serial, mods_depressed,
@@ -662,14 +662,14 @@ input_method_context_create(struct text_model *model,
 static void
 input_method_context_end_keyboard_grab(struct input_method_context *context)
 {
-	struct wl_keyboard_grab *grab = &context->input_method->seat->keyboard.input_method_grab;
-	struct weston_keyboard *keyboard = (struct weston_keyboard *)grab->keyboard;
+	struct weston_keyboard_grab *grab = &context->input_method->seat->keyboard.input_method_grab;
+	struct weston_keyboard *keyboard = grab->keyboard;
 
 	if (!grab->keyboard)
 		return;
 
 	if (grab->keyboard->grab == grab)
-		wl_keyboard_end_grab(grab->keyboard);
+		weston_keyboard_end_grab(grab->keyboard);
 
 	keyboard->input_method_resource = NULL;
 }
@@ -733,7 +733,7 @@ input_method_notifier_destroy(struct wl_listener *listener, void *data)
 static void
 handle_keyboard_focus(struct wl_listener *listener, void *data)
 {
-	struct wl_keyboard *keyboard = data;
+	struct weston_keyboard *keyboard = data;
 	struct input_method *input_method =
 		container_of(listener, struct input_method, keyboard_focus_listener);
 	struct wl_surface *surface = keyboard->focus;
diff --git a/tests/weston-test.c b/tests/weston-test.c
index 55c5da4..cb7b3d6 100644
--- a/tests/weston-test.c
+++ b/tests/weston-test.c
@@ -155,7 +155,7 @@ activate_surface(struct wl_client *client, struct wl_resource *resource,
 
 	if (surface) {
 		weston_surface_activate(surface, seat);
-		notify_keyboard_focus_in(seat, &seat->keyboard.keyboard.keys,
+		notify_keyboard_focus_in(seat, &seat->keyboard.keys,
 					 STATE_UPDATE_AUTOMATIC);
 	}
 	else {
-- 
1.8.1.4



More information about the wayland-devel mailing list