Bug 97671 [preferences] Java Preference Pages using in accessible Color selection
RC1 The Linked Mode and Syntax colouring pages are both using a color button with no accessibility information. When someone using a screen reader selects it they will get no feedback as to what the button is for - just a random graphic. I assume you are not using the JFace ColorSelector as that has an accessible listener. Here is our code in ColorSelector if you need it for reference: fButton.getAccessible().addAccessibleListener(new AccessibleAdapter() { /* * (non-Javadoc) * * @see org.eclipse.swt.accessibility.AccessibleAdapter#getName(org.eclipse.swt.accessibility.AccessibleEvent) */ public void getName(AccessibleEvent e) { e.result = JFaceResources.getString("ColorSelector.Name"); //$NON-NLS-1$ } });
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/preferences/LinkedModeConfigurationBlock.java
public String getText(Object element) {
			return ((ListItem) element).label;
		}
	}
	
	private static class ArrayLabelProvider extends LabelProvider {
		public String getText(Object element) {
			return ((String[]) element)[0].toString();
		}
	}
	
	final static String[] HIGHLIGHT= new String[] {PreferencesMessages.LinkedModeConfigurationBlock_HIGHLIGHT, "unused"};  
	final static String[] UNDERLINE= new String[] {PreferencesMessages.LinkedModeConfigurationBlock_UNDERLINE, AnnotationPreference.STYLE_UNDERLINE}; 
	final static String[] BOX= new String[] {PreferencesMessages.LinkedModeConfigurationBlock_BOX, AnnotationPreference.STYLE_BOX}; 
	final static String[] IBEAM= new String[] {PreferencesMessages.LinkedModeConfigurationBlock_IBEAM, AnnotationPreference.STYLE_IBEAM}; 
	final static String[] SQUIGGLES= new String[] {PreferencesMessages.LinkedModeConfigurationBlock_SQUIGGLES, AnnotationPreference.STYLE_SQUIGGLES}; 
	private ColorEditor fAnnotationForegroundColorEditor;
	private Button fShowInTextCheckBox;
	
	private StructuredViewer fAnnotationTypeViewer;
	private final ListItem[] fListModel;
	private ComboViewer fDecorationViewer;
	private FontMetrics fFontMetrics;