gl renderer: Add builder offset correctly for non-affine modelviews
authorTimm Bäder <mail@baedert.org>
Tue, 21 Jan 2020 09:00:51 +0000 (10:00 +0100)
committerTimm Bäder <mail@baedert.org>
Fri, 24 Jan 2020 05:19:16 +0000 (06:19 +0100)
gsk/gl/gskglrenderops.c

index 39916be36c8063910569b64f63112a786cd253a5..f113df5edf91fe4351203fad8ebbf71ec3fcb861 100644 (file)
@@ -180,13 +180,15 @@ ops_transform_bounds_modelview (const RenderOpBuilder *builder,
                                 const graphene_rect_t *src,
                                 graphene_rect_t       *dst)
 {
+  graphene_rect_t r = *src;
+
   g_assert (builder->mv_stack != NULL);
   g_assert (builder->mv_stack->len >= 1);
 
-  gsk_transform_transform_bounds (builder->current_modelview, src, dst);
+  r.origin.x += builder->dx;
+  r.origin.y += builder->dy;
 
-  dst->origin.x += builder->dx * builder->scale_x;
-  dst->origin.y += builder->dy * builder->scale_y;
+  gsk_transform_transform_bounds (builder->current_modelview, &r, dst);
 }
 
 void