W3C home > Mailing lists > Public > w3c-wai-ig@w3.org > July to September 2012

Re: activating behaviours

From: Steve Faulkner <faulkner.steve@gmail.com>
Date: Tue, 10 Jul 2012 14:33:16 +0100
Message-ID: <CA+ri+VnGW5KaM_vbEOjrz+7Svk=aVV6_pehdUDPo22YwJA3fVw@mail.gmail.com>
To: Chaals McCathieNevile <w3b@chaals.com>
Cc: Bryan Garaventa <bryan.garaventa@whatsock.com>, Emmanuelle Gutiérrez y Restrepo <coordina@sidar.org>, WAI Interest Group <w3c-wai-ig@w3.org>, Ramón Corominas <listas@ramoncorominas.com>
Hi chaals

Understand where you are coming from, but I hink you are blowing the issue
out of proportion.

Currently developers do not have the facility to use generic mechanisms,
thats what the Indie UI [1] work is about. So its is best to provide
expected interactions for users where possible.


you wrote:

"Sometimes. For probably 100 million users (TV browsers and mobile phone
browsers), the 'ok' button in the joystick control activates buttons. For a
handful more, it's a special-purpose key - for example used to mirror half
a keyboard for one-handed users, or to swap input methods, or various other
important functionalities."

And how would listening for the space key in addition to the native event
handler, on a focused button, negatively impact them?

you wrote:
"Indeed. It makes a browser less usable if it is expected to behave that
way. On the other hand, if the browser is expected to use space for
something else, and the author has trapped it for their page only, you're
creating a new usability problem by interfering with the existing UI the
user knows."

If you have a custom button with a role=button and don't listen for the
space key (when the button has focus) the common behviour in  desktop
browsers is for the space key to scroll the page, definitely not what one
would want if they are trying to activate a focused button.
What you are describing happens if the events are listened for at the
document level not the element level right? adding it on a button does not
do what you describe as far as I can tell.

you wrote:

"Having the page content determine the particular activation for UI is
generally a terrible idea - as recognised for more than a decade when
accessibility guidelines first said "make sure you enable access for all
users to all controls". Javascript keyboard traps are a terrible way of
trying to do that, and if at all possible should be avoided for the massive
range of problems they introduce. Not recommended as a solution, because
then we go from one problem to two problems..."

So are you suggesting that no event handlers should be used? I think this
would demolish any capacity to make scripted widgets accessible to keyboard
users.

[1] http://www.w3.org/WAI/IndieUI/


regards
SteveF


On 10 July 2012 14:04, Chaals McCathieNevile <w3b@chaals.com> wrote:

> On Tue, 10 Jul 2012 11:04:04 +0200, Steve Faulkner
> <faulkner.steve@gmail.com> wrote:
>
>  Hi Chaals,
>> you wrote:
>>
>> "Why? The specific mechanism for activation should be able to varybetween
>> browsers*. Authors trying to guess which keys I have available on whatever
>> device is in front of me cause massive problems in general.It is true that
>> not all users know how to use their browser, but actively making it not
>> work isn't a very good solution and should only be done as a last resort."
>>
>> There are standard keys for activating standard controls, which should
>> work pretty much everywhere.
>>
>
> No, there are common conventions, which should generally work on systems
> that can offer them sensibly.
>
>  a button has 2 common keys assigned, enter and space.
>>
>
> Sometimes. For probably 100 million users (TV browsers and mobile phone
> browsers), the 'ok' button in the joystick control activates buttons. For a
> handful more, it's a special-purpose key - for example used to mirror half
> a keyboard for one-handed users, or to swap input methods, or various other
> important functionalities.
>
>  Some AT provide hints on how to use controls they recognise:I detailed
>> examples here, a while ago for a range of ARIA roles (which map onto
>> standard accessibility API roles:
>>
>
>  http://www.paciellogroup.com/**blog/aria-tests/user-input-**widgets.html<http://www.paciellogroup.com/blog/aria-tests/user-input-widgets.html>
>>
>
>  design patterns for a range of controls are documented in the wai-aria
>> authoring guide: http://www.w3.org/WAI/PF/aria-**practices/#aria_ex<http://www.w3.org/WAI/PF/aria-practices/#aria_ex>
>>
>
> Comments to come...
>
>  So the effect of having a button that cannot be activated using the space
>> key as expected,  may be a problem.
>>
>
> Indeed. It makes a browser less usable if it is expected to behave that
> way. On the other hand, if the browser is expected to use space for
> something else, and the author has trapped it for their page only, you're
> creating a new usability problem by interfering with the existing UI the
> user knows.
>
> This is exactly the same as the problem that was created by bad
> implementations of accesskey (in fact if there had been better ones from
> the get-go people probably wouldn't have come up with this "solution" in
> the first place).
>
> Having the page content determine the particular activation for UI is
> generally a terrible idea - as recognised for more than a decade when
> accessibility guidelines first said "make sure you enable access for all
> users to all controls". Javascript keyboard traps are a terrible way of
> trying to do that, and if at all possible should be avoided for the massive
> range of problems they introduce. Not recommended as a solution, because
> then we go from one problem to two problems...
>
> cheers
>
> On 9 July 2012 18:20, Chaals McCathieNevile <w3b@chaals.com> wrote:
>
>>
>>
>> On Mon, 09 Jul 2012 16:31:03 +0200, Emmanuelle Gutiérrez y Restrepo
>>
>> <coordina@sidar.org> wrote:
>>
>>
>>
>>
>>> Good point Bryan,
>>>
>>>
>>>
>>>
>>>> "Proper scripting is always necessary toensure functionality for users
>>>> that cannot benefit from ARIA."
>>>>
>>>>
>>
>>
>>
>>> It is important to note that, for all developers.
>>>
>>>
>>
>>
>> Indeed.
>>
>>
>>
>>
>>
>>> 2012/7/9 Bryan Garaventa <bryan.garaventa@whatsock.com>
>>>
>>>
>>>> Actually I ran across this not too long ago, where I had a Span tag
>>>> with tabindex=0 and role=link, and tried using just a click event to handle
>>>> >>>the keypress.
>>>>
>>>>
>>>>
>>>> This worked fine for screen reader users, but failed completely for
>>>> keyboard only users not using a screenreader.
>>>>
>>>>
>>
>>
>> On what browser(s)? Did you file bugs, or do you know of them for the
>> relevant browsers? Maybe you could add them to the a11ybugs list of things
>> to >annoy browser makers about...
>>
>>
>>
>>
>>
>>>>>
>>>>>
>>>>> ----- Original Message -----
>>>>>
>>>>> From: Steve Faulkner
>>>>>
>>>>>
>>
>>
>>
>>>>
>>>>
>>>>>> I think pretty much all browsers allow
>>>>>>
>>>>>> activating click events with the keyboard, and will add things if you
>>>>>> give them a tabindex. So adding specific keyboard >handling is probably
>>>>>> >>>>>redundant if you're just using click (mouseover, focus, and various
>>>>>> other things are still not so good).
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> I think you are right, but need to take into account keyboard
>>>>> behaviour for things like buttons, which require activation on space key
>>>>> press as >>>>well as enter key
>>>>>
>>>>>
>>
>>
>> Why? The specific mechanism for activation should be able to vary between
>> browsers*. Authors trying to guess which keys I have available on whatever
>> >device is in front of me cause massive problems in general. It is true
>> that not all users know how to use their browser, but actively making it
>> not >work isn't a very good solution and should only be done as a last
>> resort.
>>
>>
>>
>>
>>
>> *for usability the basics should be the same where possible - e.g. Opera
>> should fix the fact that they use the tab key for form-only navigation and
>> >ctrl-arrows for "tabbing" through all active things, because although
>> their overall keyboard navigation implementation was light years more
>> advanced >than anyone else, when there is a convention as strong as the tab
>> key it is unhelpful not to follow it)
>>
>>
>>
>>
>>
>> cheers
>>
>>
>>
>> Chaals
>>
>>
>>
>>
>>>>>
>>>>>
>>>>> see http://www.paciellogroup.com/**blog/2011/04/html5-**
>>>>> accessibility-chops-just-use-**a-button/<http://www.paciellogroup.com/blog/2011/04/html5-accessibility-chops-just-use-a-button/>for more details.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> regards
>>>>>
>>>>> Steve
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On 9 July 2012 11:47, Chaals McCathieNevile <w3b@chaals.com> wrote:
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>
>>>>>>
>>>>>>  On Sun, 08 Jul 2012 22:29:30 +0200, Ramón Corominas <
>>>>>> listas@ramoncorominas.com> wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>> Hi all, and apologies for cross-posting.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Last     Saturday I gave a presentation in the SpainJS event about
>>>>>>> creating     accessible apps using WAI-ARIA. The idea was to show JS
>>>>>>> >>>>>>developers that     accessibility is an essential component to
>>>>>>> achieve quality coding, and the     potential of ARIA to create more
>>>>>>> >>>>>>accessible apps.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> I've uploaded the     slides here:
>>>>>>>
>>>>>>> http://ramoncorominas.com/**spainjs/<http://ramoncorominas.com/spainjs/>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> Nice   :)
>>>>>>
>>>>>>
>>>>>>
>>>>>>> Comments, suggestions or corrections are welcome     (smile)
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> I think pretty much all browsers allow   activating click events with
>>>>>> the keyboard, and will add things if you give   them a tabindex. So
>>>>>> >>>>>adding specific keyboard handling is probably redundant   if you're
>>>>>> just using click (mouseover, focus, and various other things are   still
>>>>>> >>>>>not so good).
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> I'd be interested in learning if that is not the   case...
>>>>>>
>>>>>>
>>>>>>
>>>>>> cheers
>>>>>>
>>>>>>
>>>>>>
>>>>>> Chaals
>>>>>>
>>>>>>
>>>>>>
>>>>>> --Chaals - standards   declaimer
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> -- with regards
>>>>>
>>>>>
>>>>>
>>>>> Steve Faulkner
>>>>>
>>>>> Technical Director - TPG
>>>>>
>>>>>
>>>>>
>>>>> www.paciellogroup.com | www.HTML5accessibility.com |
>>>>> www.twitter.com/stevefaulkner
>>>>>
>>>>>
>>>>>
>>>>> HTML5: Techniques for providing useful text alternatives -
>>>>> dev.w3.org/html5/alt-**techniques/<http://dev.w3.org/html5/alt-techniques/>
>>>>>
>>>>> Web Accessibility Toolbar - www.paciellogroup.com/**
>>>>> resources/wat-ie-about.html<http://www.paciellogroup.com/resources/wat-ie-about.html>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
>>
>>
>>
>> --
>> Chaals - standards declaimer
>>
>>
>
>
> --
> with regards
>
> Steve Faulkner
> Technical Director - TPG
>
> www.paciellogroup.com | www.HTML5accessibility.com |
> www.twitter.com/stevefaulkner
>
>
> HTML5: Techniques for providing useful text alternatives -
> dev.w3.org/html5/alt-**techniques/<http://dev.w3.org/html5/alt-techniques/>
> Web Accessibility Toolbar -
> www.paciellogroup.com/**resources/wat-ie-about.html<http://www.paciellogroup.com/resources/wat-ie-about.html>
>
>
>
>
>
>
>
> --
> Chaals - standards declaimer
>



-- 
with regards

Steve Faulkner
Technical Director - TPG

www.paciellogroup.com | www.HTML5accessibility.com |
www.twitter.com/stevefaulkner
HTML5: Techniques for providing useful text alternatives -
dev.w3.org/html5/alt-techniques/
Web Accessibility Toolbar - www.paciellogroup.com/resources/wat-ie-about.html
Received on Tuesday, 10 July 2012 13:34:34 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 5 February 2014 07:13:30 UTC