diff options
author | Mike Gorse <mgorse@novell.com> | 2011-05-24 16:56:42 -0500 |
---|---|---|
committer | Mike Gorse <mgorse@novell.com> | 2011-05-24 16:56:42 -0500 |
commit | ceeff4934d735e18f1e96413335da9ea240094ea (patch) | |
tree | bd9ef896c2255ef4dd530a4fc7089a32fbacbd93 | |
parent | a12d7458110c57e183916255d701b1e0d7c070e1 (diff) | |
download | at-spi2-core-ceeff4934d735e18f1e96413335da9ea240094ea.tar.gz |
Add atspi_accessible_clear_cache
-rw-r--r-- | atspi/atspi-accessible.c | 20 | ||||
-rw-r--r-- | atspi/atspi-accessible.h | 2 |
2 files changed, 22 insertions, 0 deletions
diff --git a/atspi/atspi-accessible.c b/atspi/atspi-accessible.c index 6784607b..2a42d416 100644 --- a/atspi/atspi-accessible.c +++ b/atspi/atspi-accessible.c @@ -1395,6 +1395,26 @@ atspi_accessible_set_cache_mask (AtspiAccessible *accessible, AtspiCache mask) accessible->parent.app->cache = mask; } +/** + * atspi_accessible_clear_cache: + * @accessible: The #AtspiAccessible whose cache to clear. + * + * Clears the cached information for the given accessible and all of its + * descendants. + */ +void +atspi_accessible_clear_cache (AtspiAccessible *accessible) +{ + GList *l; + + if (accessible) + { + accessible->cached_properties = ATSPI_CACHE_NONE; + for (l = accessible->children; l; l = l->next) + atspi_accessible_clear_cache (l->data); + } +} + static AtspiCache _atspi_accessible_get_cache_mask (AtspiAccessible *accessible) { diff --git a/atspi/atspi-accessible.h b/atspi/atspi-accessible.h index 60972aab..ffa7f400 100644 --- a/atspi/atspi-accessible.h +++ b/atspi/atspi-accessible.h @@ -131,6 +131,8 @@ GArray * atspi_accessible_get_interfaces (AtspiAccessible *obj); void atspi_accessible_set_cache_mask (AtspiAccessible *accessible, AtspiCache mask); +void atspi_accessible_clear_cache (AtspiAccessible *accessible); + /* private */ void _atspi_accessible_add_cache (AtspiAccessible *accessible, AtspiCache flag); gboolean _atspi_accessible_test_cache (AtspiAccessible *accessible, AtspiCache flag); |