From f9d1b7ca58195b822f10bd46dcabbcd10ee539a0 Mon Sep 17 00:00:00 2001 From: Georges Basile Stavracas Neto Date: Fri, 11 Sep 2020 16:32:16 -0300 Subject: [PATCH] clutter/clone: Use graphene APIs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This is another instance of graphene reversing the order of operations (see the commit notes of how ClutterActor was ported.) The tl;dr; here is that, in the CoglMatrix past, we used to do: (actor transforms) → scale and now, it's the other way round: scale → (actor transforms) due to changing from right-handed multiplications (CoglMatrix) to left-handed ones (graphene_matrix_t). https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1439 --- clutter/clutter/clutter-clone.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/clutter/clutter/clutter-clone.c b/clutter/clutter/clutter-clone.c index 97da2f7a2..86f124e6d 100644 --- a/clutter/clutter/clutter-clone.c +++ b/clutter/clutter/clutter-clone.c @@ -126,16 +126,12 @@ clutter_clone_apply_transform (ClutterActor *self, { ClutterClonePrivate *priv = CLUTTER_CLONE (self)->priv; - /* First chain up and apply all the standard ClutterActor - * transformations... */ + + if (priv->clone_source) + graphene_matrix_scale (matrix, priv->x_scale, priv->y_scale, 1.f); + CLUTTER_ACTOR_CLASS (clutter_clone_parent_class)->apply_transform (self, matrix); - - /* if we don't have a source, nothing else to do */ - if (priv->clone_source == NULL) - return; - - cogl_matrix_scale (matrix, priv->x_scale, priv->y_scale, 1.f); } static void