After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 665522 - FLAT REVIEW BROKEN IN GECKO APPS WITH AT-SPI2
FLAT REVIEW BROKEN IN GECKO APPS WITH AT-SPI2
Status: RESOLVED FIXED
Product: orca
Classification: Applications
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: Orca Maintainers
Orca Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-12-03 23:16 UTC by Trevor Saunders (IRC: tbsaunde)
Modified: 2011-12-05 16:59 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Trevor Saunders (IRC: tbsaunde) 2011-12-03 23:16:25 UTC
STR:
TRY TO REVIEW A WEB PAGE IN FIREFOX.

tHIS WORKS WITH AT-SPI BUT NOT AT-SPI2.
Comment 1 Joanmarie Diggs (IRC: joanie) 2011-12-04 00:08:50 UTC
If it works with AT-SPI, but not AT-SPI2, is this an Orca bug?
Comment 2 Trevor Saunders (IRC: tbsaunde) 2011-12-04 01:09:29 UTC
(In reply to comment #1)
> If it works with AT-SPI, but not AT-SPI2, is this an Orca bug?

That's an interesting question, my guess would be it will end up not being one, but I'm not sure whose bug it is yet.
Comment 3 Michal Zegan 2011-12-04 10:55:15 UTC
I think that even with at-spi1, flat review didn't always work.
Would it be possible to make a key combination that somehow clicks the object where my cursor is at the moment?
Comment 4 Joanmarie Diggs (IRC: joanie) 2011-12-04 16:23:55 UTC
So a couple of things:

1. I just tried Orca from master with AT-SPI2 from master and Firefox 8.0 in an Fedora 16 box and was able to successfully flat review the content of the Orca wiki. As a result, I definitely need more information in order to fix this bug.

2. As was pointed out, there are existing Gecko bugs that sometimes prevent us from seeing content correctly via flat review.

Leaving status as NEEDINFO.
Comment 5 Joanmarie Diggs (IRC: joanie) 2011-12-05 16:44:21 UTC
From Mike Gorse (AT-SPI2 maintainer) on the orca-list:

~~~~~~~~~~~~~~~~~

There's something going wrong with AT-SPI caching children. Either Mozilla 
is sometimes not sending children-changed events when objects are added or 
removed, or libatspi isn't properly updating its cache. I can't say which 
for sure--I haven't taken the time to track it down.

This patch to Orca should help in the meantime:

diff --git a/src/orca/scripts/toolkits/Gecko/script.py b/src/orca/scripts/toolkits/Gecko/script.py
index ae0062f..3955213 100644
--- a/src/orca/scripts/toolkits/Gecko/script.py
+++ b/src/orca/scripts/toolkits/Gecko/script.py
@@ -279,6 +279,8 @@ class Script(default.Script):
          self.preMouseOverContext = [None, -1]
          self.inMouseOverObject = False

+        app.setCacheMask(pyatspi.cache.ALL ^ pyatspi.cache.CHILDREN)
+
      def activate(self):
          """Called when this script is activated."""
          self.savedEnabledBrailledTextAttributes = \
Comment 6 Joanmarie Diggs (IRC: joanie) 2011-12-05 16:59:47 UTC
Thanks Mike!

I've committed your work around. I'm going to close this bug as FIXED.

http://git.gnome.org/browse/orca/commit/?id=5b464433d3361a9a5e22cada9d9116270c07375e