On Wed, 3 May 2023 21:27:29 GMT, Andy Goryachev <ango...@openjdk.org> wrote:
>> Issue: >> CheckBoxTreeItem extends TreeItem and adds a CheckBox. >> The state of this CheckBox is not visible to an accessibility client >> application. >> If we analyze a simple program that contains a CheckBoxTreeItem using a >> windows application "Accessibility Insights for Window", we can notice that >> toggle state of CheckBox is not exposed. >> >> Fix: >> Include the [Toggle Control >> Pattern](https://learn.microsoft.com/en-us/windows/win32/winauto/uiauto-implementingtoggle) >> in Accessibility information of a CheckBoxTreeItem in addition to the >> patterns that are used for a TreeItem. >> >> Verification: >> On Windows: Do the following with and without the fix. >> 1. Run the sample program attached to JBS issue. >> 2. Launch "Accessibility Insights for Window" >> 3. Observe that patterns section for each item >> 4. Select / de-select the CheckBoxes and observe the patterns section for >> correctness of toggle state. > > modules/javafx.graphics/src/main/java/javafx/scene/AccessibleAttribute.java > line 357: > >> 355: * @since 21 >> 356: */ >> 357: TOGGLE_STATE(Integer.class), > > Would a dedicated enum be a better choice here? Yes, that might be cleaner. In any case, we should not hard-code or specify int values that are Windows-specific. I recommend defining this as a platform-independent attribute and then mapping it in the Windows platform code. ------------- PR Review Comment: https://git.openjdk.org/jfx/pull/1088#discussion_r1187660261