RFR: 8283214: [macos] Screen magnifier does not show the magnified text for JcomboBox [v9]

Alexey Ivanov aivanov at openjdk.org
Thu Nov 9 17:51:09 UTC 2023


On Thu, 9 Nov 2023 04:39:32 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:
> 
>   Fix for custom renderer

> > Ideally, I'd like to make Aqua L&F classes work like Metal or Nimbus do. …
> 
> This way gets the accessible name _lazily_: it's requested only _when needed_. Therefore you should submit another bug to address the limitation of the current approach.

Eventually, I've found the perfect solution: [commit 516af4c](https://github.com/openjdk/jdk/commit/516af4c62f59984f2d3c44bfb8ecae6fc2e88810) and [diff to jdk/master](https://github.com/openjdk/jdk/compare/master...aivanov-jdk:jdk:516af4c62f59984f2d3c44bfb8ecae6fc2e88810)

The `javax/swing/JComboBox/6567433/UpdateUIRecursionTest.java` test passes in its unmodified version, which means the new version does not break the backward compatibility. Due to this, 8283214 should be added to the list of bugids in `UpdateUIRecursionTest`.

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

PR Comment: https://git.openjdk.org/jdk/pull/14497#issuecomment-1804285853


More information about the client-libs-dev mailing list