- From: Charles McCathieNevile <chaals@opera.com>
- Date: Wed, 01 Dec 2010 10:28:35 +0100
- To: "UAWG list" <w3c-wai-ua@w3.org>
Hi folks, about a decade ago when I was actively involved here I used to waffle on a lot about accesskey... In UAAG 1 there ended up some requirement about how current interface bindings should be available to the author, and configurable, which was a generalisation (probably to the point of incomprehensibility) about how accesskeys *should* be handled. Recently I put this in to practice as an extension to Opera. In order to see it working you need the Opera 11 beta, and then you can get it from https://addons.labs.opera.com/addons/extensions/details/excesskey/?display=en - sorry screenreader folks, the documentation at http://my.opera.com/chaals/excesskey is pretty accessible but the Beta version of Opera is more or less unusable, especially the extension stuff, with a screenreader ;(. It is a work in progress. But it clarified a bunch of things for me (apart from the fact that I am not a brilliant developer and need to do a whole lot more work ;) ). - accesskeys are really handy, if you know when they are there and discover the sites that use them well (*to do: allow users to mark a site as 'don't bother' so a different icon shows.) - It really matters whether you can choose the keys. I made a test page that uses ł,आ,س,ф,± as accesskeys - all of which are things I know how to generate and are from time to time reasonable keys to use. (I also used ☆ and ✐ to see what happens ;) ). The common english-language convention of using numbers is terrible for french people who use the traditional 'azerty' layout, but it would make perfect sense for them to use &é"'(§è!çà which are the natural defaults for the same physical keys. Yet many french people use english sites, and to some extent vice versa. - it makes perfect sense to allow accesskey='say this please', if you shift the responsibility for assigning keys to the User Agent (which you need to do in order to allow the user to decide what keys they will use). Because I have already begun sketching out an architecture that lets you assign non-keyboard interactions, and one obvious one is voice where whole words or phrases are *better* than single letters. - if you can discover what accesskeys are there before you activate them, it makes much more sense to have them directly activate a link or control than just focus it, where that's a logical thing to do. Of course it's not applicable to text input boxes :) - shift-esc is not a great activation shortcut for the accesskey menu. I remap mine to '.' which is more convenient for me (sits between search-in-page and search-for-links). YMMV. The basic idea is this: 1. There is a status indicator to tell you if there are accesskeys defined in the page. This is an improvement on Opera's accesskey menu (normally activated by shift-esc) which will list the accesskeys defined, or tell you there are none. Which in turn is an improvement on guessing what they might be or where they might be described. 2. The extension actually cleans up the accesskeys so they can be fired - i.e. make sure that each is a single unique character (Opera has a bug where accesskey="oops" will break the accesskey menu, and while you can navigate the menu with the mouse it doesn't deal nicely with two uses of the same key). 3. In the preferences (open extension manager, right click on the funny cog wheel next to the 'uninstall button') you can select the keys that you want to be used to assign accesskeys. For example, numbers are not very helpful for users of french azerty keyboards, since you need to use shift to produce them. And cyrillic is more useful for many russian users since those are the letters they produce by default. It has been tested with cyrillic, arabic, and various other wierd characters. As the documentation explains, right now it uses Opera's native accesskey menu, but for various reasons I am tempted to try and replace that. But first I want to make some improvements in the underlying code and capabilities - so it won't get any prettiness enhancements for a while. cheers Chaals -- Charles McCathieNevile Opera Software, Standards Group je parle français -- hablo español -- jeg lærer norsk http://my.opera.com/chaals Try Opera: http://www.opera.com
Received on Wednesday, 1 December 2010 09:29:13 UTC