On Thu, 9 Nov 2023 04:39:32 GMT, Abhishek Kumar <abhis...@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

Reply via email to