mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2025-10-29 05:40:12 -04:00
color_management_v1: add destroy event to manager
This commit is contained in:
parent
138210f01c
commit
26c1476827
2 changed files with 7 additions and 0 deletions
|
|
@ -58,6 +58,10 @@ struct wlr_color_manager_v1_options {
|
|||
struct wlr_color_manager_v1 {
|
||||
struct wl_global *global;
|
||||
|
||||
struct {
|
||||
struct wl_signal destroy;
|
||||
} events;
|
||||
|
||||
struct {
|
||||
struct wlr_color_manager_v1_features features;
|
||||
|
||||
|
|
|
|||
|
|
@ -887,6 +887,8 @@ static void manager_bind(struct wl_client *client, void *data,
|
|||
|
||||
static void manager_handle_display_destroy(struct wl_listener *listener, void *data) {
|
||||
struct wlr_color_manager_v1 *manager = wl_container_of(listener, manager, display_destroy);
|
||||
wl_signal_emit_mutable(&manager->events.destroy, NULL);
|
||||
assert(wl_list_empty(&manager->events.destroy.listener_list));
|
||||
wl_list_remove(&manager->display_destroy.link);
|
||||
wl_global_destroy(manager->global);
|
||||
free(manager->render_intents);
|
||||
|
|
@ -934,6 +936,7 @@ struct wlr_color_manager_v1 *wlr_color_manager_v1_create(struct wl_display *disp
|
|||
manager->transfer_functions_len = options->transfer_functions_len;
|
||||
manager->primaries_len = options->primaries_len;
|
||||
|
||||
wl_signal_init(&manager->events.destroy);
|
||||
wl_list_init(&manager->outputs);
|
||||
wl_list_init(&manager->surface_feedbacks);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue