[mutter] clutter/actor: Properly detect uninitialized allocations when easing
- From: Georges Basile Stavracas Neto <gbsneto src gnome org>
- To: commits-list gnome org
- Cc: 
- Subject: [mutter] clutter/actor: Properly detect uninitialized allocations when easing
- Date: Wed, 10 Jun 2020 17:10:20 +0000 (UTC)
commit 620dcf3364ae74e97b1634ce2cddcda74cf1c1dd
Author: Jonas Dreßler <verdre v0yd nl>
Date:   Fri Jun 5 23:13:11 2020 +0200
    clutter/actor: Properly detect uninitialized allocations when easing
    
    Now that we have a proper way to mark our allocation as uninitialized,
    make use of that and only disallow implicit transitions of the
    "allocation" property if that is the case.
    
    This fixes a bug where easing the allocation of an actor is impossible
    when someone queued a relayout on it (or a child of it) before.
    
    https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1290
 clutter/clutter/clutter-actor.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
---
diff --git a/clutter/clutter/clutter-actor.c b/clutter/clutter/clutter-actor.c
index 1ebc6dde00..fc49fe6d12 100644
--- a/clutter/clutter/clutter-actor.c
+++ b/clutter/clutter/clutter-actor.c
@@ -19381,7 +19381,8 @@ should_skip_implicit_transition (ClutterActor *self,
    * skip all transitions on the :allocation, to avoid actors "flying in"
    * into their new position and size
    */
-  if (pspec == obj_props[PROP_ALLOCATION] && priv->needs_allocation)
+  if (pspec == obj_props[PROP_ALLOCATION] &&
+      !clutter_actor_box_is_initialized (&priv->allocation))
     return TRUE;
 
   /* if the actor is not mapped and is not part of a branch of the scene
[
Date Prev][
Date Next]   [
Thread Prev][
Thread Next]   
[
Thread Index]
[
Date Index]
[
Author Index]