aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Simon Ser <contact@emersion.fr>2023-06-05 14:35:15 +0200
committerLibravatar Simon Ser <contact@emersion.fr>2023-06-05 14:35:15 +0200
commit55b5da64825fdbaff0961fcb01b7318b99d2945e (patch)
tree6f2cc5399566e0bc9bda35bbadd660c9291e451d
parentxwayland: fix mapped state check in OR handlers (diff)
downloadsway-output-detached-state.tar.gz
sway-output-detached-state.tar.zst
sway-output-detached-state.zip
desktop/output: use detached output state for page-flipsoutput-detached-state
This avoids relying on the implicit wlr_output.pending state.
-rw-r--r--sway/desktop/output.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sway/desktop/output.c b/sway/desktop/output.c
index fe1fa8af..5c899c3e 100644
--- a/sway/desktop/output.c
+++ b/sway/desktop/output.c
@@ -651,10 +651,13 @@ static int output_repaint_timer_handler(void *data) {
651 return false; 651 return false;
652 } 652 }
653 653
654 wlr_output_attach_buffer(wlr_output, buffer); 654 struct wlr_output_state state = {0};
655 wlr_output_state_set_buffer(&state, buffer);
655 wlr_buffer_unlock(buffer); 656 wlr_buffer_unlock(buffer);
656 657
657 if (!wlr_output_commit(wlr_output)) { 658 bool ok = wlr_output_commit_state(wlr_output, &state);
659 wlr_output_state_finish(&state);
660 if (!ok) {
658 return 0; 661 return 0;
659 } 662 }
660 663