RFR: 8348936: [Accessibility,macOS,VoiceOver] VoiceOver doesn't announce untick on toggling the checkbox with "space" key on macOS [v3]

Alexey Ivanov aivanov at openjdk.org
Tue Feb 18 10:17:22 UTC 2025


On Fri, 14 Feb 2025 04:32:53 GMT, Abhishek Kumar <abhiscxk at openjdk.org> wrote:

>> VoiceOver doesn't announce the _untick state_ when Checkbox is `deselected` using **space** key. When CheckBox is deselected, the state change is not notified to a11y client (VoiceOver) and so the state is not announced by VO. 
>> 
>> Screen Magnifier is also unable to magnify the unchecked state of JCheckBox due to same reason and is captured as separate bug [JDK-8345728](https://bugs.openjdk.org/browse/JDK-8345728).
>> 
>> Proposed fix is to send the state change notification to a11y client when checkbox is deselected, this resolves the problem for VoiceOver and Screen Magnifier.
>> 
>> Similar issue observed for JToggleButton. So, I extended the fix for JToggleButton as well.
>> 
>> The proposed change can be verified the manual test in the PR.
>> 
>> CI pipeline testing is `OK`, link posted in JBS.
>
> Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision:
> 
>   HTML instructions formatting

Looks good, just a couple of minor tweaks to the instructions.

By the way, I updated the code in `PassFailJFrame` for HTML handling to make the long instructions look better. I'll submit a PR soon.

test/jdk/javax/accessibility/TestJCheckBoxToggleAccessibility.java line 70:

> 68:                   <li>Enable Screen magnifier on the Mac:
> 69:                    <b>System Settings</b> -> <b>Accessibility</b> ->
> 70:                    <b>Hover Text</b> -> <b>Enable Hover Text</b><br>

Suggestion:

                   <b>Hover Text</b> -> Enable <b>Hover Text</b><br>

Only the UI element should be in bold. (Yes, I know that I provided this snippet, yet I didn't notice it back then.)

test/jdk/javax/accessibility/TestJCheckBoxToggleAccessibility.java line 71:

> 69:                    <b>System Settings</b> -> <b>Accessibility</b> ->
> 70:                    <b>Hover Text</b> -> <b>Enable Hover Text</b><br>
> 71:                    Default Hover Text Activation Modifier is <kbd>Command</kbd> key.

Suggestion:

                   Default Hover Text Activation Modifier is <kbd>Command</kbd> key

The period at the end of the only sentence looks weird.

test/jdk/javax/accessibility/TestJCheckBoxToggleAccessibility.java line 72:

> 70:                    <b>Hover Text</b> -> <b>Enable Hover Text</b><br>
> 71:                    Default Hover Text Activation Modifier is <kbd>Command</kbd> key.
> 72:                   <li>Move focus back to test application

Suggestion:

                  <li>Move focus back to the test application and perform the following tests

test/jdk/javax/accessibility/TestJCheckBoxToggleAccessibility.java line 100:

> 98:                       </ol>
> 99:                   </ul>
> 100:                 </ol>

Suggestion:

                  </ul>
                  <li>Disable <b>Hover Text</b> (optionally) in the Settings
                </ol>

To complete the instructions.

-------------

Changes requested by aivanov (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/23436#pullrequestreview-2623029837
PR Comment: https://git.openjdk.org/jdk/pull/23436#issuecomment-2665180871
PR Review Comment: https://git.openjdk.org/jdk/pull/23436#discussion_r1959441483
PR Review Comment: https://git.openjdk.org/jdk/pull/23436#discussion_r1959442820
PR Review Comment: https://git.openjdk.org/jdk/pull/23436#discussion_r1959429037
PR Review Comment: https://git.openjdk.org/jdk/pull/23436#discussion_r1959438566


More information about the client-libs-dev mailing list