From 4505f4f17b147921dc7838ce3f9234bc73451d98 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Fri, 10 May 2019 02:54:24 +0200 Subject: [PATCH] rendernode: Set EXTEND_PAD when drawing textures --- gsk/gskrendernodeimpl.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gsk/gskrendernodeimpl.c b/gsk/gskrendernodeimpl.c index f6200f1560..a5f0c03c73 100644 --- a/gsk/gskrendernodeimpl.c +++ b/gsk/gskrendernodeimpl.c @@ -636,6 +636,7 @@ gsk_texture_node_draw (GskRenderNode *node, { GskTextureNode *self = (GskTextureNode *) node; cairo_surface_t *surface; + cairo_pattern_t *pattern; surface = gdk_texture_download_surface (self->texture); @@ -646,11 +647,14 @@ gsk_texture_node_draw (GskRenderNode *node, node->bounds.size.width / gdk_texture_get_width (self->texture), node->bounds.size.height / gdk_texture_get_height (self->texture)); - cairo_set_source_surface (cr, surface, 0, 0); + pattern = cairo_pattern_create_for_surface (surface); + cairo_pattern_set_extend (pattern, CAIRO_EXTEND_PAD); + cairo_set_source (cr, pattern); cairo_paint (cr); cairo_restore (cr); + cairo_pattern_destroy (pattern); cairo_surface_destroy (surface); }