From 8089cde9778541eeb08a6c959a0cc2d352e30cd2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 1 Dec 2017 11:02:26 +0100 Subject: [PATCH] gl renderer: Don't render unblurred text shadows to a texture We can do the same thing by simply drawing the text in the given shadow color. --- gsk/gl/gskglrenderer.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gsk/gl/gskglrenderer.c b/gsk/gl/gskglrenderer.c index e356316f58..782e5b4c7a 100644 --- a/gsk/gl/gskglrenderer.c +++ b/gsk/gl/gskglrenderer.c @@ -1142,6 +1142,18 @@ gsk_gl_renderer_add_render_ops (GskGLRenderer *self, continue; } + if (gsk_render_node_get_node_type (child) == GSK_TEXT_NODE) + { + offset_matrix = builder->current_modelview; + graphene_matrix_translate (&offset_matrix, &GRAPHENE_POINT3D_INIT (shadow->dx, shadow->dy, 0)); + prev_modelview = ops_set_modelview (builder, &offset_matrix); + + render_text_node (self, child, builder, &shadow->color, TRUE); + + ops_set_modelview (builder, &prev_modelview); + continue; + } + add_offscreen_ops (self, builder, min_x, max_x, min_y, max_y, child, &texture_id, &is_offscreen); ops_set_program (builder, &self->shadow_program);