From: Matthias Clasen Date: Mon, 1 May 2023 17:28:27 +0000 (-0400) Subject: gsk: Extract scales properly from 2D transforms X-Git-Tag: archive/raspbian/4.12.3+ds-1+rpi1~1^2^2^2~22^2~1^2~323^2~4 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=319762b908d1a6896fb2a07172409e08ce147abd;p=gtk4.git gsk: Extract scales properly from 2D transforms We have the code to do it properly. --- diff --git a/gsk/gl/gskglrenderjob.c b/gsk/gl/gskglrenderjob.c index 96637054d2..7fa6408fc2 100644 --- a/gsk/gl/gskglrenderjob.c +++ b/gsk/gl/gskglrenderjob.c @@ -466,13 +466,14 @@ extract_matrix_metadata (GskGLRenderModelview *modelview) case GSK_TRANSFORM_CATEGORY_2D: { - float xx, xy, yx, yy, dx, dy; + float skew_x, skew_y, angle, dx, dy; - gsk_transform_to_2d (modelview->transform, - &xx, &xy, &yx, &yy, &dx, &dy); - - modelview->scale_x = sqrtf (xx * xx + xy * xy); - modelview->scale_y = sqrtf (yx * yx + yy * yy); + gsk_transform_to_2d_components (modelview->transform, + &skew_x, &skew_y, + &modelview->scale_x, &modelview->scale_y, + &angle, &dx, &dy); + modelview->dx = 0; + modelview->dy = 0; } break;