summaryrefslogtreecommitdiff
path: root/gsk
diff options
context:
space:
mode:
authorTimm Bäder <mail@baedert.org>2019-12-17 16:24:17 +0100
committerTimm Bäder <mail@baedert.org>2020-01-07 17:27:16 +0100
commitf79c807645497544614e4588986e0466bd6b847f (patch)
tree106f88beab65fb01c1413e962901104a4c64f1b4 /gsk
parentd0d2ad9f5b5940f5fe5390bccaaa30dc1b4bf7d0 (diff)
downloadgtk+-f79c807645497544614e4588986e0466bd6b847f.tar.gz
gl renderer: Don't invert offset value twice
Diffstat (limited to 'gsk')
-rw-r--r--gsk/gl/gskglrenderer.c4
-rw-r--r--gsk/resources/glsl/inset_shadow.glsl3
-rw-r--r--gsk/resources/glsl/unblurred_outset_shadow.glsl3
3 files changed, 4 insertions, 6 deletions
diff --git a/gsk/gl/gskglrenderer.c b/gsk/gl/gskglrenderer.c
index e7f4234576..68fcdf6ddb 100644
--- a/gsk/gl/gskglrenderer.c
+++ b/gsk/gl/gskglrenderer.c
@@ -1555,7 +1555,7 @@ render_unblurred_inset_shadow_node (GskGLRenderer *self,
op->outline = transform_rect (self, builder, gsk_inset_shadow_node_peek_outline (node));
op->spread = spread * scale;
op->offset[0] = dx * scale;
- op->offset[1] = -dy * scale;
+ op->offset[1] = dy * scale;
load_vertex_data (vertex_data, node, builder);
@@ -1737,7 +1737,7 @@ render_unblurred_outset_shadow_node (GskGLRenderer *self,
op->outline = transform_rect (self, builder, outline);
op->spread = spread * scale;
op->offset[0] = dx * scale;
- op->offset[1] = - dy * scale;
+ op->offset[1] = dy * scale;
load_vertex_data (vertex_data, node, builder);
ops_draw (builder, vertex_data);
diff --git a/gsk/resources/glsl/inset_shadow.glsl b/gsk/resources/glsl/inset_shadow.glsl
index 1658559536..1549800363 100644
--- a/gsk/resources/glsl/inset_shadow.glsl
+++ b/gsk/resources/glsl/inset_shadow.glsl
@@ -17,10 +17,9 @@ void main() {
RoundedRect outside = create_rect(u_outline_rect);
RoundedRect inside = rounded_rect_shrink(outside, vec4(u_spread));
- vec2 offset = vec2(u_offset.x, - u_offset.y);
vec4 color = vec4(u_color.rgb * u_color.a, u_color.a);
color = color * clamp (rounded_rect_coverage (outside, f.xy) -
- rounded_rect_coverage (inside, f.xy - offset),
+ rounded_rect_coverage (inside, f.xy - u_offset),
0.0, 1.0);
setOutputColor(color * u_alpha);
}
diff --git a/gsk/resources/glsl/unblurred_outset_shadow.glsl b/gsk/resources/glsl/unblurred_outset_shadow.glsl
index 876ee9eb1e..27606f1476 100644
--- a/gsk/resources/glsl/unblurred_outset_shadow.glsl
+++ b/gsk/resources/glsl/unblurred_outset_shadow.glsl
@@ -19,9 +19,8 @@ void main() {
RoundedRect inside = create_rect(u_outline_rect);
RoundedRect outside = rounded_rect_shrink(inside, vec4(- u_spread));
- vec2 offset = vec2(u_offset.x, - u_offset.y);
vec4 color = vec4(u_color.rgb * u_color.a, u_color.a);
- color = color * clamp (rounded_rect_coverage (outside, f.xy - offset) -
+ color = color * clamp (rounded_rect_coverage (outside, f.xy - u_offset) -
rounded_rect_coverage (inside, f.xy),
0.0, 1.0);
setOutputColor(color * u_alpha);