| Summary: | Accessibility does not work for a Table in JAWS | ||
|---|---|---|---|
| Product: | [Eclipse Project] Platform | Reporter: | Tod Creasey <Tod_Creasey> |
| Component: | SWT | Assignee: | Carolyn MacLeod <carolynmacleod4> |
| Status: | RESOLVED WONTFIX | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | n.a.edgar |
| Version: | 2.0 | Keywords: | accessibility |
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Windows 2000 | ||
| Whiteboard: | |||
| Bug Depends on: | |||
| Bug Blocks: | 10181, 10190, 10191 | ||
There is a similar problem with push Buttons only returning the label but not the IAccessible result although this shows up using inspect32. Also an issue for Trees Platform limitation. Can be deferred. Platform behavior. |
If I have the following class running and I select an element in the Table JAWS does not read the Table name even though inspect32 gets the name of the Table right. This is different than the list behaviour where is does pick it up. import org.eclipse.swt.SWT; import org.eclipse.swt.accessibility.*; import org.eclipse.swt.widgets.*; /* * (c) Copyright 2001 MyCorporation. * All Rights Reserved. */ /** * @version 1.0 * @author */ public class TableLabelTest { public static void main(String[] args) { Display display = new Display(); Shell shell = new Shell(display); Label label = new Label(shell, SWT.NONE); label.setText("Title"); label.setBounds(0, 0, 200, 20); final Table mainTable = new Table(shell, SWT.SINGLE | SWT.BORDER | SWT.FULL_SELECTION); mainTable.getAccessible().addAccessibleListener(new AccessibleAdapter() { public void getName(AccessibleEvent e) { if (e.childID != ACC.CHILDID_SELF) { e.result = mainTable.getItem(e.childID - 1).getText(); } else { e.result = "The Table"; } } }); TableItem item1 = new TableItem(mainTable, SWT.NULL); item1.setText("item1"); TableItem item2 = new TableItem(mainTable, SWT.NULL); item2.setText("item2"); TableItem item3 = new TableItem(mainTable, SWT.NULL); item3.setText("item3"); mainTable.setBounds(0, 20, 200, 200); Text text = new Text(shell, SWT.NONE); text.setText("Tabby"); text.setBounds(0, 220, 200, 20); shell.open(); while (!shell.isDisposed()) { if (!display.readAndDispatch()) display.sleep(); } display.dispose(); } }