1. State VoiceOver on an iOS device 2. Open http://wafflerama.com/a11y/cssposition.html 3. Navigate through the page, listening to the output for each of the radio buttons Expected Results: In step 3, the two sets of radio buttons should each enumerate as '1 of 3', etc. Actual Results: In step 3, the first 3 radio buttons are all announced as "1 of 1". The second set of radio buttons are properly announced as "1 of 3", etc.
<rdar://problem/21186992>
<rdar://problem/25227435>
Created attachment 274439 [details] patch
Attachment 274439 [details] did not pass style-queue: ERROR: Source/WebCore/accessibility/AccessibilityRenderObject.cpp:954: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] ERROR: Source/WebCore/accessibility/AccessibilityRenderObject.cpp:955: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] ERROR: Source/WebCore/accessibility/AccessibilityRenderObject.cpp:956: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] ERROR: Source/WebCore/accessibility/AccessibilityRenderObject.cpp:957: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] ERROR: Source/WebCore/accessibility/AccessibilityRenderObject.cpp:958: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] ERROR: Source/WebCore/accessibility/AccessibilityRenderObject.cpp:959: Weird number of spaces at line-start. Are you using a 4-space indent? [whitespace/indent] [3] Total errors found: 6 in 6 files If any of these errors are false positives, please file a bug against check-webkit-style.
Created attachment 274440 [details] patch
Comment on attachment 274440 [details] patch The old code is not the right way to find radio buttons. Code to iterate all the radio buttons in a group should not have been replicated in the accessibility code, but instead should be an interface provide by the HTMLInputElement class. We could have a function: Vector<HTMLInputElement*> radioButtonGroup() const; It would get the misnamed CheckedRadioButtons object, then would take the element's name and find the RadioButtonGroup. That has a HashSet of all the radio buttons in that group and that can be converted into a Vector.
(In reply to comment #6) > Comment on attachment 274440 [details] > patch > > The old code is not the right way to find radio buttons. Code to iterate all > the radio buttons in a group should not have been replicated in the > accessibility code, but instead should be an interface provide by the > HTMLInputElement class. We could have a function: > > Vector<HTMLInputElement*> radioButtonGroup() const; > > It would get the misnamed CheckedRadioButtons object, then would take the > element's name and find the RadioButtonGroup. That has a HashSet of all the > radio buttons in that group and that can be converted into a Vector. I'll follow up with a new patch for that https://bugs.webkit.org/show_bug.cgi?id=155696
Comment on attachment 274440 [details] patch Clearing flags on attachment: 274440 Committed r198474: <http://trac.webkit.org/changeset/198474>
All reviewed patches have been landed. Closing bug.