summaryrefslogtreecommitdiff
path: root/sway/desktop/render.c
diff options
context:
space:
mode:
authorWill McKinnon <[email protected]>2023-04-15 19:55:47 -0400
committerWill McKinnon <[email protected]>2023-04-15 19:55:47 -0400
commit7d774f769cec2faec25d01120b05589a34b4eb0b (patch)
tree65f1358da936e921eb23e673a9b76e90939cd14a /sway/desktop/render.c
parent8d3b7e13dfa6565cf3aec82ff1f8bda50a00d3ac (diff)
style: moved border_thickness out of render_shadow
Diffstat (limited to 'sway/desktop/render.c')
-rw-r--r--sway/desktop/render.c18
1 files changed, 7 insertions, 11 deletions
diff --git a/sway/desktop/render.c b/sway/desktop/render.c
index 6177691d..a89cbf6b 100644
--- a/sway/desktop/render.c
+++ b/sway/desktop/render.c
@@ -329,7 +329,7 @@ damage_finish:
// _box.width and .height are expected to be output-buffer-local
void render_box_shadow(struct sway_output *output, pixman_region32_t *output_damage,
const struct wlr_box *_box, const float color[static 4],
- float blur_sigma, float corner_radius, float border_thickness) {
+ float blur_sigma, float corner_radius) {
struct wlr_output *wlr_output = output->wlr_output;
struct fx_renderer *renderer = output->server->renderer;
@@ -340,9 +340,6 @@ void render_box_shadow(struct sway_output *output, pixman_region32_t *output_dam
box.width += 2 * blur_sigma;
box.height += 2 * blur_sigma;
- // Uses the outer radii of the window for a more realistic look
- corner_radius += border_thickness;
-
pixman_region32_t damage = create_damage(box, output_damage);
// don't damage area behind window since we dont render it anyway
@@ -490,29 +487,28 @@ static void render_view(struct sway_output *output, pixman_region32_t *damage,
render_view_toplevels(view, output, damage, deco_data);
}
+ struct sway_container_state *state = &con->current;
+
// Only draw shadows on CSD windows if shadows_on_csd is enabled
- if (con->current.border == B_CSD && !config->shadows_on_csd_enabled) {
+ if (state->border == B_CSD && !config->shadows_on_csd_enabled) {
return;
}
// render shadow
if (con->shadow_enabled && config->shadow_blur_sigma > 0 && config->shadow_color[3] > 0.0) {
- struct sway_container_state *state = &con->current;
struct wlr_box box = { floor(state->x), floor(state->y), state->width, state->height };
scale_box(&box, output->wlr_output->scale);
- render_box_shadow(output, damage, &box, config->shadow_color,
- config->shadow_blur_sigma, con->corner_radius,
- state->border_thickness);
+ render_box_shadow(output, damage, &box, config->shadow_color, config->shadow_blur_sigma,
+ con->corner_radius + state->border_thickness);
}
- if (con->current.border == B_NONE || con->current.border == B_CSD) {
+ if (state->border == B_NONE || state->border == B_CSD) {
return;
}
struct wlr_box box;
float output_scale = output->wlr_output->scale;
float color[4];
- struct sway_container_state *state = &con->current;
if (state->border_left) {
memcpy(&color, colors->child_border, sizeof(float) * 4);