aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKirill Primak <vyivel@eclair.cafe>2022-11-12 12:58:48 +0300
committerSimon Ser <contact@emersion.fr>2022-11-12 11:50:04 +0100
commit85005b52fe5b832e4ea914fa28048b0c5c803769 (patch)
tree49166ff04126bf199f50325a8c82f7231c814f87
parent34933bb84350fe805d82276ea02d5732546e9993 (diff)
downloadsway-85005b52fe5b832e4ea914fa28048b0c5c803769.tar.xz
output: set damage ring bounds to pixel values
Fixes: https://github.com/swaywm/sway/issues/7254
-rw-r--r--sway/desktop/output.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/sway/desktop/output.c b/sway/desktop/output.c
index 75651a7a..81a20e25 100644
--- a/sway/desktop/output.c
+++ b/sway/desktop/output.c
@@ -840,8 +840,9 @@ static void handle_mode(struct wl_listener *listener, void *data) {
arrange_output(output);
transaction_commit_dirty();
- wlr_damage_ring_set_bounds(&output->damage_ring,
- output->width, output->height);
+ int width, height;
+ wlr_output_transformed_resolution(output->wlr_output, &width, &height);
+ wlr_damage_ring_set_bounds(&output->damage_ring, width, height);
wlr_output_schedule_frame(output->wlr_output);
update_output_manager_config(output->server);
@@ -872,11 +873,10 @@ static void handle_commit(struct wl_listener *listener, void *data) {
update_output_manager_config(output->server);
}
- if (event->committed & (WLR_OUTPUT_STATE_MODE |
- WLR_OUTPUT_STATE_TRANSFORM |
- WLR_OUTPUT_STATE_SCALE)) {
- wlr_damage_ring_set_bounds(&output->damage_ring,
- output->width, output->height);
+ if (event->committed & (WLR_OUTPUT_STATE_MODE | WLR_OUTPUT_STATE_TRANSFORM)) {
+ int width, height;
+ wlr_output_transformed_resolution(output->wlr_output, &width, &height);
+ wlr_damage_ring_set_bounds(&output->damage_ring, width, height);
wlr_output_schedule_frame(output->wlr_output);
}
}