-
Notifications
You must be signed in to change notification settings - Fork 21
Support Matrix a11y tool
Our test results for the accessibility extensions vary significantly, depending on the combinations of browser, OS, and screenreaders. While we cannot claim universal support for any combination the extensions should provide good results when only 1 or 2 out of 3 requirements are fixed.
Support is focused on the currently maintained browsers, i.e.,
- IE 10+ and Edge
- Chrome
- Safari
- Firefox
Except for IE, older versions should work as well. Due to severe browser bugs, we cannot support IE 9 and below.
Basic voicing (via aria-labels) should work using Apple VoiceOver and Android Talkback. The explorer tool does not yet support sub-expression exploration on mobile browsers / touchscreen interfaces.
We have tested the following screenreaders with the supported browsers on various OS versions.
- NVDA 2016.2 (Win XP, 7, 8, 10)
- JAWS 17 (Win 7, 8, 10)
- WindowEyes 9.4 (Win 7, 8, 10)
- ChromeVox 50 (any)
- VoiceOver (OS 10.10, iOS 9.1)
- TalkBack (Android Marshmallow)
- [ORCA (3.18, Ubuntu 16.04)]
- [Dolphin Screenreader (Windows 10)]
Not all combinations of screenreader and browser are usable but for each one (except ORCA and Dolphin) should find some combination that works.
Other screenreaders and/or assistive technologies were tested but failed due to lack of support for ARIA labels and/or applications.
While the extensions generally work with any MathJax setup, the explorer only works with MathJax's CommonHTML, SVG, and HTML-CSS output.
The application for keyboard navigation allows users to explore sub-expressions simultaneously visually and aurally. The application uses the following keys bindings:
-
SHIFT+SPACE: start application (requires focus)
- NOTE: Depending on the implementation quality of the particular browser/screenreader/OS combination (especially Chrome and IE), users might have to disable screenreader reading modes (e.g., "browse mode" in NVDA, "virtual cursor" in JAWS) before being able to launch the application.
-
ESC: stop application.
- NOTE: When restarted, the application will continue where the user left off.
-
UP/DOWN: move up or down the sub-expression tree.
- When moving down, navigation will start at the left-most sub-expression of the level.
- The application plays an aural indicator (earcon) if the user is at the bottom/top level of the tree.
- LEFT/RIGHT: navigate the current level in the sub-expression tree horizontally.
- ENTER: switch collapsed state of the current sub-expression and regenerate speech-text to match (e.g., provide summary upon collapsing).
- SPACE: get positional information, i.e., the current level in the sub-expression tree as well as collapsibility/expandability of the current subexpression.
Most screenreaders have at least two modes for interaction: Browse (or virtual) and Focus (or forms) mode. For more information see Leonie Watson's introduction. Some combinations of browsers and screenreaders do not automatically switch to Focus mode on an element with ARIA Role application
.
In this situation, a user will have to manually switch from Browse mode to Focus mode to enable interaction with our explorer application. As an additional complication, MathJax's different outputs can change the behavior; e.g., SVG output might trigger some screenreader behavior specific to SVGs or images.
- NVDA (Browse/Focus Mode) is switched via NVDA+SPACE (default: INS or CapsLock). If MathJax's SVG output is used, NVDA might switch to Focus Mode automatically (in particular on older Windows Versions).
- JAWS ("Virtual PC Cursor") is switched via JAWS+Z (default: INS)
- Window Eyes (Browse/Focus Mode) is switched via CTRL+SHIFT+A
- VoiceOver has no modes but SHIFT+CTRL+CMD+ARROW will trigger direct input
- ChromeVox requires no extra switching
- ORCA: ORCA+A (default: INS)
A key UX problem is to combine the browse mode experience with the Explorer tool.
Readers the screenreader to generate some output while reading the page in browse mode; ARIA labels work reliably here.
But, e.g., when encountering a very long and complex equation, readers want to switch from browse mode to the Explorer tool to explore in detail. For this, readers need to put the relevant equation into focus so they can start the Explorer tool; usually this would be when the screenreader in browse mode reads (or has just read) the label of an equation.
If the screenreader tracks the tabindex while in browse mode, then TAB/SHIFT+TAB might enable this; the screenreader may also have specialized features for this behavior.
The second challenge occurs when exiting the Explorer tool. Readers want to continue in browse mode, in particular find themselves where they left off. In combinations of browsers and screenreaders, manually switching to (or cycling) browse mode helps, but oftentimes there are complications and too often browse mode and tabindex are not kept in sync; screenreaders often track the position of browse-mode when manually switching out of it; then readers have to try to keep the tabindex and browse mode position manually in sync.
We continue to work on improving this interaction to enable a better user experience for everyone.
Verbosity settings of screenreaders might change how elements are announced or labels are spoken.
- WindowEyes offers a configuration option for voicing common mathematical symbols (+, - etc); it is disabled by default.
- Some screenreaders will voice (some) unexpected dashes, e.g., speaking "left-parenthesis" as "left dash paranthesis".
Screenreader | Browser | OS | Usability | Notes |
---|---|---|---|---|
ChromeVox | Chrome | any | +1 | Occasionally: when exploring very quickly, ChromeVox might read "d i v" instead of the speech text (the aria live region is on a <div> ). |
NVDA | Firefox | Win XP/7/8/10 | +0 | In browse mode, speaks "application clickable" before the ARIA label on each expression. In Explorer tool, speaks "space" when SPACE is pressed. Difficult to continue in browse mode after using Explorer. |
NVDA | Chrome | Win XP/7/8/10 | +0 | In browse mode speaks "application" before the ARIA label on each expression. Requires manual switch to Focus mode. In Explorer tool, speaks "space" when SPACE is pressed. Difficult to continue in browse mode after using Explorer. Occasionally requires refreshing of virtual buffer to register all labels. |
NVDA | Edge | Win10 | DNA | Issues in Edge prevent basic support by NVDA. |
NVDA | IE 10/11 | Win 7/8/10 | +0 | In browse mode speaks "application" before the ARIA label on each expression. Difficult to continue in browse mode after using Explorer. |
JAWS | Firefox | Win 7/8/10 | +1 | In browse mode speaks "empty application" after the ARIA label on each expression. Requires cycling Browse/Focus mode to continue in browse mode after using Explorer. Occassionally, tabbing stops working. |
JAWS | Chrome | Win 7/8/10 | +0 | In browse mode speaks "empty application" after the ARIA label on each expression. Requires manual switch to Focus mode. In Explorer tool, speaks "space" when SPACE is pressed. Difficult to continue in browse mode after using Explorer. Might require refreshing of virtual buffer to register all labels. |
JAWS | MS Edge | Win10 | DNA | Issues in Edge prevent basic support by JAWS. |
JAWS | IE 11 | Win 7/8/10 | -1 | In browse mode, JAWS's custom math hack (targeted at MathJax output) overrides the ARIA label on each equation; unfortunately, JAWS does not support the MathML constructs generated by the accessibility extensions, leading to broken speech output. For the Explorer tool, JAWS requires manual switch to Focus mode. While exploring, speaks "blank" before each step. |
JAWS | IE 10 | Win 7/8/10 | -1 | In browse mode, JAWS stops at each equation, then needs two additional steps (of repetitions of the equation) to move passed it; after the ARIA label on each expression, JAWS speaks "empty application" after first and "application end" after third repetition. JAWS does not detect the ARIA live-region of the Explorer tool. Requires cycling Browse/Focus mode to continue in browse mode after using Explorer. |
VoiceOver | Safari | OSX 10.10 | +1 | Using "read next" mode (CTRL+OPTION+ARROW), speaks "application" before the ARIA label on each expression. Using "read all page" (CTRL+OPTION+A), VoiceOver speaks "application 0 items" instead of ARIA labels. Start Explorer tool SHIFT+SPACE and pass navigation keystrokes through using CTRL+SHIFT+CMD+ARROW. After exiting the Explorer with ESC, continue using "read next" mode. |
VoiceOver | Safari | iOS 9.1 | +1 | In "read all" mode (two finger swipe up), VoiceOver speaks "math ... application landmark" around the ARIA label on each expression. In "read-next" mode (swipe left/right), might jump back to a preceding element after reading the ARIA label on each expression. Explorer is not supported on mobile. |
VoiceOver | Chrome | OSX | +1 | In "read all" mode, VoiceOver speaks "application ... 0 items" around the ARIA label on each expression and might stop at an equation. Otherwise, like Safari. |
VoiceOver | Firefox | OSX | DNA | VoiceOver skips the ARIA labels. Firefox does not expose ARIA live regions on Firefox, cf. Marco Zehe's article. |
Talkback | Chrome | Android 6 | +1 | |
Window Eyes | Firefox | Win 7/8/10 | -1 | In browse mode speaks "application landmark ... end application landmark" around the ARIA label on each expression. Ignores `aria-hidden` and thus speaks characters from visual output (before "end application landmark"). When leaving Explorer tool, requires manual switch back to Browse mode and will repeat current equation. Occassionally, will get stuck on a focused equation. Occassionally, will stop accessing the tab order. |
Window Eyes (9.1) | Chrome | Win 7/8/10 | 0 | In browse mode speaks "application landmark ... end application landmark" around the ARIA label on each expression. Requires manual switch to Focus Mode. When leaving Explorer tool, requires manual switch back to Browse mode, and speaks "end application landmark". Occassionally, will jump to previous text segment when switching on Browse Mode. Occassionally, will drop all equations from tab order. |
Window Eyes | MS Edge | Win10 | Issues in Edge prevent basic support by WindowEyes. | |
Window Eyes | IE 11 | Win 7, 8, 10 | -1 | In browse mode speaks "application landmark ... end application landmark" around the ARIA label on each expression. Ignores `aria-hidden` and thus speaks characters from visual output (before "end application landmark"). When leaving Explorer tool, requires manual switch back to Browse mode, and speaks "end application landmark". Occassionally, will jump to previous text segment when switching on Browse Mode. Occassionally, will drop all equations from tab order. |
Window Eyes | IE 10 | Win 7, 8 | -1 | In browse mode does not speak the ARIA label on each expression. Requires manual switch to Focus Mode. When leaving Explorer tool, requires manual switch back to Browse mode. |
Orca | Firefox | Ubuntu 16.04 | -1 | Does not voice ARIA labels on any equation and ignores `aria-hidden` attribute (thus reading characters from the visual output); occasionally adds "clickable" after each of those characters). For Explorer tool, requires manual switch to Focus Mode; frequently gets stuck while exploring. |
Dolphin Screenreader | IE11 | Win10 | -1 | Speaks ARIA labels on each equation but ignores `aria-hidden`, thus speaks characters in the visual output. Does not seem to support ARIA live regions, thus breaking Explorer tool. |
- A demo for testing individual equations is available at https://mathjax.github.io/MathJax-RespEq/Semantics-Lab/walker/.
- A demonstration with real-world content is available at http://mathjax.github.io/MathJax-RespEq/examples/Struik-speech.html; note that the input was not optimized and contains common authoring mistakes not all of which can be compensated.
We have been creating short videos to demonstrate how the accessibility tool works on various combinations of browsers, operating system, and screenreaders.
The videos can be found at https://www.youtube.com/playlist?list=PL1ATLkPgTEBoIBkY6Ee9rdgAJaJtISOE8.