summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmmanuele Bassi <ebassi@gnome.org>2016-02-23 15:12:57 +0000
committerEmmanuele Bassi <ebassi@gnome.org>2016-02-24 12:03:37 +0000
commit2b0ff2f2ba0af6f3baf094759c72615af9e5918f (patch)
tree64f344d3269acab09cebcc69046d905c6ce80bcb
parentc867e9d941c08b3ef8de722784a4d013ef92bb59 (diff)
downloadclutter-2b0ff2f2ba0af6f3baf094759c72615af9e5918f.tar.gz
cally: Avoid clone spamming state changes
Clones may generate a temporary map/unmap on their source when painting; this, in turn, will generate unnecessary ATK state changes. https://bugzilla.gnome.org/show_bug.cgi?id=756371
-rw-r--r--clutter/cally/cally-actor.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/clutter/cally/cally-actor.c b/clutter/cally/cally-actor.c
index 8163e791e..375b7db62 100644
--- a/clutter/cally/cally-actor.c
+++ b/clutter/cally/cally-actor.c
@@ -1017,6 +1017,13 @@ cally_actor_real_notify_clutter (GObject *obj,
}
else if (g_strcmp0 (pspec->name, "mapped") == 0)
{
+ /* Clones may temporarily map an actor in order to
+ * paint it; we don't want this to generate an ATK
+ * state change
+ */
+ if (clutter_actor_is_in_clone_paint (actor))
+ return;
+
state = ATK_STATE_SHOWING;
value = clutter_actor_is_mapped (actor);
}