summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
f734be9)
Previously, all property-change signals were passed on, regardless of any
registered listeners, because some of them are used by libatspi to keep the
cache up-to-date. However, gtk sends many notifications for property changes
that would have no impact on libatspi's caching code, so we should not waste
time building and sending D-Bus messages for them unless something is
interested in the event.
https://bugzilla.gnome.org/show_bug.cgi?id=674719
* TODO: FOr 2.2, have at-spi2-core define a special "cache listener" for
* this instead, so that we don't send these if no one is listening */
if (!g_strcmp0 (data [1], "ChildrenChanged") ||
* TODO: FOr 2.2, have at-spi2-core define a special "cache listener" for
* this instead, so that we don't send these if no one is listening */
if (!g_strcmp0 (data [1], "ChildrenChanged") ||
- !g_strcmp0 (data [1], "PropertyChange") ||
+ ((!g_strcmp0 (data [1], "PropertyChange")) &&
+ (!g_strcmp0 (data [2], "accessible-name") ||
+ !g_strcmp0 (data [2], "accessible-description") ||
+ !g_strcmp0 (data [2], "accessible-parent") ||
+ !g_strcmp0 (data [2], "accessible-role"))) ||
!g_strcmp0 (data [1], "StateChanged"))
{
g_free (data [2]);
!g_strcmp0 (data [1], "StateChanged"))
{
g_free (data [2]);