diff options
author | Matthias Clasen <mclasen@redhat.com> | 2023-05-01 14:46:30 -0400 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2023-05-01 14:46:30 -0400 |
commit | b79d4a3a22441efe61d0cfc4467704e45f205d10 (patch) | |
tree | e91b7a1510179ed6f43039b8d612779c679fbd36 | |
parent | 33ab588d4e2f74d67e118cdd7d81d4d009fe6828 (diff) | |
download | gtk+-b79d4a3a22441efe61d0cfc4467704e45f205d10.tar.gz |
gsk: Fix rendering big textures with offsets
When slicing the texture, the GL renderer was
forgetting to apply the viewport origin. This
shows up when rendering things with negative
scales, leading to negative origins.
-rw-r--r-- | gsk/gl/gskglrenderer.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gsk/gl/gskglrenderer.c b/gsk/gl/gskglrenderer.c index 306b042c98..007dae1f87 100644 --- a/gsk/gl/gskglrenderer.c +++ b/gsk/gl/gskglrenderer.c @@ -356,7 +356,8 @@ gsk_gl_renderer_render_texture (GskRenderer *renderer, for (x = 0; x < width; x += max_size) { texture = gsk_gl_renderer_render_texture (renderer, root, - &GRAPHENE_RECT_INIT (x, y, + &GRAPHENE_RECT_INIT (viewport->origin.x + x, + viewport->origin.y + y, MIN (max_size, viewport->size.width - x), MIN (max_size, viewport->size.height - y))); gdk_texture_download (texture, |