Remove transaction_add_damage

Instead, damage each container when applying the transaction.
This commit is contained in:
Ryan Dwyer 2018-06-27 17:46:03 +10:00
parent 61c1187685
commit be86d3aba6
7 changed files with 24 additions and 55 deletions

View file

@ -304,15 +304,6 @@ void arrange_windows(struct sway_container *container,
case C_TYPES:
break;
}
// Add damage for whatever container arrange_windows() was called with,
// unless it was called with the special floating container, in which case
// we'll damage the entire output.
if (container->type == C_CONTAINER && container->layout == L_FLOATING) {
struct sway_container *output = container_parent(container, C_OUTPUT);
transaction_add_damage(transaction, container_get_box(output));
} else {
transaction_add_damage(transaction, container_get_box(container));
}
add_deleted_containers(transaction);
}

View file

@ -550,11 +550,7 @@ void view_unmap(struct sway_view *view) {
ws->sway_workspace->fullscreen = NULL;
container_destroy(view->swayc);
struct sway_container *output = ws->parent;
struct sway_transaction *transaction = transaction_create();
arrange_windows(output, transaction);
transaction_add_damage(transaction, container_get_box(output));
transaction_commit(transaction);
arrange_and_commit(ws->parent);
} else {
struct sway_container *parent = container_destroy(view->swayc);
arrange_and_commit(parent);