RFR: 8283214: [macos] Screen magnifier does not show the magnified text for JcomboBox [v6]
Alexey Ivanov
aivanov at openjdk.org
Mon Jul 24 19:28:53 UTC 2023
On Fri, 21 Jul 2023 19:42:00 GMT, Abhishek Kumar <abhiscxk at openjdk.org> wrote:
>> The issue exist only for non-editable combobox and the root cause is accessible object is not created due to incorrect index returned from component class which results in no a11y API invoked.
>>
>> Proposed solution is to return the correct accessible child from getAccessibleChild method which is AquaComboBoxButton (arrowButton) instance and that results in invoking the a11y APIs to return the current selected item in combobox.
>>
>> Further when the application comes up first time the accessible name is not set for current displayed item in JCombobox that is handled in AquaComboBoxButton which will take care for the current selected item as well as if user modifies the selection by drop-down list.
>>
>> CI link is posted in JBS.
>
> Abhishek Kumar has updated the pull request incrementally with one additional commit since the last revision:
>
> bugid removed in comments
src/java.desktop/macosx/classes/com/apple/laf/AquaComboBoxButton.java line 34:
> 32:
> 33: import apple.laf.JRSUIState;
> 34: import apple.laf.JRSUIConstants.*;
I think we should expand all wild card imports.
test/jdk/javax/accessibility/JComboBox/TestJComboBoxScreenMagnifier.java line 50:
> 48: "1) Enable Screen magnifier on the Mac \n\n" +
> 49: "System Preference -> Accessibility -> Zoom -> " +
> 50: "Select ( Enable Hover Text) \n\n" +
Suggestion:
"Select "Enable Hover Text"\n\n" +
test/jdk/javax/accessibility/JComboBox/TestJComboBoxScreenMagnifier.java line 58:
> 56: InvocationTargetException {
> 57: PassFailJFrame passFailJFrame = new PassFailJFrame(
> 58: "JMenu Screen Magnifier Test Instructions", INSTRUCTIONS, 5, 12, 40);
Suggestion:
"JComboBox Screen Magnifier Test Instructions", INSTRUCTIONS, 5, 12, 40);
test/jdk/javax/accessibility/JComboBox/TestJComboBoxScreenMagnifier.java line 63:
> 61: passFailJFrame.awaitAndCheck();
> 62: }
> 63: private static void createAndShowUI() {
Suggestion:
}
private static void createAndShowUI() {
Please add a blank line between methods.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/14497#discussion_r1272649266
PR Review Comment: https://git.openjdk.org/jdk/pull/14497#discussion_r1272662065
PR Review Comment: https://git.openjdk.org/jdk/pull/14497#discussion_r1272659964
PR Review Comment: https://git.openjdk.org/jdk/pull/14497#discussion_r1272660357
More information about the client-libs-dev
mailing list