Hello devs
I recently started to seriously work on accessibility improvements of the Roundcube UI which has been a long standing issue. As a start, I read through the W3C WCAG 2.0 and WAI-ARIA recommendations. From there, I picked the points that seemed relevant and important for Roundcube. I'm trying to collect all references in our wiki, from which I then want to define some guidelines and best practices for Roundcube developers. See the work-in-progress wiki page here: http://trac.roundcube.net/wiki/Dev_AccessibilityGuidelines
I found it particularly hard to apply the recommendations from WCAG to Roundcube because it's more an application than a website providing contents. But I assume that's where ARIA is meant to jump in. And here's my first question: are there tools available that actually implement these standards and actually make sense of all these aria-* attributes?
In a first attempt I started to make keyboard navigation work in the main email view. While not completely finished yet, you should at least be able to tab through all the button elements, operate the message list and the popup menus. Once the message list gains focus (that's not very visible yet but you can see a gray vertical bar on the left of the first row), the arrow keys move the cursor while <space> selects the row and <enter> opens the message. A descriptive block explaining the list navigation shall be added to the page. If that'll be sufficient for screen readers, I'm not very sure about but maybe you guys can give me some guidance here. Or should we finally add checkboxes to be on the safe side?
The plan is to finish the mail view first with all the necessary changes and then apply them to other parts of the application once the recommendations are complete.
The current state of development takes place in a separate branch of our github repository (dev-accessibility) and a copy is available for testing at: http://demo.roundcube.net/accessibility/ (user credentials are listed on demo.roundcube.net).
A major hurdle for me is also the lack of the right tools to verify whether the improvements I added really make sense and will work with the assistive tools out there. I'm currently using the Accessibility Evaluation Toolbar for Firefox but feedback seems rather limited.
I'd much appreciate feedback and review from the experts out there on both, the wiki page and the ongoing development as well as general suggestions or lessons one already learned regarding this topic. This is all pretty new to me but hopefully you can share your expertise and experience with us. So feel free to respond here or to extend the wiki page with recommendations and best practices.
Many thanks!
Thomas