aboutsummaryrefslogtreecommitdiff
path: root/rootston
diff options
context:
space:
mode:
authoremersion <contact@emersion.fr>2018-12-01 10:56:35 +0100
committeremersion <contact@emersion.fr>2018-12-01 10:56:35 +0100
commit6aaefad40db8b4c972d30a5841c1ff819bb0da09 (patch)
tree4e451fc441ee78882c6c8f990796bc14f4e7ed01 /rootston
parenta22311ec76802d2d8eb4bc3fcb3e9b713f7cd1c6 (diff)
output: switch swap_buffers damage to output-buffer-local coords
This is one more step towards [1]. This gives more freedom to the compositor wrt. how it handles damage. [1]: https://github.com/swaywm/wlroots/issues/1363
Diffstat (limited to 'rootston')
-rw-r--r--rootston/output.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/rootston/output.c b/rootston/output.c
index 9ca55447..7017bd1f 100644
--- a/rootston/output.c
+++ b/rootston/output.c
@@ -522,12 +522,17 @@ renderer_end:
wlr_renderer_scissor(renderer, NULL);
wlr_renderer_end(renderer);
+ int width, height;
+ wlr_output_transformed_resolution(wlr_output, &width, &height);
+
if (server->config->debug_damage_tracking) {
- int width, height;
- wlr_output_transformed_resolution(wlr_output, &width, &height);
pixman_region32_union_rect(&damage, &damage, 0, 0, width, height);
}
+ enum wl_output_transform transform =
+ wlr_output_transform_invert(wlr_output->transform);
+ wlr_region_transform(&damage, &damage, transform, width, height);
+
if (!wlr_output_damage_swap_buffers(output->damage, &now, &damage)) {
goto damage_finish;
}