Cursor navigation problems in contenteditable web view

Originator:jalkut
Number:rdar://30736004 Date Originated:27-Feb-2017 12:53 PM
Status:Open Resolved:
Product:Accessibility Product Version:10.12.3 (16D32)
Classification:UI/Usability Reproducible:Always
 
Summary:
I am trying to get my head around a variety of issues VoiceOver users are having with my app, MarsEdit. It seems that cursor navigation in the editable web view has become increasing unprecitable and unreliable, to the point some users are unable to use VoiceOver with my app as of 10.12.3.

Because I don't use VO regularly myself, it's hard for me to understand the nuances of every shortcoming, so I am filing this to draw attention to the fact that things are not working well, and I will include one simple example that highlights one such problem.

Steps to Reproduce:
With VoiceOver enabled:

1. Open attached Accessibility.html in Safari.
2. Interact with the editable portion of the web page such that the typing cursor is positioned at the end of the text "Third paragraph." and VO is focused as deeply as possible on the editable view (VO-Shift-Down until focus doesn't go any deeper). You should be "In edit text".
3. Press return to create a new paragraph.
4. Type anything e.g. "Fourth paragraph."
5. Press VO-up-arrow twice to navigate paragraphs.

Expected Results:
Navigation should lead the VO cursor to focus on "First paragraph."

Actual Results:
Navigation gets stuck at "Second paragraph." and regardless of repeated attempts to navigate upwards, "First paragraph." is never focused. Instead it alternates between having no effect or switching focus back to "Third paragraph." If at some point you then reverse the order and type VO-down arrow, behavior is similarly unpredictable. You can end up in a state where "Fourth paragraph" is focused and subsequently any effort to navigate away has no effect.

This is but one of what are apparently many misbehaviors of VO in contenteditable text areas. Although VO behavior has, according to my users, never been perfect in this area, it is reported to have taken a dive in recent updates to Sierra.




Version:
10.12.3 (16D32)
Safari Version 10.0.3 (12602.4.8) 

Notes:


Configuration:


Attachments:
'Accessibility.html' was successfully uploaded.

Comments

Contents of the Accessibility.html file:

Try interacting with the following editable block. For example, interact with the third paragraph, add some text, press return. Then use VO-up-arrow and down arrow to navigate the entire area:

<div contenteditable="true"> <p>First paragraph.</p> <p>Second paragraph.</p> <p>Third paragraph.</p> </div>


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!