aboutsummaryrefslogtreecommitdiff
path: root/sway/desktop/transaction.c
diff options
context:
space:
mode:
authorRyan Dwyer <ryandwyer1@gmail.com>2018-08-17 20:25:33 +1000
committerRyan Dwyer <ryandwyer1@gmail.com>2018-08-17 20:25:33 +1000
commit1801b725e267b2fba6b98171adcd2de8f7db9235 (patch)
tree0add5e55f85331938043eb5b0962b259d7a4af0a /sway/desktop/transaction.c
parent32193c7e4def7c0ba9cf8a7fcff02b1840d2b279 (diff)
Add using_csd variable to transaction state
This fixes a race condition flicker when unfloating a view which uses client side decorations. When the view is floated it has using_csd = true, so the decorations are not drawn. When unfloating it it changes to false, but this change wasn't part of transactions so it could potentially render the decorations around the view while it's waiting for the transaction to apply.
Diffstat (limited to 'sway/desktop/transaction.c')
-rw-r--r--sway/desktop/transaction.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sway/desktop/transaction.c b/sway/desktop/transaction.c
index c08730ce..e89f01d8 100644
--- a/sway/desktop/transaction.c
+++ b/sway/desktop/transaction.c
@@ -107,6 +107,7 @@ static void copy_pending_state(struct sway_container *container,
state->border_left = view->border_left;
state->border_right = view->border_right;
state->border_bottom = view->border_bottom;
+ state->using_csd = view->using_csd;
} else if (container->type == C_WORKSPACE) {
state->ws_fullscreen = container->sway_workspace->fullscreen;
state->ws_floating = container->sway_workspace->floating;