This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
There is component which is not accessible in Custimoze Locale dialog. How open this dialog ? - In explorer use popup menu from property file and select customize This is output from UI Accessibility tester : =============================================== Tested Window title : Customizer Dialog =============================================== Results of Accessibility test Doesn't implement Accessible : - none. No Accessible name : - none. No Accessible description : Class: org.netbeans.core.NbDialog { Customizer Dialog | } Label with LABEL_FOR not set : - none. Components with no LABEL_FOR pointing to it : - none. Components with no mnemonic : Class: javax.swing.JButton { Close | Close button } Components not reachable with tab traversal : Class: javax.swing.JButton { Add Locale | N/A } Class: javax.swing.JButton { Close | Close button } Class: javax.swing.JButton { Help | Help button } Class: javax.swing.JList { Locales: | List of locales in this bundle. } Class: javax.swing.JTextField { Name: | N/A }
Added keyword
There are more dialogs that are not 100% accessible. - Customize keys (use popup menu over kye of property file in explorer) - Output from UI tester : =============================================== Tested Window title : Customizer Dialog =============================================== Results of Accessibility test No Accessible description : Class: org.netbeans.core.NbDialog { Customizer Dialog | } Components with no mnemonic : Class: javax.swing.JButton { Close | Close button } - Dialog Internationalization Wizard (open its from main menu Tools|Internationalization|Internationalization Wizard) - Output from UI tester : =============================================== Tested Window title : Internationalization Wizard =============================================== Results of Accessibility test No Accessible name : Class: javax.swing.JList { | N/A } Class: javax.swing.JTextArea { | } No Accessible description : Class: javax.swing.JTextArea { | } Components with no LABEL_FOR pointing to it : Class: javax.swing.JList { | N/A } Class: javax.swing.JTextArea { | } - Dialog Internationalization Wizard (open its from main menu Tools|Internationalization|Internationalization Wizard, click to next button ) - Output from UI tester : =============================================== Tested Window title : Internationalization Wizard =============================================== Results of Accessibility test No Accessible name : Class: javax.swing.JTable { | N/A } Class: javax.swing.JTextArea { | } No Accessible description : Class: javax.swing.JTextArea { | } Components with no LABEL_FOR pointing to it : Class: javax.swing.JTable { | N/A } Class: javax.swing.JTextArea { | } - Dialog Internationalization Wizard (open its from main menu Tools|Internationalization|Internationalization Test Wizard) - Output from UI tester : =============================================== Tested Window title : Internationalization Test Wizard =============================================== Results of Accessibility test No Accessible name : Class: javax.swing.JList { | N/A } Class: javax.swing.JTextArea { | } No Accessible description : Class: javax.swing.JTextArea { | } Components with no LABEL_FOR pointing to it : Class: javax.swing.JList { | N/A } Class: javax.swing.JTextArea { | } - Dialog Internationalization Wizard (open its from main menu Tools|Internationalization|Internationalization Test Wizard, click to button 'Add Source(s)') - Output from UI tester : =============================================== Tested Window title : Select Sources =============================================== Results of Accessibility test No Accessible description : Class: javax.swing.JComboBox { Filesystems: | } Components with no LABEL_FOR pointing to it : Class: org.openide.explorer.view.TreeView$ExplorerTree { Tree View | Tree view in file selector } - Dialog Internationalization Wizard (open its from main menu Tools|Internationalization|Internationalization Test Wizard, click to next button) - Output from UI tester : =============================================== Tested Window title : Internationalization Test Wizard =============================================== Results of Accessibility test No Accessible name : Class: javax.swing.JTable { | N/A } Class: javax.swing.JTextArea { | } No Accessible description : Class: javax.swing.JTextArea { | } Components with no LABEL_FOR pointing to it : Class: javax.swing.JTable { | N/A } Class: javax.swing.JTextArea { | } - Dialog Internationalization Wizard (open its from main menu Tools|Internationalization|Internationalization Test Wizard, click to next button, click to 'Select All') - Output from UI tester : =============================================== Tested Window title : Select Resource =============================================== Results of Accessibility test No Accessible description : Class: javax.swing.JComboBox { Filesystems: | } Components with no LABEL_FOR pointing to it : Class: org.openide.explorer.view.TreeView$ExplorerTree { Tree View | Tree view in file selector }
First two cases are from properties module (yes, it handles locales, issue #25788). Internationalization Wizard: JTextAreas contain texts that are returned for whole panel A11Y descriptions. No need to A11Y them again. Select Sources: it is a dialog from openide and it probably cannot be A11Yed (issue #25786). I will fix tab traversal issues (that were not detected by the tool).
Created attachment 6791 [details] Proposed patch
Focus traversal fixed by disabling description texts. Could you please assure it. Petr could you review it, please?
The patch is safe. Approve. (Just a unimportant comment, isn't better to retrieve the color from UIDefaults/UIManger?)
Thanks for UIManager, hint. Unfortunatelly the documentation for getColor(Object key) says "if a Color if passed then it is returned". Anyway the text area want to look like multiline label, so taking the property from dummy label cannot hurt.
Integrated into relase34 branch.
Verified
Resolved for 3.4 or earlier, no new info since then -> closing.