RFR: 8309374: Accessibility Focus Rectangle on ListItem is not drawn when ListView is shown for first time [v2]
Marius Hanl
mhanl at openjdk.org
Thu Feb 15 10:00:06 UTC 2024
On Wed, 14 Feb 2024 02:55:15 GMT, Ambarish Rapte <arapte at openjdk.org> wrote:
>> This is accessibility specific fix.
>>
>> **Issue**: When a ListView is shown for first time then accessibility focus rectangle is not drawn around the focused ListIem
>>
>> **Cause:**
>> The ListView takes a little time to create it's skin(ListViewSkin) and the skins for ListItems(ListCellSkin)
>> If the Accessibility client application requests focused item before ListView is completely ready then JavaFX return null.
>>
>> **Fix**: Send a focus item change notification to accessibility client application after the ListIteam is ready
>>
>> **Verification:**
>> - On Windows machine, launch Narrator. Issue is observed only with Narrator
>> - Execute the [program](https://bugs.openjdk.org/secure/attachment/104180/Main.java) attached to the JBS issue [JDK-8309374](https://bugs.openjdk.org/browse/JDK-8309374)
>> Move through the TextFields and press `Alt+down`, observe that focus rectangle is drawn correctly.
>> Once the ListView is showing Press and hold `Up/Down` or `Ctrl + Up/Down` keys, observe that focus rectangle is always drawn.
>
> Ambarish Rapte has updated the pull request incrementally with one additional commit since the last revision:
>
> review corrections-1
modules/javafx.controls/src/main/java/javafx/scene/control/ListCell.java line 376:
> 374: * so that the notification is not sent during any getAttribute() call.
> 375: */
> 376: Platform.runLater(() -> listView.notifyAccessibleAttributeChanged(AccessibleAttribute.FOCUS_ITEM));
What I'm wondering here: Don't the other cells also suffer from this issue?
-------------
PR Review Comment: https://git.openjdk.org/jfx/pull/1363#discussion_r1490736811
More information about the openjfx-dev
mailing list