From 0a951517aed2375b972bbd70cb164bf7acb25e00 Mon Sep 17 00:00:00 2001 From: Kenny Levinsen Date: Tue, 9 May 2023 15:13:39 +0200 Subject: [PATCH] render: Clear using wlr_output dimensions Clear was done using sway_output's logical dimensions, instead of the wlr_output physical dimensions. This meant that when output scaling was applied, only a part of the screen would be cleared. Use the wlr_output dimensions instead. Regressed by: https://github.com/swaywm/sway/pull/7552 --- sway/desktop/render.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/sway/desktop/render.c b/sway/desktop/render.c index 552502aa..edefa658 100644 --- a/sway/desktop/render.c +++ b/sway/desktop/render.c @@ -1027,7 +1027,7 @@ void output_render(struct render_context *ctx) { if (debug.damage == DAMAGE_HIGHLIGHT) { wlr_render_pass_add_rect(ctx->pass, &(struct wlr_render_rect_options){ - .box = { .width = output->width, .height = output->height }, + .box = { .width = wlr_output->width, .height = wlr_output->height }, .color = { .r = 1, .g = 1, .b = 0, .a = 1 }, }); } @@ -1047,7 +1047,7 @@ void output_render(struct render_context *ctx) { } wlr_render_pass_add_rect(ctx->pass, &(struct wlr_render_rect_options){ - .box = { .width = output->width, .height = output->height }, + .box = { .width = wlr_output->width, .height = wlr_output->height }, .color = clear_color, .clip = &transformed_damage, }); @@ -1080,7 +1080,7 @@ void output_render(struct render_context *ctx) { if (fullscreen_con) { wlr_render_pass_add_rect(ctx->pass, &(struct wlr_render_rect_options){ - .box = { .width = output->width, .height = output->height }, + .box = { .width = wlr_output->width, .height = wlr_output->height }, .color = { .r = 0, .g = 0, .b = 0, .a = 1 }, .clip = &transformed_damage, }); @@ -1108,7 +1108,7 @@ void output_render(struct render_context *ctx) { #endif } else { wlr_render_pass_add_rect(ctx->pass, &(struct wlr_render_rect_options){ - .box = { .width = output->width, .height = output->height }, + .box = { .width = wlr_output->width, .height = wlr_output->height }, .color = { .r = 0.25f, .g = 0.25f, .b = 0.25f, .a = 1 }, .clip = &transformed_damage, });