Open Bug 1163744 Opened 9 years ago Updated 2 years ago

[a11y] div with tabindex skipped when navigating with NVDA

Categories

(Core :: Disability Access APIs, defect)

36 Branch
defect

Tracking

()

People

(Reporter: dylan, Unassigned)

References

(Blocks 1 open bug)

Details

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36

Steps to reproduce:

Go to this page

http://dylanb.github.io/rwd/part6/event_logger.html

Select only the checkboxes "div" and "div[role="checkbox"]"

Turn on NVDA and navigate through the DOM using the down arrow


Actual results:

The element with the text "I am a div that looks like a checkbox" is never announced

If you tab through the document, the item receives focus because of the tabindex="0" and is read


Expected results:

The element with the text "I am a div that looks like a checkbox" should be announced

If you tab through the document, the item receives focus because of the tabindex="0" and is read
OK, I investigated this, and can partially reproduce. Here are my observations, in baby steps:

1. Went to the page. The "Anchor" checkbox is checked by default.
2. Checked Div and Div[role="checkbox"].
3. Unchecked Anchor.

Result: I could reproduce the bug as described. The div that looks like a checkbox was, however, in the Accessible tree. It was just not rendered in NvDA's virtual buffer.

4. Closed the tab and wanted to comment here. Then remembered that I wanted to paste the NVDA object navigator info.
5. Reopened the tab. The Anchor checkbox was checked by default again.
6. First unchecked that this time, then checked the other two.

Result: Now, the text *was* rendered as clickable text.

7. To test a theory, enabled the Anchor checkbox.

Result: The Anchor, clickable text, and checkbox divs were rendered in NVDA's virtual buffer.

8. Unchecked the Anchor checkbox again. Left the other two untouched.

Result: Now, the Link, *and* the clickable text, disappeared from NVDA's virtual buffer.

9. To test another theory, pressed NVDA+F5 to force it to refresh its virtual buffer.

Result: Now, the clickable text was back.

So, there is something the moment the checkbox for Anchor is being uncheked that causes us to trick NVDA into thinking the clickable text was removed, too. I suspect something in our event firing is causing this, since when NVDA refreshes its full view of the page, the text reappears.

Alex, turning this over to you for event investigation.
Blocks: eventa11y
Status: UNCONFIRMED → NEW
Ever confirmed: true
Flags: needinfo?(surkov.alexander)
Product: Firefox → Core
Component: Untriaged → Disability Access APIs
(In reply to Marco Zehe (:MarcoZ) from comment #1)
> OK, I investigated this, and can partially reproduce. Here are my
> observations, in baby steps:

Wow - thanks for the detailed investigation!!
I don't see anything wrong with eventing, I guess there may be a problem with unsynchronized text interface with the tree since I see mutation events for whitespace accessibles, so I'd be good to have some help from Jamie to catch the problem.
Flags: needinfo?(surkov.alexander)
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.