Closed
Bug 1298498
Opened 8 years ago
Closed 7 years ago
Accessible Grid structure is incorrect when using aria-owns to establish parent-child relationship
Categories
(Core :: Disability Access APIs, defect)
Tracking
()
RESOLVED
WORKSFORME
People
(Reporter: alex.tokarev, Unassigned)
References
(Blocks 1 open bug)
Details
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36 Steps to reproduce: Try this markup test with JAWS 17: http://aria-test.sencha.com/aria/locked-grid-markup.html. Clicking on cells will give different behavior for the left ("master") side and right ("slave") side. As per https://bugzilla.mozilla.org/show_bug.cgi?id=1133213 using aria-owns should reestablish child-parent relationships and both sides should be recognized as one seamless accessible Grid widget. Actual results: Click on "Apple Inc". JAWS will read "Test grid grid. Company. Column 1 row 2". Click on "AAPL", JAWS will read "Symbol. AAPL". Click on "$123.43", JAWS will read only cell value but not associated column header. Click the document outside of the table. Click "-$3.21" in Price change column. JAWS will read "Test grid grid. -$1.23". Expected results: Clicking on "$123.43" after "AAPL" should read "Stock price. $123.43". Clicking back into grid from the document on "-$3.21" in Price change column should read "Test grid grid. Column 4 row 3. Price change. -$3.21".
Updated•8 years ago
|
QA Whiteboard: [bugday-20160829]
Component: Untriaged → Disability Access
Updated•8 years ago
|
Component: Disability Access → Disability Access APIs
Product: Firefox → Core
Updated•8 years ago
|
Status: UNCONFIRMED → NEW
Ever confirmed: true
Reporter | ||
Comment 1•8 years ago
|
||
Can we get some traction on this issue please? It is blocking our progress on accessible multi-scrolling region grid in Ext JS. I'm pretty sure the underlying aria-owns feature can be used by other frameworks as well for the similar purposes. At the moment it's plain impossible to implement a complex grid in accessible way and this bug is the only obstacle left in our path (I hope).
Comment 2•8 years ago
|
||
Hey, Alex. Given that we have quite restricted resources next few months, I'm not sure, if anyone can jump on it anytime soon. I could put it on my list, but I cannot guarantee I will be faster. Alternatively, if your company policy allows that, then you could devote some time to fix this, I'd be happy to help with it.
Reporter | ||
Comment 3•8 years ago
|
||
Alexander, thanks for clarification. I don't think it would be a problem if I took a stab at this; I'm not sure it would be anything but waste of time though. My C++ is, shall we say, very rusty, and more importantly, I'm not familiar with Mozilla code base and have no clue what could cause the problem and where to look for it. Any pointers in that regard?
Comment 4•8 years ago
|
||
I'd say this bug requires some debugging, rather than strong c++ skills, anyway. I checked the accessible tree with DOM Inspector on Nightly, and I see IAccessibleTableCell exposed on each arai-owned cell, which provides correct column header relation and row/column indices. I can see that 'table' property is wrong on them, which should be fixed of course, but it shouldn't be the problem you observe. Did you try other screen readers like NVDA/VoiceOver?
Reporter | ||
Comment 5•8 years ago
|
||
I tried that with NVDA with similar results to JAWS. We do not target VoiceOver at this time so I didn't test that.
Comment 6•8 years ago
|
||
Jamie, could you take a look at the issue please? IAccessibleTableCell interface on aria-owned cells seems working with me (comment #4).
Flags: needinfo?(jamie)
Alexander/Jamie, We also feel this is a significant issue, and would appreciate your expedited attention towards it. Thanks.
Comment 8•7 years ago
|
||
I can't reproduce this with NVDA. NVDA correctly reports the Stock price and Price change column headers for those cells.
Flags: needinfo?(jamie)
Reporter | ||
Comment 9•7 years ago
|
||
@jamie, Not sure what steps you take but I just tried this example with NVDA 2016.4 and Firefox 50 and I still can reproduce the problem. I clicked consequently on cells: Apple Inc., AAPL, $123.43, -$1.23, CSCO. You can see that there is a big difference in NVDA speech log: Apple Inc. selected editable row 2 Apple Inc. AAPL selected editable Symbol column 2 AAPL $123.43 selected -$1.23 selected CSCO selected editable row 3 CSCO For the cells in two columns on the left, column headers are correctly associated with the cells and are announced as such. For three columns on the right, column headers are not announced, just cell value. Going back to a cell in leftmost 2 columns, column headers are correct again. In browse mode it's similar, column headers are only announced for leftmost 2 columns, and right side cells are just "cell". This looks like an issue to me.
Comment 10•7 years ago
|
||
I'm testing in Firefox nightly and cannot reproduce this. All column header information is read as expected. Can you please test with Firefox nightly and confirm whether you see the problem there?
Reporter | ||
Comment 11•7 years ago
|
||
@jamie, Thanks for the heads-up. I tried this example in both NVDA and JAWS 17 and I'm happy to report that the grid is now working properly, and not only in the nightly FF 53 but also in FF 52! Which is very good news indeed since FF 52 is going to be an ESR that we can target in our framework. Thanks guys!
Comment 12•7 years ago
|
||
worksforme per comment #11
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → WORKSFORME
You need to log in
before you can comment on or make changes to this bug.
Description
•