diff options
Diffstat (limited to 'sway/desktop/transaction.c')
-rw-r--r-- | sway/desktop/transaction.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sway/desktop/transaction.c b/sway/desktop/transaction.c index 7c5a9b8f..d2932c87 100644 --- a/sway/desktop/transaction.c +++ b/sway/desktop/transaction.c | |||
@@ -298,6 +298,13 @@ void transaction_commit(struct sway_transaction *transaction) { | |||
298 | instruction->state.view_width, | 298 | instruction->state.view_width, |
299 | instruction->state.view_height); | 299 | instruction->state.view_height); |
300 | ++transaction->num_waiting; | 300 | ++transaction->num_waiting; |
301 | |||
302 | // From here on we are rendering a saved buffer of the view, which | ||
303 | // means we can send a frame done event to make the client redraw it | ||
304 | // as soon as possible. Additionally, this is required if a view is | ||
305 | // mapping and its default geometry doesn't intersect an output. | ||
306 | struct timespec when; | ||
307 | wlr_surface_send_frame_done(con->sway_view->surface, &when); | ||
301 | } | 308 | } |
302 | list_add(con->instructions, instruction); | 309 | list_add(con->instructions, instruction); |
303 | } | 310 | } |