Accessibility client applications like Windows Narrator and JAWS read positions 
of the items in a ListView/ComboBox as "index of total-item-count".
For example, in an ComboBox with 10 items, first item "Item1" would be read as 
"Item one, one of ten". Similarly it appends the <index of item> of 
<total-number-of-item> for all items.

Currently this is not read correctly,
- by Narrator if total number of items is > 100
- by JAWS if total number of items is > 200

One main reason is that JavaFX is not serving request from A11Y client 
applications for UIA_PositionInSetPropertyId and UIA_SizeOfSetPropertyId 
properties.

Serving request for these properties fixes the issue.

Verification:
There are two test programs (for ComboBox and ListView) attached to 
[]([JDK-8284662](https://bugs.openjdk.org/browse/JDK-8284662)).
Please run those and observe how Narrator reads them with and without fix.

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

Commit messages:
 - Merge branch 'master' into a11y-combo-box
 - A11Y: Windows: Add support for UIA_SizeOfSetPropertyId and 
UIA_PositionInSetPropertyId for LIST_ITEM

Changes: https://git.openjdk.org/jfx/pull/1036/files
 Webrev: https://webrevs.openjdk.org/?repo=jfx&pr=1036&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8284662
  Stats: 29 lines in 1 file changed: 29 ins; 0 del; 0 mod
  Patch: https://git.openjdk.org/jfx/pull/1036.diff
  Fetch: git fetch https://git.openjdk.org/jfx pull/1036/head:pull/1036

PR: https://git.openjdk.org/jfx/pull/1036

Reply via email to