summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKirill Primak <[email protected]>2022-11-05 13:34:29 +0300
committerKirill Primak <[email protected]>2022-11-05 14:44:57 +0300
commit0500183cfa49ff289487a81a511a847ab25f407a (patch)
tree7312fba8bbc78a83538773d2e01bf30cbf22985b
parent06aea43a1d277263438057132998896785163f90 (diff)
scene: fix buffer source box transforming
-rw-r--r--wlr_scene.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/wlr_scene.c b/wlr_scene.c
index 69d6f4a..c0be855 100644
--- a/wlr_scene.c
+++ b/wlr_scene.c
@@ -613,16 +613,13 @@ void wlr_scene_buffer_set_buffer_with_damage(struct wlr_scene_buffer *scene_buff
if (wlr_fbox_empty(&box)) {
box.x = 0;
box.y = 0;
-
- if (scene_buffer->transform & WL_OUTPUT_TRANSFORM_90) {
- box.width = buffer->height;
- box.height = buffer->width;
- } else {
- box.width = buffer->width;
- box.height = buffer->height;
- }
+ box.width = buffer->width;
+ box.height = buffer->height;
}
+ wlr_fbox_transform(&box, &box, scene_buffer->transform,
+ buffer->width, buffer->height);
+
double scale_x, scale_y;
if (scene_buffer->dst_width || scene_buffer->dst_height) {
scale_x = scene_buffer->dst_width / box.width;