Bug 257953

Summary: AX: `polite` `aria-live` announcements are too aggressive inside editable text
Product: WebKit Reporter: Ben Cronin <bcronin>
Component: AccessibilityAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: andresg_22, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: Safari 16   
Hardware: All   
OS: All   
Attachments:
Description Flags
Video of caret navigation readout getting swallowed by a polite announcement none

Description Ben Cronin 2023-06-12 07:19:22 PDT
Created attachment 466667 [details]
Video of caret navigation readout getting swallowed by a polite announcement

Inside of editable text, updating the contents of a `polite` `aria-live` region during caret navigation interrupts readout of the text. 

Reproduction Steps:
1. Turn on VoiceOver
2. Go to https://codepen.io/bcronin2-the-animator/pen/zYMGVoj
3. Navigate to the first paragraph in the editable text region.
4. Arrow down to the next paragraph.
5. Notice what VO announces during the navigation to the second paragraph.

Expected: VO reads the full first line of the paragraph being navigated to, followed by the announcement that we've moved to a new paragraph.

Actual: VO begins to read the first full line of the paragraph being navigated to, but almost immediately interrupts that readout with the new "polite" aria-live content.

According to https://w3c.github.io/aria/#aria-live (and https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-live, fwiw), `polite` `aria-live` regions should not interrupt the current task, i.e., the readout of the line of text navigated to.

Safari 16.5 (but also observed on Chrome and Firefox)
MacOS 13.4

Impact: Graceful aria-live announcements are required to properly convey context within the Quip/Slack editor (this is true across OSes, but it is especially true on MacOS because markup patterns like `aria-roledescription` aren't supported sufficiently by VO to make them viable to convey this context).
Comment 1 Radar WebKit Bug Importer 2023-06-12 07:19:43 PDT
<rdar://problem/110642165>