Hi,

I am currently not calling registry.start() and may be thats why the cache
is going out of sync. I will try disabling caching. Thanks for the reply.

Thanks & Regards,
Nischal E Rao

On Mon, May 23, 2011 at 8:04 AM, Mike Gorse <[email protected]> wrote:

> Hi Nischal,
>
> This sounds like a caching issue, as Trevor suggested; AT-SPI2 caches more
> aggressively than AT-SPI-CORBA in order to compensate for D-Bus calls being
> somewhat slow.  So there are a few issues:
>
> - If an application doesn't send events when an object's name, description,
> children, or state change, then the cache can get out of synch.  There is an
> API (setCacheMask in pyatspi2) that is supposed to allow an AT to determine
> what does and doesn't get cached, in order to make it possible to work
> around toolkits not always sending the expected events, but there were
> several issues with it.  I've just committed some changes/fixes to it that
> will go into the release tomorrow.  So you could run something like
> app.setCacheMask (pyatspi.cache.ALL ^ pyatspi.cache.STATE)
> to prevent state sets from being cached for a given application, where
> "app" is a root accessible for the given application. Or:
> pyatspi.Registry.getDesktop(0).setCacheMask (pyatspi.cache.NONE)
> to disable caching altogether.
>
> - Additionally, libatspi currently does not report to the registry that it
> cares about StateChanged/PropertyChange/ChildrenChanged signals even though
> it listens for them to maintain its cache, so at-spi2-atk would not send
> them if the AT was not explicitly listening for them.  I pushed a change to
> at-spi2-atk earlier today to make it always send these events, although I
> don't consider this ideal and would like to rework that logic for 2.2.
>
> - If a pyatspi script does not call registry.start() but instead calls
> sleep() or similar while waiting for user interaction, then it will not see
> any events and the cache will get out of synch.  I'll try to fix this before
> tomorrow's release; currently you'll need to disable caching as described
> above when using such a script.
>
> -Mike
>
>
> On Sun, 22 May 2011, Nischal Rao wrote:
>
>  Hi,
>>
>> I am trying to use the pyatspi2 in Gnome 3 for an application and found an
>> issue in at-spi2 that doesn't seem to exist in at-spi.
>> I noticed that the state of a node in the at-spi tree is not refreshed
>> when its state changes. Is there some kind of caching going on?
>>
>> Is there a way to refresh the at-spi2 registry?
>>
>> --
>> Best Regards,
>> Nischal E Rao
>>
>> Download VEDICS @ http://vedics.sourceforge.net/
>>
>>
>>


-- 
Best Regards,
Nischal E Rao

Download VEDICS @ http://vedics.sourceforge.net/
_______________________________________________
gnome-accessibility-devel mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gnome-accessibility-devel

Reply via email to