diff options
author | Brian Ashworth <bosrsf04@gmail.com> | 2018-06-06 20:10:42 -0400 |
---|---|---|
committer | Brian Ashworth <bosrsf04@gmail.com> | 2018-06-06 20:11:24 -0400 |
commit | e072fbc6d98784e5610aa88251a15f64e30bbcae (patch) | |
tree | 7de104885aabb49f17739d7631ef6cd4f628e64a /sway/desktop | |
parent | a0bbe67076b8e32b47a272bc1e96be853006c65d (diff) | |
download | sway-e072fbc6d98784e5610aa88251a15f64e30bbcae.tar.xz |
Switch output storing from list_t to wl_list
Diffstat (limited to 'sway/desktop')
-rw-r--r-- | sway/desktop/output.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/sway/desktop/output.c b/sway/desktop/output.c index cb53a980..3142bdb4 100644 --- a/sway/desktop/output.c +++ b/sway/desktop/output.c @@ -1157,10 +1157,6 @@ void output_damage_whole_container(struct sway_output *output, wlr_output_damage_add_box(output->damage, &box); } -static int find_output(const void *output1, const void *output2) { - return output1 == output2 ? 0 : 1; -} - static void damage_handle_destroy(struct wl_listener *listener, void *data) { struct sway_output *output = wl_container_of(listener, output, damage_destroy); @@ -1172,12 +1168,9 @@ static void handle_destroy(struct wl_listener *listener, void *data) { if (output->swayc) { container_destroy(output->swayc); } - int index = list_seq_find(root_container.sway_root->outputs, find_output, - output); - if (index >= 0 && index < root_container.sway_root->outputs->length) { - wlr_log(L_DEBUG, "Removing %s from outputs list", - output->wlr_output->name); - list_del(root_container.sway_root->outputs, index); + + if (&output->link) { + wl_list_remove(&output->link); wl_list_remove(&output->destroy.link); output->wlr_output = NULL; free(output); @@ -1219,7 +1212,7 @@ void handle_new_output(struct wl_listener *listener, void *data) { output->wlr_output = wlr_output; wlr_output->data = output; output->server = server; - list_add(root_container.sway_root->outputs, output); + wl_list_insert(&root_container.sway_root->outputs, &output->link); output->damage = wlr_output_damage_create(wlr_output); |