GNOME Bugzilla – Bug 508784
Orca needs to handle FF hierarchies that don't match reality.
Last modified: 2008-03-26 18:38:05 UTC
If you examine the following URL in Accerciser: http://www.mozilla.org/projects/firefox/3.0b3pre/whatsnew/ You will find the following structure for the first section: I. Heading (Upper left) A. Link II. List (Lower right) A. List Item (fifth item) 1. About Link B. List Item (fourth item) 2. Developers Link C. List Item (third item) 3. Store Link D. List Item (second item) 4. Support Link E. List Item (first item) 5. Products Link III. Form (Above the list) A. Section (The items in the form are in expected order. Yea!) 1. Label 2. Entry 3. Push button Our new "performant" line reading and navigation code assumes that the hierarchy will bear some resemblance to the spatial layout. It does not do well with hierarchies that fail in this regard. I filed a couple of bugs/RFEs against FF for this issue: * https://bugzilla.mozilla.org/show_bug.cgi?id=411913 Accessible hierarchy should resemble spatial layout * https://bugzilla.mozilla.org/show_bug.cgi?id=411914 Please implement RELATION_FLOWS_TO/RELATION_FLOWS_FROM But Aaron has just informed me that the focus for FF3 is now stability and the above will have to wait. Therefore, it's up to us....
Created attachment 102629 [details] [review] proposed patch This solves the reported problem. We'll still repeat parts of the line first. That's getting addressed by my work in redoing find{Next,Previous}Line(). Mike please test this on a fresh trunk. If it works I'll check it in and create a new line nav patch. Thanks. Oh, already pylinted, regression tested, and functionally tested. :-)
I'm getting a file not found when I click the beta3 link for the test case.
Yeah, that's what always comes up. But at the top of the page is a section with a header, a form, and a backwards list. (I just chatted with Mike about this and he indicated that this patch works for him). Patch committed. I'm leaving this bug open for now. We still need to reverse the list and do other fancy things so that the user can navigate in the order elements are presented. I might tackle that as part of the line nav bug and I might not. Once I decide that, I'll put the other bug in pending. <smile>
I was giving this some more thought and have some questions for Mike. Issue 1: If the items in question are focusable (which they are in this case as well as in the BBC radio4 page), the Tab order will be based upon the order of the objects in the DOM assuming the content creator didn't do anything special. i.e. independent of Orca, on the BBC radio4 page, we have a list (on a single line) that visually looks like: A B C D E F G ... X Y Z Press Tab and you land on Z, press Tab again and you land on Y, then X, and so on and so forth. Right now, Orca reads that line as Z link Y link X link yadda, yadda, yadda. Flipping that around so that we read it in the right order will not (I *think*) be all that hard. But will the user get confused by the Tab order? -- something that I could not easily alter, and something which I do not think we should alter even if we could do so easily. Issue 2: In the original comment to this bug, we not only have a backwards list (similar to the BBC radio4 page), we have things earlier in the hierarchy appearing spatially after items which come later in the hierarchy. I'm honestly not sure what we should do about this one. I think we'd have to do some checking as we navigate line by line to see if it just so happens that this is the case. (Issue 2a and not good for performance) If it is the case, we'd also have to figure out some additional clever foo to move to move among these lines spatially. (Issue 2b and adds complication and potential breakage to what is already a rather complicated problem). I'm not trying to be a wuss.... :-) By the same token, I'm really not liking the thought of our trying to address issue 2. As long as we don't skip over these offending objects (we no longer are as far as I know) or get stuck on them (our remaining stuckage issues are not this issue), how important is it to have a 1-to-1 correspondence with the visual layout when that layout is not reflected by the hierarchy? I don't feel as strongly about issue 1. Nonetheless, I am leaning towards closing this bug out as FIXED (because it did fix a significant issue) and not addressing the bogus hierarchy stuff. Mike, please advise. Thanks!
I think reversing the order in issue one might confuse users. I don't think we should do anything about issue 2 as it really seems like something that should be fixed in firefox. I think you are OK to close this bug.
Okie dokie. Thanks Mike. I'll periodically continue to harass the FF guys about a reality-based hierarchy because if they would do *something* in that regard, this problem (and half of the Yahoo Mail buttons problem) would either vanish or be much more easily solvable. Resetting the target to 2.22 because the patch for this bug is in the release. (Hope that's okay). And closing as FIXED.