Closed Bug 1198336 Opened 9 years ago Closed 4 years ago

Firefox/Voiceover: aria-live regions not being announced

Categories

(Core :: Disability Access APIs, defect, P1)

40 Branch
x86_64
macOS
defect

Tracking

()

RESOLVED FIXED
85 Branch
Tracking Status
firefox85 --- fixed

People

(Reporter: danny.wieser, Assigned: eeejay)

References

Details

(Whiteboard: [mac2020_1])

Attachments

(5 files)

Attached file aria-live.html
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36

Steps to reproduce:

Within a dynamic web application, attempt to utilize an aria-live region to announce either status information.

* Aria-live region populated by using javascript to append child elements to the live region
* Assertiveness set to polite (although issue also applies to other settings)

Mac 10.10.5, Voiceover and Firefox 40.0


Actual results:

Voiceover reads nothing from the aria-live region.


Expected results:

When a new child node is appended to the aria live region, the screenreader should announce the text value of that node. 

Note that Windows 7/Firefox 40.0.2/JAWS 16 works as expected.
OS: Unspecified → Mac OS X
Hardware: Unspecified → x86_64
Known issue that has to do with our as of yet incomplete implementation of Mac accessibility APIs.
Blocks: osxa11y
Status: UNCONFIRMED → NEW
Ever confirmed: true
Is this bug still valid/reproducible?
Flags: needinfo?(mzehe)
Very likely yes. We haven't done any work on Mac a11y in recent months due to resourcing/prioritization, and thus haven't actively pursued this or other Mac-related bugs.
Flags: needinfo?(mzehe)

Verified today, still an issue.

Whiteboard: [mac2020_1]
Priority: -- → P3
Severity: normal → S3
Blocks: 1662887
Priority: P3 → P1
Assignee: nobody → mreschenberg
Assignee: mreschenberg → eitan

VoiceOver pre-caches live region data and does its own deltas to
know what to parts of a subtree changed, and what to announce
based on AXARIAAtomic and AXARIARelevant.

I added a removed event as well. This will help us cache a "live region"
flag in the main process and avoid sync round trips for attributes when not needed.

We use an ivar boolean flag to cache the existance of a live region. This lets us
hide the live region AX attributes and avoid sync round trips to content.

Depends on D96291

I think VoiceOver uses this to pull in all live regions so it
can check for deletions when they change later on.

Depends on D96292

VoiceOver seems to do all the heavy lifting of figuring out what portion of the
live region should be read.

Depends on D96293

Pushed by eisaacson@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/68cf7e4b16f2
P1: Introduce live region added/removed events. r=Jamie,morgan
https://hg.mozilla.org/integration/autoland/rev/fd45661dd659
P2: Implement live region AX attributes and AXLiveRegionCreated notification. r=morgan
https://hg.mozilla.org/integration/autoland/rev/7a2dbe67b6a6
P3: Implement AXLiveRegionSearchKey. r=morgan
https://hg.mozilla.org/integration/autoland/rev/8399406e5f2e
P4: Post AXLiveRegionChanged when live regions change. r=morgan
Pushed by eisaacson@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/2c56e36b869d
P1: Introduce live region added/removed events. r=Jamie,morgan
https://hg.mozilla.org/integration/autoland/rev/ee78c1e8cc3b
P2: Implement live region AX attributes and AXLiveRegionCreated notification. r=morgan
https://hg.mozilla.org/integration/autoland/rev/821f94bae182
P3: Implement AXLiveRegionSearchKey. r=morgan
https://hg.mozilla.org/integration/autoland/rev/faa35ea77d35
P4: Post AXLiveRegionChanged when live regions change. r=morgan
Pushed by eisaacson@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/67f5a42ed170
P1: Introduce live region added/removed events. r=Jamie,morgan
https://hg.mozilla.org/integration/autoland/rev/823511f4191b
P2: Implement live region AX attributes and AXLiveRegionCreated notification. r=morgan
https://hg.mozilla.org/integration/autoland/rev/852dc98e8cf5
P3: Implement AXLiveRegionSearchKey. r=morgan
https://hg.mozilla.org/integration/autoland/rev/26ad5bb8e1ed
P4: Post AXLiveRegionChanged when live regions change. r=morgan

Ah sorry. Added an include, and tested on try. I think we're good:
https://treeherder.mozilla.org/jobs?repo=try&revision=60912d72cd9119886d5a431c5a9e446918aeafce

Flags: needinfo?(eitan)
Pushed by eisaacson@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/d5ba14136bc2
P1: Introduce live region added/removed events. r=Jamie,morgan
https://hg.mozilla.org/integration/autoland/rev/f1d53dd3f6a5
P2: Implement live region AX attributes and AXLiveRegionCreated notification. r=morgan
https://hg.mozilla.org/integration/autoland/rev/984c4b41ba37
P3: Implement AXLiveRegionSearchKey. r=morgan
https://hg.mozilla.org/integration/autoland/rev/304951c0df44
P4: Post AXLiveRegionChanged when live regions change. r=morgan
Blocks: 914054
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: