Re: Keyboard navigation bugs (long)

Calum Benson wrote:
> --------
> Current proposal is that a toolbar in a window should be part of the
> normal Tab sequence for that window, however, it's not entirely clear to
> me how this would work in practice.  Most likely, e.g. in a typical
> document-based app like a text editor, you would have to press Ctrl+Tab
> to move focus out of the document and up to the "higher level" of
> controls-- toolbars, menu bar, and possibly status bar.  Once you've
> done that, it's not clear how you get focus back "down" to the document
> level again-- the document could just be the last navigational element
> in that "higher level" chain, but that feels like a slightly broken
> mental model.  Maybe it would work, though.
> Alternative proposal: Just as F10 gives focus to the menu bar in a
> window, we could specify a shortcut that would cycle focus through each
> toolbar in the current context-- such as Ctrl+F10.  Once a toolbar had
> focus, it would be navigable with the Tab key and arrow keys (in the
> case of button groups), as per the current proposal.
> Advantages: Mental model makes more sense, to me at least!
> Disadvantage: Another keyboard shortcut for people to remember, and
> another one taken out of the pool of available ones for app developers
> to use.

I think these are big disadvantages.  Also, Ctrl-f10 is very awkward
on most keyboards.

My proposal, which I think is more consistent with the way arrow keys
currently work in GTK+ (if not the Tab key):

Put the toolbar component in the regular tab sequence.  Once focussed,
the arrow keys cycle the user through the toolbar (both vertical and
horizontal keys could work, with a potential i18n complication).  tab
or shift-tab takes the user out of the toolbar (moves focus to next
widget in tab sequence).

Advantages: relates to existing arrow key navigation.
easy to remember.
single keystroke, convenient.
Disadvantages: requires 'numlock' type action on keyboards without
arrow keys.
requires some logic to check whether toolbar layout is left-to-right
or right-to-left
(for internationalization) or vertical.


Bill Haneman
Gnome Accessibility / Batik SVG Toolkit
Sun Microsystems Ireland

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]