[ClutterActor] Fix check for zero opacity when being painted from a clone
Clutter short-circuits painting when an actor's opacity is zero. However if the actor is being painted from a ClutterClone then it will be painted using the clone's opacity instead so the test was broken.
This commit is contained in:
parent
03471daf50
commit
b061a00f4c
@ -2271,7 +2271,9 @@ clutter_actor_paint (ClutterActor *self)
|
|||||||
/* It's an important optimization that we consider painting of
|
/* It's an important optimization that we consider painting of
|
||||||
* actors with 0 opacity to be a NOP... */
|
* actors with 0 opacity to be a NOP... */
|
||||||
if (G_LIKELY (context->pick_mode == CLUTTER_PICK_NONE) &&
|
if (G_LIKELY (context->pick_mode == CLUTTER_PICK_NONE) &&
|
||||||
priv->opacity == 0)
|
/* If the actor is being painted from a clone then check the
|
||||||
|
clone's opacity instead */
|
||||||
|
(priv->opacity_parent ? priv->opacity_parent->priv : priv)->opacity == 0)
|
||||||
{
|
{
|
||||||
priv->queued_redraw = FALSE;
|
priv->queued_redraw = FALSE;
|
||||||
return;
|
return;
|
||||||
|
Loading…
Reference in New Issue
Block a user