mirror of
				https://gitlab.freedesktop.org/wlroots/wlroots.git
				synced 2025-11-03 09:01:40 -05:00 
			
		
		
		
	rename wlr_seat to seat on seat structs
This commit is contained in:
		
							parent
							
								
									fddef4d58e
								
							
						
					
					
						commit
						74bca7251b
					
				
					 6 changed files with 43 additions and 43 deletions
				
			
		| 
						 | 
				
			
			@ -14,7 +14,7 @@
 | 
			
		|||
struct wlr_seat_client {
 | 
			
		||||
	struct wl_resource *wl_resource;
 | 
			
		||||
	struct wl_client *client;
 | 
			
		||||
	struct wlr_seat *wlr_seat;
 | 
			
		||||
	struct wlr_seat *seat;
 | 
			
		||||
 | 
			
		||||
	struct wl_resource *pointer;
 | 
			
		||||
	struct wl_resource *keyboard;
 | 
			
		||||
| 
						 | 
				
			
			@ -72,7 +72,7 @@ struct wlr_seat_pointer_grab {
 | 
			
		|||
};
 | 
			
		||||
 | 
			
		||||
struct wlr_seat_pointer_state {
 | 
			
		||||
	struct wlr_seat *wlr_seat;
 | 
			
		||||
	struct wlr_seat *seat;
 | 
			
		||||
	struct wlr_seat_client *focused_client;
 | 
			
		||||
	struct wlr_surface *focused_surface;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -89,7 +89,7 @@ struct wlr_seat_pointer_state {
 | 
			
		|||
};
 | 
			
		||||
 | 
			
		||||
struct wlr_seat_keyboard_state {
 | 
			
		||||
	struct wlr_seat *wlr_seat;
 | 
			
		||||
	struct wlr_seat *seat;
 | 
			
		||||
	struct wlr_keyboard *keyboard;
 | 
			
		||||
 | 
			
		||||
	struct wlr_seat_client *focused_client;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -475,7 +475,7 @@ static void handle_request_set_cursor(struct wl_listener *listener,
 | 
			
		|||
	struct wlr_seat_pointer_request_set_cursor_event *event = data;
 | 
			
		||||
 | 
			
		||||
	struct wlr_surface *focused_surface =
 | 
			
		||||
		event->seat_client->wlr_seat->pointer_state.focused_surface;
 | 
			
		||||
		event->seat_client->seat->pointer_state.focused_surface;
 | 
			
		||||
	bool ok = focused_surface != NULL && focused_surface->resource != NULL;
 | 
			
		||||
	if (ok) {
 | 
			
		||||
		struct wl_client *focused_client =
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -263,18 +263,18 @@ static struct wlr_data_offer *wlr_data_source_send_offer(
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
void wlr_seat_client_send_selection(struct wlr_seat_client *client) {
 | 
			
		||||
	if (!client->data_device) {
 | 
			
		||||
void wlr_seat_client_send_selection(struct wlr_seat_client *seat_client) {
 | 
			
		||||
	if (!seat_client->data_device) {
 | 
			
		||||
		return;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if (client->wlr_seat->selection_source) {
 | 
			
		||||
	if (seat_client->seat->selection_source) {
 | 
			
		||||
		struct wlr_data_offer *offer =
 | 
			
		||||
			wlr_data_source_send_offer(client->wlr_seat->selection_source,
 | 
			
		||||
				client->data_device);
 | 
			
		||||
		wl_data_device_send_selection(client->data_device, offer->resource);
 | 
			
		||||
			wlr_data_source_send_offer(seat_client->seat->selection_source,
 | 
			
		||||
				seat_client->data_device);
 | 
			
		||||
		wl_data_device_send_selection(seat_client->data_device, offer->resource);
 | 
			
		||||
	} else {
 | 
			
		||||
		wl_data_device_send_selection(client->data_device, NULL);
 | 
			
		||||
		wl_data_device_send_selection(seat_client->data_device, NULL);
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -340,7 +340,7 @@ static void data_device_set_selection(struct wl_client *client,
 | 
			
		|||
		wl_resource_get_user_data(dd_resource);
 | 
			
		||||
 | 
			
		||||
	// TODO: store serial and check against incoming serial here
 | 
			
		||||
	wlr_seat_set_selection(seat_client->wlr_seat, source, serial);
 | 
			
		||||
	wlr_seat_set_selection(seat_client->seat, source, serial);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void data_device_release(struct wl_client *client,
 | 
			
		||||
| 
						 | 
				
			
			@ -390,7 +390,7 @@ static void wlr_drag_set_focus(struct wlr_drag *drag,
 | 
			
		|||
	}
 | 
			
		||||
 | 
			
		||||
	struct wlr_seat_client *focus_client =
 | 
			
		||||
		wlr_seat_client_for_wl_client(drag->seat_client->wlr_seat,
 | 
			
		||||
		wlr_seat_client_for_wl_client(drag->seat_client->seat,
 | 
			
		||||
			wl_resource_get_client(surface->resource));
 | 
			
		||||
 | 
			
		||||
	if (!focus_client || !focus_client->data_device) {
 | 
			
		||||
| 
						 | 
				
			
			@ -418,7 +418,7 @@ static void wlr_drag_set_focus(struct wlr_drag *drag,
 | 
			
		|||
	}
 | 
			
		||||
 | 
			
		||||
	uint32_t serial =
 | 
			
		||||
		wl_display_next_serial(drag->seat_client->wlr_seat->display);
 | 
			
		||||
		wl_display_next_serial(drag->seat_client->seat->display);
 | 
			
		||||
 | 
			
		||||
	wl_data_device_send_enter(focus_client->data_device, serial,
 | 
			
		||||
		surface->resource, wl_fixed_from_double(sx),
 | 
			
		||||
| 
						 | 
				
			
			@ -427,7 +427,7 @@ static void wlr_drag_set_focus(struct wlr_drag *drag,
 | 
			
		|||
	drag->focus = surface;
 | 
			
		||||
	drag->focus_client = focus_client;
 | 
			
		||||
	drag->seat_client_unbound.notify = drag_client_seat_unbound;
 | 
			
		||||
	wl_signal_add(&focus_client->wlr_seat->events.client_unbound,
 | 
			
		||||
	wl_signal_add(&focus_client->seat->events.client_unbound,
 | 
			
		||||
		&drag->seat_client_unbound);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -561,7 +561,7 @@ static bool seat_client_start_drag(struct wlr_seat_client *client,
 | 
			
		|||
		return false;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	struct wlr_seat *seat = client->wlr_seat;
 | 
			
		||||
	struct wlr_seat *seat = client->seat;
 | 
			
		||||
 | 
			
		||||
	if (icon) {
 | 
			
		||||
		drag->icon = icon;
 | 
			
		||||
| 
						 | 
				
			
			@ -599,7 +599,7 @@ static void data_device_start_drag(struct wl_client *client,
 | 
			
		|||
		struct wl_resource *origin_resource, struct wl_resource *icon_resource,
 | 
			
		||||
		uint32_t serial) {
 | 
			
		||||
	struct wlr_seat_client *seat_client = wl_resource_get_user_data(device_resource);
 | 
			
		||||
	struct wlr_seat *seat = seat_client->wlr_seat;
 | 
			
		||||
	struct wlr_seat *seat = seat_client->seat;
 | 
			
		||||
	struct wlr_surface *origin = wl_resource_get_user_data(origin_resource);
 | 
			
		||||
	struct wlr_data_source *source = NULL;
 | 
			
		||||
	struct wlr_surface *icon = NULL;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -46,7 +46,7 @@ static void wl_pointer_set_cursor(struct wl_client *client,
 | 
			
		|||
	event->hotspot_x = hotspot_x;
 | 
			
		||||
	event->hotspot_y = hotspot_y;
 | 
			
		||||
 | 
			
		||||
	wl_signal_emit(&seat_client->wlr_seat->events.request_set_cursor, event);
 | 
			
		||||
	wl_signal_emit(&seat_client->seat->events.request_set_cursor, event);
 | 
			
		||||
 | 
			
		||||
	free(event);
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -67,7 +67,7 @@ static void wl_seat_get_pointer(struct wl_client *client,
 | 
			
		|||
		struct wl_resource *pointer_resource, uint32_t id) {
 | 
			
		||||
	struct wlr_seat_client *seat_client =
 | 
			
		||||
		wl_resource_get_user_data(pointer_resource);
 | 
			
		||||
	if (!(seat_client->wlr_seat->capabilities & WL_SEAT_CAPABILITY_POINTER)) {
 | 
			
		||||
	if (!(seat_client->seat->capabilities & WL_SEAT_CAPABILITY_POINTER)) {
 | 
			
		||||
		return;
 | 
			
		||||
	}
 | 
			
		||||
	if (seat_client->pointer) {
 | 
			
		||||
| 
						 | 
				
			
			@ -114,7 +114,7 @@ static void wl_seat_get_keyboard(struct wl_client *client,
 | 
			
		|||
		struct wl_resource *seat_resource, uint32_t id) {
 | 
			
		||||
	struct wlr_seat_client *seat_client =
 | 
			
		||||
		wl_resource_get_user_data(seat_resource);
 | 
			
		||||
	if (!(seat_client->wlr_seat->capabilities & WL_SEAT_CAPABILITY_KEYBOARD)) {
 | 
			
		||||
	if (!(seat_client->seat->capabilities & WL_SEAT_CAPABILITY_KEYBOARD)) {
 | 
			
		||||
		return;
 | 
			
		||||
	}
 | 
			
		||||
	if (seat_client->keyboard) {
 | 
			
		||||
| 
						 | 
				
			
			@ -129,7 +129,7 @@ static void wl_seat_get_keyboard(struct wl_client *client,
 | 
			
		|||
		seat_client, &wl_keyboard_destroy);
 | 
			
		||||
 | 
			
		||||
	seat_client_send_keymap(seat_client,
 | 
			
		||||
		seat_client->wlr_seat->keyboard_state.keyboard);
 | 
			
		||||
		seat_client->seat->keyboard_state.keyboard);
 | 
			
		||||
 | 
			
		||||
	// TODO possibly handle the case where this keyboard needs an enter
 | 
			
		||||
	// right away
 | 
			
		||||
| 
						 | 
				
			
			@ -150,7 +150,7 @@ static void wl_seat_get_touch(struct wl_client *client,
 | 
			
		|||
		struct wl_resource *seat_resource, uint32_t id) {
 | 
			
		||||
	struct wlr_seat_client *seat_client =
 | 
			
		||||
		wl_resource_get_user_data(seat_resource);
 | 
			
		||||
	if (!(seat_client->wlr_seat->capabilities & WL_SEAT_CAPABILITY_TOUCH)) {
 | 
			
		||||
	if (!(seat_client->seat->capabilities & WL_SEAT_CAPABILITY_TOUCH)) {
 | 
			
		||||
		return;
 | 
			
		||||
	}
 | 
			
		||||
	if (seat_client->touch) {
 | 
			
		||||
| 
						 | 
				
			
			@ -167,13 +167,13 @@ static void wl_seat_get_touch(struct wl_client *client,
 | 
			
		|||
 | 
			
		||||
static void wlr_seat_client_resource_destroy(struct wl_resource *resource) {
 | 
			
		||||
	struct wlr_seat_client *client = wl_resource_get_user_data(resource);
 | 
			
		||||
	wl_signal_emit(&client->wlr_seat->events.client_unbound, client);
 | 
			
		||||
	wl_signal_emit(&client->seat->events.client_unbound, client);
 | 
			
		||||
 | 
			
		||||
	if (client == client->wlr_seat->pointer_state.focused_client) {
 | 
			
		||||
		client->wlr_seat->pointer_state.focused_client = NULL;
 | 
			
		||||
	if (client == client->seat->pointer_state.focused_client) {
 | 
			
		||||
		client->seat->pointer_state.focused_client = NULL;
 | 
			
		||||
	}
 | 
			
		||||
	if (client == client->wlr_seat->keyboard_state.focused_client) {
 | 
			
		||||
		client->wlr_seat->keyboard_state.focused_client = NULL;
 | 
			
		||||
	if (client == client->seat->keyboard_state.focused_client) {
 | 
			
		||||
		client->seat->keyboard_state.focused_client = NULL;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if (client->pointer) {
 | 
			
		||||
| 
						 | 
				
			
			@ -209,7 +209,7 @@ static void wl_seat_bind(struct wl_client *client, void *_wlr_seat,
 | 
			
		|||
	seat_client->wl_resource =
 | 
			
		||||
		wl_resource_create(client, &wl_seat_interface, version, id);
 | 
			
		||||
	seat_client->client = client;
 | 
			
		||||
	seat_client->wlr_seat = wlr_seat;
 | 
			
		||||
	seat_client->seat = wlr_seat;
 | 
			
		||||
	wl_resource_set_implementation(seat_client->wl_resource, &wl_seat_impl,
 | 
			
		||||
		seat_client, wlr_seat_client_resource_destroy);
 | 
			
		||||
	wl_list_insert(&wlr_seat->clients, &seat_client->link);
 | 
			
		||||
| 
						 | 
				
			
			@ -286,7 +286,7 @@ struct wlr_seat *wlr_seat_create(struct wl_display *display, const char *name) {
 | 
			
		|||
		return NULL;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	wlr_seat->pointer_state.wlr_seat = wlr_seat;
 | 
			
		||||
	wlr_seat->pointer_state.seat = wlr_seat;
 | 
			
		||||
	wl_list_init(&wlr_seat->pointer_state.surface_destroy.link);
 | 
			
		||||
	wl_list_init(&wlr_seat->pointer_state.resource_destroy.link);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -313,7 +313,7 @@ struct wlr_seat *wlr_seat_create(struct wl_display *display, const char *name) {
 | 
			
		|||
	wlr_seat->keyboard_state.default_grab = keyboard_grab;
 | 
			
		||||
	wlr_seat->keyboard_state.grab = keyboard_grab;
 | 
			
		||||
 | 
			
		||||
	wlr_seat->keyboard_state.wlr_seat = wlr_seat;
 | 
			
		||||
	wlr_seat->keyboard_state.seat = wlr_seat;
 | 
			
		||||
	wl_list_init(&wlr_seat->keyboard_state.resource_destroy.link);
 | 
			
		||||
	wl_list_init(
 | 
			
		||||
		&wlr_seat->keyboard_state.surface_destroy.link);
 | 
			
		||||
| 
						 | 
				
			
			@ -405,7 +405,7 @@ static void pointer_surface_destroy_notify(struct wl_listener *listener,
 | 
			
		|||
	wl_list_remove(&state->surface_destroy.link);
 | 
			
		||||
	wl_list_init(&state->surface_destroy.link);
 | 
			
		||||
	state->focused_surface = NULL;
 | 
			
		||||
	wlr_seat_pointer_clear_focus(state->wlr_seat);
 | 
			
		||||
	wlr_seat_pointer_clear_focus(state->seat);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void pointer_resource_destroy_notify(struct wl_listener *listener,
 | 
			
		||||
| 
						 | 
				
			
			@ -415,7 +415,7 @@ static void pointer_resource_destroy_notify(struct wl_listener *listener,
 | 
			
		|||
	wl_list_remove(&state->resource_destroy.link);
 | 
			
		||||
	wl_list_init(&state->resource_destroy.link);
 | 
			
		||||
	state->focused_surface = NULL;
 | 
			
		||||
	wlr_seat_pointer_clear_focus(state->wlr_seat);
 | 
			
		||||
	wlr_seat_pointer_clear_focus(state->seat);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static bool wlr_seat_pointer_has_focus_resource(struct wlr_seat *wlr_seat) {
 | 
			
		||||
| 
						 | 
				
			
			@ -602,7 +602,7 @@ static void handle_keyboard_keymap(struct wl_listener *listener, void *data) {
 | 
			
		|||
	struct wlr_seat_keyboard_state *state =
 | 
			
		||||
		wl_container_of(listener, state, keyboard_keymap);
 | 
			
		||||
	struct wlr_seat_client *client;
 | 
			
		||||
	wl_list_for_each(client, &state->wlr_seat->clients, link) {
 | 
			
		||||
	wl_list_for_each(client, &state->seat->clients, link) {
 | 
			
		||||
		seat_client_send_keymap(client, state->keyboard);
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -671,7 +671,7 @@ static void keyboard_surface_destroy_notify(struct wl_listener *listener,
 | 
			
		|||
	wl_list_remove(&state->surface_destroy.link);
 | 
			
		||||
	wl_list_init(&state->surface_destroy.link);
 | 
			
		||||
	state->focused_surface = NULL;
 | 
			
		||||
	wlr_seat_keyboard_clear_focus(state->wlr_seat);
 | 
			
		||||
	wlr_seat_keyboard_clear_focus(state->seat);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void keyboard_resource_destroy_notify(struct wl_listener *listener,
 | 
			
		||||
| 
						 | 
				
			
			@ -681,7 +681,7 @@ static void keyboard_resource_destroy_notify(struct wl_listener *listener,
 | 
			
		|||
	wl_list_remove(&state->resource_destroy.link);
 | 
			
		||||
	wl_list_init(&state->resource_destroy.link);
 | 
			
		||||
	state->focused_surface = NULL;
 | 
			
		||||
	wlr_seat_keyboard_clear_focus(state->wlr_seat);
 | 
			
		||||
	wlr_seat_keyboard_clear_focus(state->seat);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void wlr_seat_keyboard_send_modifiers(struct wlr_seat *seat,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -320,7 +320,7 @@ static void shell_surface_protocol_set_popup(struct wl_client *client,
 | 
			
		|||
	struct wlr_surface *parent =
 | 
			
		||||
		wl_resource_get_user_data(parent_resource);
 | 
			
		||||
	struct wlr_wl_shell_popup_grab *grab =
 | 
			
		||||
		shell_popup_grab_from_seat(surface->shell, seat_client->wlr_seat);
 | 
			
		||||
		shell_popup_grab_from_seat(surface->shell, seat_client->seat);
 | 
			
		||||
	if (!grab) {
 | 
			
		||||
		wl_client_post_no_memory(client);
 | 
			
		||||
		return;
 | 
			
		||||
| 
						 | 
				
			
			@ -335,7 +335,7 @@ static void shell_surface_protocol_set_popup(struct wl_client *client,
 | 
			
		|||
		shell_surface_popup_set_parent(surface, wl_parent);
 | 
			
		||||
		grab->client = surface->client;
 | 
			
		||||
		surface->popup_mapped = true;
 | 
			
		||||
		wlr_seat_pointer_start_grab(seat_client->wlr_seat, &grab->pointer_grab);
 | 
			
		||||
		wlr_seat_pointer_start_grab(seat_client->seat, &grab->pointer_grab);
 | 
			
		||||
		return;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -356,7 +356,7 @@ static void shell_surface_protocol_set_popup(struct wl_client *client,
 | 
			
		|||
		wl_client_post_no_memory(client);
 | 
			
		||||
		return;
 | 
			
		||||
	}
 | 
			
		||||
	popup_state->seat = seat_client->wlr_seat;
 | 
			
		||||
	popup_state->seat = seat_client->seat;
 | 
			
		||||
	popup_state->serial = serial;
 | 
			
		||||
 | 
			
		||||
	shell_surface_set_state(surface, WLR_WL_SHELL_SURFACE_STATE_POPUP,
 | 
			
		||||
| 
						 | 
				
			
			@ -366,7 +366,7 @@ static void shell_surface_protocol_set_popup(struct wl_client *client,
 | 
			
		|||
	grab->client = surface->client;
 | 
			
		||||
	wl_list_insert(&grab->popups, &surface->grab_link);
 | 
			
		||||
	surface->popup_mapped = true;
 | 
			
		||||
	wlr_seat_pointer_start_grab(seat_client->wlr_seat, &grab->pointer_grab);
 | 
			
		||||
	wlr_seat_pointer_start_grab(seat_client->seat, &grab->pointer_grab);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void shell_surface_protocol_set_maximized(struct wl_client *client,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -368,7 +368,7 @@ static void xdg_popup_protocol_grab(struct wl_client *client,
 | 
			
		|||
 | 
			
		||||
	struct wlr_xdg_popup_grab_v6 *popup_grab =
 | 
			
		||||
		xdg_shell_popup_grab_from_seat(surface->client->shell,
 | 
			
		||||
			seat_client->wlr_seat);
 | 
			
		||||
			seat_client->seat);
 | 
			
		||||
 | 
			
		||||
	struct wlr_xdg_surface_v6 *topmost = xdg_popup_grab_get_topmost(popup_grab);
 | 
			
		||||
	bool parent_is_toplevel =
 | 
			
		||||
| 
						 | 
				
			
			@ -383,13 +383,13 @@ static void xdg_popup_protocol_grab(struct wl_client *client,
 | 
			
		|||
	}
 | 
			
		||||
 | 
			
		||||
	popup_grab->client = surface->client->client;
 | 
			
		||||
	surface->popup_state->seat = seat_client->wlr_seat;
 | 
			
		||||
	surface->popup_state->seat = seat_client->seat;
 | 
			
		||||
 | 
			
		||||
	wl_list_insert(&popup_grab->popups, &surface->popup_state->grab_link);
 | 
			
		||||
 | 
			
		||||
	wlr_seat_pointer_start_grab(seat_client->wlr_seat,
 | 
			
		||||
	wlr_seat_pointer_start_grab(seat_client->seat,
 | 
			
		||||
		&popup_grab->pointer_grab);
 | 
			
		||||
	wlr_seat_keyboard_start_grab(seat_client->wlr_seat,
 | 
			
		||||
	wlr_seat_keyboard_start_grab(seat_client->seat,
 | 
			
		||||
		&popup_grab->keyboard_grab);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue