2

This W3C best practice document says

To optimize the benefit of toolbar widgets... 
Implement focus management so the keyboard tab sequence
includes one stop for the toolbar and arrow keys move
focus among the controls in the toolbar

I can certainly do this, and indeed the example linked from that entry is very, very close (in terms of complexity) to what we need.

The 'problem' (if it be a problem at all), is that the toolbar in our product is pretty much our whole UI.

A fragment of the prototype UI showing the toolbar with one of the popups open

We have a couple of other controls not located in the toolbar. One of these is "Exit" and the other is "About" - they are special, liminal cases, each producing a modal window which takes the user out of the main activity.

A couple of other controls become available via the toolbar, some of them as actions in popup menus (see screenshot of our prototype).

There are three of these popups, each containing from two to four action buttons. And here I collide with another recommendation from the same document:

Avoid including controls that require arrow keys
to operate, such as textbox or radio group.
If unavoidable, include only one such control
and make it the last element .

Catch-22?

There are a couple of other controls which appear in a separate panel after one of the toolbar actions is activated.

The toolbar, then, is (pretty much) the UI.

If I understand correctly, the "single tab stop" design goal is intended to make it easier/faster to navigate the UI with a keyboard or similar device. It is a 'cognitive chunking' mechanism.

But if I follow the 'best practice' recommendation in this case, then almost all the controls will be available only with arrow keys (plus Home / PageUp etc.), rather than the tab. I am curious whether this really is desirable and in-keeping with established and preferred idioms.

It means that the tab key will be used hardly at all. Is that ok? There's so frequent mention of "tabindex" and "tabbing" that I feel it might be 'wrong' to rely far more on other keys, especially for those three popup action menus.

At the moment, I have a prototype where you tab through the toolbar, and use the arrow keys to select actions from the popup menus (if activated).

I will of course be testing a couple of approaches with seasoned keyboard users, and the results of those tests will weigh heavily, but until then, I'm curious to discover the rationale of the 'single tab stop', and how strongly to adhere to whatever principles lie behind it.

2

According to that document, it seems there are two main benefits of presenting this as a toolbar and treating it as such.

When a set of controls is visually presented as a group, the toolbar role can be used to communicate the presence and purpose of the grouping to screen reader users. Grouping controls into toolbars can also be an effective way of reducing the number of tab stops in the keyboard interface. (Emphasis added)

Let's address each of these main benefits individually:

  1. Communicate visual grouping to screen readers

Considering the fact that almost your entire UI is this single toolbar, I'm not so sure it's as necessary to communicate that the whole thing is in a group. It feels a lot like packing a backpack, then putting that backpack in a duffel bag, and making sure people know it.

  1. Reduce number of tab stops

The benefit provided by grouping your controls in a toolbar is that the user can recognize that their target element is not in this group and skip the group altogether with a single Tab without being bothered by passing each element individually. Again, seeing as almost your entire UI is this single toolbar, this might be actually more of a hindrance. It's actually very likely that the user's target element is within your toolbar.

  • Thanks @maxathousand, these are pretty much a paraphrase of my thoughts. At the very least, your answer will help me test my 'heresies' with greater confidence. – brennanyoung Jun 6 '18 at 9:52
  • 1
    @brennanyoung "test my 'heresies'" ... I think the thing to remember is that the W3C snippets you quote are "best practices" (for most common situations) not "hard-and-fast-rules" (for every situation). As noted in the answer, your situation seems to be a valid exception to these guidelines. As also would seem to be the "one arrow-using control" ... especially (as I understand it) you'd be using up/down within the pop-up and left/right between the pop-ups/other elements. – TripeHound Jun 7 '18 at 9:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.