Circuit display semantic and accessibility problems
The site circuit display has one major screen reader issue when testing with Orca: once you open the "Site information" panel it doesn't seem to provide the right context for the screen reader. Specifically, pressing Tab will not move focus within the panel. And when using the screen reader's browse mode the arrow keys start moving over the web page instead. As such, I couldn't interact with the circuit display at all using a screen reader and keyboard. And the "New Circuit for this Site" feature is not reachable.
I think this problem probably comes from mozilla code: the panel is designed around using arrow keys to navigate panel items. This navigation works ok in firefox when in the screen reader "focus" mode, although the context of this panel always places my screen reader in the "browse" mode. I think these controls are pretty non-standard for the accessibility roles being used: they are treating it as a menu, without giving it "menu" roles. But they do the same in the app (hamburger) menu...
In tor browser our circuit display is not included in this arrow navigation (I think it expects xul:toolbarbutton
). Moreover, it would not be appropriate as a menu item, and so it will never fit into the context of this panel as it is currently designed in mozilla-central.
In addition to the above issue, there are some other issues with the circuit display that would also need to be addressed to get this to work on screen readers:
- The "Tor circuit" heading is placed inside a
role="group"
(the#circuit-display-header
element). I'm not sure what the intention was here, but it could have just been copied from firefox code. - The last node in the circuit has a "Click to copy" label that only shows on hover. This is not part of the focus cycle so cannot be activated with a keyboard. Plus the "Click to copy" becomes part of the accessible label for the last item. This feature is meant to be used so you can copy the onion address when the displayed URL does not contain it, but it seems this feature should not be part of the circuit display itself. See #41038 (closed)
- The "Learn more" link has no link semantics and only responds to a mouse click.