On Thu, 20 Jul 2023 01:41:46 GMT, Sergey Bylokhov <s...@openjdk.org> wrote:
>> Abhishek Kumar has updated the pull request incrementally with one >> additional commit since the last revision: >> >> Add condition to check JLabel instance > > src/java.desktop/macosx/classes/com/apple/laf/AquaComboBoxButton.java line > 242: > >> 240: ac.setAccessibleName(label.getText()); >> 241: } >> 242: } > > How it will work in other L&Fs? In case of other LAFs except **Aqua** in MacOS, the accessible component invoked for screen magnifier is an instance of `AccessibleJComboBox` and subsequently the a11y API called on `AccessibleJComboBox` to return the accessible name. But for aqua, the accessible component invoked for screen magnifier is an instance for `AquaComboBoxButton`, so it is required to return the accessible button instance for a11y APIs to get called for retrieving accessible name. > src/java.desktop/share/classes/javax/swing/plaf/basic/BasicComboBoxUI.java > line 1133: > >> 1131: if ( popup instanceof Accessible accessiblePopup) { >> 1132: AccessibleContext ac = >> accessiblePopup.getAccessibleContext(); >> 1133: ac.setAccessibleParent(comboBox); > > do we need to reset it back at some point? I don't think so, as comboBox is the accessible parent for popup. Moreover, this piece of code is unchanged for the current fix. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/14497#discussion_r1271014965 PR Review Comment: https://git.openjdk.org/jdk/pull/14497#discussion_r1271015991