GNOME Bugzilla – Bug 473585
Caret not being set to ARIA listbox when navigating to it
Last modified: 2007-09-05 15:52:32 UTC
Will observed the following when testing a previous listbox patch seen here http://bugzilla.gnome.org/show_bug.cgi?id=468968. In http://www.mozilla.org/access/dhtml/listbox, I'm noticing the following: 1) Position the caret between the 'i' and 't' of "item" in the paragraph above the list box. 2) Down arrow to the list. 3) Press the right arrow. This takes you to the 'm' in item. Strange. The problem occurs because HTML numbered lists have a problem where the caret is set to the last item of the list. In these cases the caret is simply not set. The test encompasses all lists, but probably should only be for all non-ARIA lists because ARIA lists do not seem to have the same problem.
Created attachment 94936 [details] [review] first version of Caret not being set to ARIA listbox when navigating to it The patch fixes this problem. Now I need to fix the second item seen here http://bugzilla.gnome.org/show_bug.cgi?id=468968#c8
It should be noted that this additional patch must be applied first before testing http://bugzilla.gnome.org/attachment.cgi?id=94652
This is a very simple solution that should not affect non-ARIA widgets or impact performance dramatically. No other patches are needed for testing now.
The patch looks good. The only anal-retentive thing is a surface-level suggestion to try to follow the Javasoft coding conventions and place the binary and unary operators on the same line as the thing they apply to. We try to do this, and I admit it is an odd style. if self.isAriaWidget() \ or not (obj.role == rolenames.ROLE_LIST_ITEM \ and not obj.state.count(atspi.Accessibility.STATE_FOCUSABLE)):
Coding style was changed as described in comment #4. Committed to trunk.