diff --git a/src/clipboard.c b/src/clipboard.c index 7db5d045..7f8d93b2 100644 --- a/src/clipboard.c +++ b/src/clipboard.c @@ -270,7 +270,7 @@ clipboard_create(struct weston_seat *seat) wl_signal_add(&seat->seat.selection_signal, &clipboard->selection_listener); - wl_signal_add(&seat->seat.destroy_signal, + wl_signal_add(&seat->destroy_signal, &clipboard->destroy_listener); return clipboard; diff --git a/src/compositor.h b/src/compositor.h index 1613b7c2..9512678d 100644 --- a/src/compositor.h +++ b/src/compositor.h @@ -330,7 +330,6 @@ struct weston_touch { struct wl_seat { struct wl_list base_resource_list; - struct wl_signal destroy_signal; struct weston_pointer *pointer; struct weston_keyboard *keyboard; diff --git a/src/input.c b/src/input.c index 8573555d..a8c9063c 100644 --- a/src/input.c +++ b/src/input.c @@ -1529,8 +1529,6 @@ weston_seat_init(struct weston_seat *seat, struct weston_compositor *ec) { memset(seat, 0, sizeof *seat); - wl_signal_init(&seat->seat.destroy_signal); - seat->seat.selection_data_source = NULL; wl_list_init(&seat->seat.base_resource_list); wl_signal_init(&seat->seat.selection_signal); @@ -1581,8 +1579,6 @@ weston_seat_release(struct weston_seat *seat) xkb_state_unref(seat->xkb_state.state); xkb_info_destroy(&seat->xkb_info); - wl_signal_emit(&seat->seat.destroy_signal, seat); - if (seat->seat.pointer) weston_pointer_release(seat->seat.pointer); if (seat->seat.keyboard) diff --git a/src/shell.c b/src/shell.c index de7e9bac..b7ee5765 100644 --- a/src/shell.c +++ b/src/shell.c @@ -471,7 +471,7 @@ focus_state_create(struct weston_seat *seat, struct workspace *ws) state->seat_destroy_listener.notify = focus_state_seat_destroy; state->surface_destroy_listener.notify = focus_state_surface_destroy; - wl_signal_add(&seat->seat.destroy_signal, + wl_signal_add(&seat->destroy_signal, &state->seat_destroy_listener); wl_list_init(&state->surface_destroy_listener.link); diff --git a/src/text-backend.c b/src/text-backend.c index 3037fe8c..aa91da72 100644 --- a/src/text-backend.c +++ b/src/text-backend.c @@ -874,7 +874,7 @@ handle_seat_created(struct wl_listener *listener, input_method, bind_input_method); input_method->destroy_listener.notify = input_method_notifier_destroy; - wl_signal_add(&seat->seat.destroy_signal, &input_method->destroy_listener); + wl_signal_add(&seat->destroy_signal, &input_method->destroy_listener); seat->input_method = input_method;