GNOME Bugzilla – Bug 475177
Support new AT-SPI event name format
Last modified: 2007-09-26 18:31:14 UTC
The AT-SPI event object:children-changed and object:text-changed may also include a field to indicate whether the event came from a user action or was an internal system change. An example event string will take the form object:text-changed:add:system. The protocol change was necessary to convey additional information related to live regions. See bug https://bugzilla.mozilla.org/show_bug.cgi?id=392061 for more information. As Will points out, several equalities will need to use startswith() instead of a straight equality. The following event types are affected. object:children-changed:add object:children-changed:remove object:text-changed:delete object:text-changed:insert
Created attachment 95279 [details] [review] first version of Support new AT-SPI event name format This patch only addresses the event types listed in the opening comment. I hope I got them all!
(In reply to comment #1) > Created an attachment (id=95279) [edit] > first version of Support new AT-SPI event name format > > This patch only addresses the event types listed in the opening comment. I > hope I got them all! Rather than catch just the ones we are sure will end up having the ":system" attribute added to them by Firefox, I think we should try to catch every equality check we can find and turn it into a startswith. This should hopefully find most of them: find . -name \*.py | xargs grep "[.]type =="
Created attachment 95374 [details] [review] second version of Support new AT-SPI event name format This patch should address all equalities.
(In reply to comment #3) > Created an attachment (id=95374) [edit] > second version of Support new AT-SPI event name format > > This patch should address all equalities. > This looks good. Since we're in code freeze for GNOME 2.20.0, I think we should wait until after GNOME 2.20.0 is released next week and then commit this for GNOME 2.20.1: http://live.gnome.org/TwoPointNineteen.
Created attachment 95448 [details] [review] Patch for trunk that catches a couple more == checks. This patch catches a few more equality checks. Committed to trunk. A gnome-2-20 patch to follow.
Created attachment 95468 [details] [review] Patch for gnome-2-20 branch This is a patch for gnome-2-20. Needs testing. Once tested, we'll request a freeze break.
Created attachment 95521 [details] [review] Patch that is the same as the previous one, but includes the asynchronous support for testing repeatability In running the regression tests, both Joanie and I noticed that they were not repeatable with the same version of Orca on the same system. The source of this problem is that the async/sync mode work we did for testing made it into trunk, but not the gnome-2-20 branch. Without this work, the output of the tests will be nondeterministic. This patch includes the same stuff as the previous patch, but also adds in the async/sync work. With this patch, I see no difference in the regression test output before or after the patch was applied. This is a good thing. Joanie is going to test some more with Firefox using this patch, and I'm going to put in a freeze break request for GNOME 2.20. The importance of this fix is that Firefox 3.0 will end up being very broken without this patch in place.
Freeze break approved by Vincent Untz, Kjartan Maraas, Frederic Crozat (THANKS!). Committed to gnome-2-20 branch. Everyone -- please pull from the gnome-2-20 branch and give Orca a hammering.
I've seen no problems with this so I'm going to mark it as verified.
Me neither. I will mark it FIXED.