Accessibility: JAWS Issues with Firefox
From MDC
[edit] Known JAWS Firefox Issues
These are bugs believed to be in the JAWS code, not in Firefox. For Firefox bugs, please search within Bugzilla.
[edit] ARIA Issues
This table does not include ARIA bugs in the Firefox code.
Versions tested with: Firefox version 2 and nightly Firefox 3 builds from 4/17/2007, and JAWS 8.*
| Summary | Description or steps | Priority (P1-P5, P1 = highest) |
|---|---|---|
| AR-1: Descriptions (via aaa:describedby) are not spoken by JAWS |
Note: the description is exposed via accDescription as well as DESCRIBED_BY/DESCRIPTION_FOR relations (via accNavigate currently, will also get IAccessibleRelation support in FF3). | P1 |
| AR-2: Cannot activate forms mode with Enter key while in advanced form controls, such as tree views and tab panels |
These are just a few examples of new ARIA controls that need to handle this. JAWS will need a different method to determine when to allow Enter = forms mode. Because of ARIA, a blacklist might work better than a whitelist (don't use Enter for links or buttons -- things that use Enter as a trigger). Alternatively, JAWS will need to support any MSAA or IA2 role in a web page. It seems that JAWS may be swallowing the Enter key in some or all cases. Perhaps it is trying to fire doDefaultAction(). From Frank on 7/5/2007:
| P1 |
| AR-3: JAWS uses window class to trigger doc reading, instead of ROLE_DOCUMENT vs. ROLE_APPLICATION/ROLE_DIALOG/ROLE_ALERT |
It would be better if JAWS completely removed use of the window class usage for Firefox support. Using the role is a better way of determining that forms mode should be on by default (although document reading should still be available). This would also help with XUL-as-content (about:config is one example that seems to be hardcoded into JAWS). To find the content window, take the top level window's OBJID_CLIENT root accessible, and use accNavigate with the EMBEDS relation. An example of AR-3 through XUL as content is available, where JAWS reads incorrect labels. | P1 |
| AR-4: JAWS reads the ARIA alert twice |
| P1 |
| AR-5: JAWS does not support landmark roles, such as main content |
Check the XHTML Role Attribute Module and the WAI-ARIA roles for a full list of navigation landmarks that may be useful for JAWS users. | P1 |
| AR-6: JAWS does not support ARIA live regions |
This is a larger feature request that requires taking a look at the live region report and test cases, and implementation discussions with Aaron | P1 |
| AR-7: JAWS does not support rich text editing | Basically, this is like a word processor in a web page. It's the same editor used by Thunderbird. Rich text editing is also known as design mode. See the design mode demo.
| P1 |
| AR-8: Support the flowto/flowfrom relation | This should affect the default reading order | P2 |
| AR-9: Support complex ARIA tree grids | This is a placeholder for support of advanced ARIA tree grids, which may get events on the rows or the cells. Needs testcases and work in Firefox. | P2 |
| AR-10: Support required, checkable and invalid states | In Firefox we've reused some rarely used MSAA states:
Or, if you want to use IA2 states then wait until Firefox 3 to support those. | P1 |
| AR-11: New roles | The direct ARIA roles are available via xml-roles. We need to look at marquee and the others. | P3 |
| AR-12: ARIA menubar |
Example: Spreadsheet with menubar Two problems:
| P1 |
| AR-13: ARIA menus | Example: ARIA context menu
The popup menu only speaks the label properly when Ins+Z is used to turn Virtual PC cursor mode off. It does not work in either forms mode (by pressing Enter in a textfield) or with Virtual PC mode on. Menus should work no matter what, based on the menu events having been fired. | P1 |
| AR-14: ARIA grid navigation |
Example: Spreadsheet with menubar Two problems:
| P2 |
Other areas to discuss:
- Is datatype a useful property for JAWS?
- How to deal with the sort property?