mirror of
https://github.com/brl/mutter.git
synced 2024-11-21 23:50:41 -05:00
actor: Expand is_in_clone_paint() check
The function should return true not only if the actor is being painted by a ClutterClone, but also if it's inside a sub-graph being painted by a ClutterClone. https://bugzilla.gnome.org/show_bug.cgi?id=756371
This commit is contained in:
parent
6240b1a228
commit
c867e9d941
@ -16376,9 +16376,29 @@ _clutter_actor_set_in_clone_paint (ClutterActor *self,
|
||||
gboolean
|
||||
clutter_actor_is_in_clone_paint (ClutterActor *self)
|
||||
{
|
||||
ClutterActor *parent;
|
||||
|
||||
g_return_val_if_fail (CLUTTER_IS_ACTOR (self), FALSE);
|
||||
|
||||
return self->priv->in_clone_paint;
|
||||
if (self->priv->in_clone_paint)
|
||||
return TRUE;
|
||||
|
||||
if (self->priv->in_cloned_branch == 0)
|
||||
return FALSE;
|
||||
|
||||
parent = self->priv->parent;
|
||||
while (parent != NULL)
|
||||
{
|
||||
if (parent->priv->in_cloned_branch == 0)
|
||||
break;
|
||||
|
||||
if (parent->priv->in_clone_paint)
|
||||
return TRUE;
|
||||
|
||||
parent = parent->priv->parent;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
|
Loading…
Reference in New Issue
Block a user