diff options
author | emersion <contact@emersion.fr> | 2018-12-01 10:56:35 +0100 |
---|---|---|
committer | emersion <contact@emersion.fr> | 2018-12-01 10:56:35 +0100 |
commit | 6aaefad40db8b4c972d30a5841c1ff819bb0da09 (patch) | |
tree | 4e451fc441ee78882c6c8f990796bc14f4e7ed01 /rootston | |
parent | a22311ec76802d2d8eb4bc3fcb3e9b713f7cd1c6 (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.c | 9 |
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; } |