Bug 191748 - AX: Only ticked state announced by Voiceover when following links targeting checkboxes or radios
Summary: AX: Only ticked state announced by Voiceover when following links targeting c...
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: Accessibility (show other bugs)
Version: Safari 14
Hardware: iPhone / iPad iOS 14
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2018-11-16 06:56 PST by Oliver Byford
Modified: 2020-12-22 07:41 PST (History)
1 user (show)

See Also:


Attachments
Reduced test case (1.14 KB, text/html)
2018-11-16 06:56 PST, Oliver Byford
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Oliver Byford 2018-11-16 06:56:48 PST
Created attachment 355056 [details]
Reduced test case

Given the following markup:

  <a href="#checkboxes-1">Link to checkboxes</a><br>
  <a href="#radios-1">Link to radios</a><br>

  <br><br>

  <fieldset aria-describedby="checkboxes-description">
    <legend>Legend for checkboxes</legend>
    <span id="checkboxes-description">
      Description for checkboxes
    </span>

    <br>

    <input id="checkboxes-1" name="checkboxes" type="checkbox" value="one">
    <label for="checkboxes-1">
      One
    </label>

    <input id="checkboxes-2" name="checkboxes" type="checkbox" value="two">
    <label for="checkboxes-2">
      Two
    </label>
  </fieldset>

  <br><br>

  <fieldset aria-describedby="radios-description">
    <legend>Legend for radios</legend>
    <span id="radios-description">
      Description for radios
    </span>

    <br>

    <input id="radios-1" name="radios" type="radio" value="one">
    <label for="radios-1">
      One
    </label>
      
    <input id="radios-2" name="radios" type="radio" value="two">
    <label for="radios-2">
      Two
    </label>
  </fieldset>

Focus the link to each input type and activate it by double-tapping.


For the link to checkboxes:

Expected behaviour:

Voiceover should announce the same context that it announces when reaching the first checkbox in the fieldset by swiping in either direction through the document, including the label, field type, legend and any description:

"Legend for checkboxes, Description for checkboxes, Two, tickbox, unticked. Description for checkboxes. Double-tap to toggle setting."

(The description is repeated here, which is probably another bug...)

Actual behaviour:

Voiceover does not include the legend as part of the announcement, and only announces the ticked state:

"Unticked"


For the link to radios:

Voiceover should announce the same context that it announces when reaching the first checkbox in the fieldset by swiping in either direction through the document, including the label, field type, legend and any description:

"Legend for radios, Description for radios, Two, radio button, unticked. Two of two. Description for radios."

(Again, the description is repeated here)

Actual behaviour:

Voiceover does not include the legend as part of the announcement, and only announces the ticked state:

"Unticked"


Tested in iOS 12.1 (16B92) on an iPhone X (A1901)

This may be related to https://bugs.webkit.org/show_bug.cgi?id=191746.
Comment 1 Radar WebKit Bug Importer 2018-11-16 06:57:15 PST
<rdar://problem/46126183>
Comment 2 Radar WebKit Bug Importer 2018-11-16 06:57:18 PST
<rdar://problem/46126185>
Comment 3 Oliver Byford 2020-12-22 07:41:25 PST
Re-tested and this still occurs in iOS 14.3 (tested on an iPhone 12 Pro) – have updated the details accordingly.