Bug 270460 - [Accessibility] ComponentSearchListDialog labels are inaccessible for keyboard/screen reader
Summary: [Accessibility] ComponentSearchListDialog labels are inaccessible for keyboar...
Status: ASSIGNED
Alias: None
Product: WTP Common Tools
Classification: WebTools
Component: wst.common (show other bugs)
Version: 3.1   Edit
Hardware: PC Windows XP
: P3 enhancement (vote)
Target Milestone: Future   Edit
Assignee: wst.common CLA
QA Contact: Carl Anderson CLA
URL:
Whiteboard:
Keywords: accessibility
Depends on:
Blocks:
 
Reported: 2009-03-30 10:44 EDT by Mike Oetlinger CLA
Modified: 2010-05-31 15:24 EDT (History)
2 users (show)

See Also:


Attachments
The inaccessible widgets. Note the lack of mnemonics as well. (28.98 KB, image/jpeg)
2009-03-30 10:44 EDT, Mike Oetlinger CLA
no flags Details
Adds labels to composite's tab list making them accessible via keyboard. Adds mnemonics as well. (8.80 KB, patch)
2009-03-30 10:59 EDT, Mike Oetlinger CLA
no flags Details | Diff
Patch to decorate items whose qualified names are the same with their file paths (3.23 KB, patch)
2009-08-20 17:17 EDT, Raymond Lai CLA
no flags Details | Diff
Alternate patch (2.82 KB, patch)
2009-08-21 14:08 EDT, Valentin Baciu CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Mike Oetlinger CLA 2009-03-30 10:44:40 EDT
Created attachment 130244 [details]
The inaccessible widgets. Note the lack of mnemonics as well.

Build ID: I20090313-0100

Steps To Reproduce:
1. Select a binding in a WSDL file.

2. From its context menu, select Set Port Type -> Existing Port Type...

3. On the dialog that appears, the Declaration Location label and label for displaying the declaration location of the selected item in the list view cannot receive tab focus. A user with only keyboard - with/without screen reader - cannot access them. 

*See attached screenshot.*

Also, observe that the other controls on this dialog are missing mnemonics.

More information:
Comment 1 Mike Oetlinger CLA 2009-03-30 10:59:01 EDT
Created attachment 130249 [details]
Adds labels to composite's tab list making them accessible via keyboard. Adds mnemonics as well.

This patch manually adds the labels to the composite's tab list so that a keyboard user can tab to them and the screen reader can then read them. In addition, mnemonics are added where necessary to the other widgets.
Comment 2 Mike Oetlinger CLA 2009-04-08 12:50:03 EDT
The patch also fixes a similar problem with all Set ... and Specify ... dialogs in the WSDL and XSD editors that make use of the same Declaration Location label.
Comment 3 Valentin Baciu CLA 2009-04-29 10:55:21 EDT
Mike, I do not like the approach the patch takes. 

One problem with this patch is that when tabbing from the compontents list forward the focust "dissapears" for two tab keystrokes only to re-appear on the OK button. This makes our dialog behave differently than the Java select type dialog.

The choice of mnemonics can also be better.


As per our chat a while back, I think that a better approach would be to improve the way the content of each row in the list is read to a user using a screen reader.

I think this fix can wait until 3.2
Comment 4 Raymond Lai CLA 2009-08-20 17:17:14 EDT
Created attachment 145195 [details]
Patch to decorate items whose qualified names are the same with their file paths

The new patch takes a different approach to fix the problem. The reason user wants to access the status line is that they want to distinguish different components using the file path if the qualified names are the same. So I've added logic to decorate the items with its physical file path if the qualified names are the same.
Comment 5 Raymond Lai CLA 2009-08-20 17:18:34 EDT
Valentin, the patch is against HEAD. I've tested it in my local workspace with Windows Eye.
Comment 6 Valentin Baciu CLA 2009-08-21 14:08:27 EDT
Created attachment 145305 [details]
Alternate patch

Thanks for the patch Raymond.

When testing it occured to me that our dialog does not behave quite like the Java open type dialog. The fix only adds the path when there are duplicate QNames - name + namespace. 

In the java world the equivalent is let's say class name + package, the the open type dialog always shows location even for different name + package.

This patch tries to do something similar for our dialog, basically checking only on duplicate names and adding the namespace and the file path.

Let me know what you think.