Bug 155613 - AX: Typing broken on form input field while using VoiceOver
Summary: AX: Typing broken on form input field while using VoiceOver
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Accessibility (show other bugs)
Version: WebKit Nightly Build
Hardware: All All
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2016-03-17 17:22 PDT by Nan Wang
Modified: 2016-03-18 10:44 PDT (History)
11 users (show)

See Also:


Attachments
patch (2.16 KB, patch)
2016-03-17 17:47 PDT, Nan Wang
no flags Details | Formatted Diff | Diff
patch (5.32 KB, patch)
2016-03-17 22:00 PDT, Nan Wang
no flags Details | Formatted Diff | Diff
patch (5.43 KB, patch)
2016-03-17 22:43 PDT, Nan Wang
cfleizach: review+
commit-queue: commit-queue-
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Nan Wang 2016-03-17 17:22:59 PDT
When navigating to the form elements with VO + the arrow keys and then stopping at a input field, the cursor jumps and there's no way to type.
Comment 1 Radar WebKit Bug Importer 2016-03-17 17:23:30 PDT
<rdar://problem/25230574>
Comment 2 Nan Wang 2016-03-17 17:47:59 PDT
Created attachment 274349 [details]
patch

Spent quite a long time trying to figure out a way to test. Was adding the AXSelectedTextMarkerRange notification to the test and getting the TextMarkerRange when input field is focused. But even we get the TextMarkerRange for that selection, it's difficult to determine which node the TextMarker is associated with. Or we can expose some function to get the Range object from TextMarkerRange, then check the node in it. Seems there's no easy way to do this. So I'd rather put the fix here first.
Comment 3 chris fleizach 2016-03-17 18:20:46 PDT
Comment on attachment 274349 [details]
patch

View in context: https://bugs.webkit.org/attachment.cgi?id=274349&action=review

it seems like we could write a test with "a <div contenteditable="true"></div> b" and get the range of the whole content there and then verify that the length is correct or that it has the right embedded elements

> Source/WebCore/ChangeLog:8
> +        The div element inside the INPUT element gives a collapsed TextMarkerRange which then creates

why does this break typing with VO?
Comment 4 Nan Wang 2016-03-17 18:30:16 PDT
Comment on attachment 274349 [details]
patch

View in context: https://bugs.webkit.org/attachment.cgi?id=274349&action=review

>> Source/WebCore/ChangeLog:8
>> +        The div element inside the INPUT element gives a collapsed TextMarkerRange which then creates
> 
> why does this break typing with VO?

I think VO is asking for a textMarkerRange of the input field, without this fix the contenteditable div is not included in the range. So VO had no idea what's inside the input field.
Comment 5 Nan Wang 2016-03-17 22:00:23 PDT
Created attachment 274371 [details]
patch

added layout test
Comment 6 Nan Wang 2016-03-17 22:43:38 PDT
Created attachment 274374 [details]
patch

Fixed test expectation
Comment 7 WebKit Commit Bot 2016-03-18 00:36:10 PDT
Comment on attachment 274374 [details]
patch

Rejecting attachment 274374 [details] from commit-queue.

Failed to run "['/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch', '--status-host=webkit-queues.webkit.org', '--bot-id=webkit-cq-03', 'land-attachment', '--force-clean', '--non-interactive', '--parent-command=commit-queue', 274374, '--port=mac']" exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Last 500 characters of output:
ubmit
    return self.open(self.click(*args, **kwds))
  File "/Volumes/Data/EWS/WebKit/Tools/Scripts/webkitpy/thirdparty/autoinstalled/mechanize/_mechanize.py", line 203, in open
    return self._mech_open(url, data, timeout=timeout)
  File "/Volumes/Data/EWS/WebKit/Tools/Scripts/webkitpy/thirdparty/autoinstalled/mechanize/_mechanize.py", line 255, in _mech_open
    raise response
webkitpy.thirdparty.autoinstalled.mechanize._response.httperror_seek_wrapper: HTTP Error 500: Internal Server Error

Full output: http://webkit-queues.webkit.org/results/998051
Comment 8 Nan Wang 2016-03-18 10:44:03 PDT
Committed r198426: <http://trac.webkit.org/changeset/198426>