On Wed, 2 Jul 2025 15:37:30 GMT, Abhishek Kumar <[email protected]> wrote:
>> **Issue** : VO doesn't announce Tab items of a JTabbedPane as RadioButton
>> which is wrong.
>>
>> **Analysis** : That is due to the role mapping of tab items as
>> `NSAccessibilityRadioButtonRole` in `JavaAccessibilityUtilities.m` file.
>> Since the accessibility role description is fetched in
>> `accessibilityRoleDescription` API if `CommonComponentAccessiblity.m` file,
>> the sub-role passed as a parameter is `nil`, returned value is RadioButton..
>>
>> **Proposed Fix** : Fix is to get the correct accessibility role description
>> from Appkit, we should pass `NSAccessibilityTabButtonSubrole` in the subrole
>> parameter and that returns the accessibility role as `Tab` and is announced
>> correctly by VO.
>>
>> **Testing** : Manual test case has been added to verify the fix.
>
> Abhishek Kumar has updated the pull request incrementally with one additional
> commit since the last revision:
>
> Add test
test/jdk/javax/accessibility/JTabbedPane/AccessibleTabbedPaneRoleTest.java line
74:
> 72: tabPane.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);
> 73: tabPane.setTabPlacement(JTabbedPane.TOP);
> 74: for( int i = 0; i < NUM_TABS; ++i) {
Suggestion:
for (int i = 0; i < NUM_TABS; ++i) {
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/26096#discussion_r2185219013