summaryrefslogtreecommitdiff
path: root/atspi/atspi-accessible.h
diff options
context:
space:
mode:
authorMike Gorse <mgorse@suse.com>2015-06-18 20:04:31 -0500
committerMike Gorse <mgorse@suse.com>2015-08-14 18:49:46 -0500
commitb2c8c4c7230742b683db3d69a608950fede76b6c (patch)
treeacea76d5c73eef71648309da4ff71d16d5d88ce6 /atspi/atspi-accessible.h
parent2a9c0f5464ccf0b24c803c6a619f83d797362bde (diff)
downloadat-spi2-core-b2c8c4c7230742b683db3d69a608950fede76b6c.tar.gz
Modified cache API to include index and child count rather than children
The original cache API was problematic for QT AT-SPI because it forces enumeration of all children, preventing lazy instantiation of objects. The API now sends the object's index in parent and child count (or -1 if not known / children should not be cached) rather than an array of children. Also made cache of children a GPtrArray rather than a GList, since it may contain holes. If an object has not yet been instantiated for a particular child, then its value will be set to NULL, and atspi_accessible_get_child_at_index will make a dbus call to fetch the child, at which point it will be cached. https://bugzilla.gnome.org/show_bug.cgi?id=650090
Diffstat (limited to 'atspi/atspi-accessible.h')
-rw-r--r--atspi/atspi-accessible.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/atspi/atspi-accessible.h b/atspi/atspi-accessible.h
index 2c3f8cc7..443e395a 100644
--- a/atspi/atspi-accessible.h
+++ b/atspi/atspi-accessible.h
@@ -49,7 +49,7 @@ struct _AtspiAccessible
{
AtspiObject parent;
AtspiAccessible *accessible_parent;
- GList *children;
+ GPtrArray *children;
AtspiRole role;
gint interfaces;
char *name;
@@ -163,7 +163,7 @@ const gchar* atspi_accessible_get_object_locale (AtspiAccessible *accessible, GE
void atspi_accessible_set_cache_mask (AtspiAccessible *accessible, AtspiCache mask);
-void atspi_accessible_clear_cache (AtspiAccessible *accessible);
+void atspi_accessible_clear_cache (AtspiAccessible *obj);
guint atspi_accessible_get_process_id (AtspiAccessible *accessible, GError **error);