w3c / aria-practices

WAI-ARIA Authoring Practices Guide (APG)
https://www.w3.org/wai/aria/apg/
Other
1.21k stars 344 forks source link

Why was Ctrl+Up Arrow removed for Accordion focus relocation? #357

Open mbgower opened 7 years ago

mbgower commented 7 years ago

Until December, the editor's draft contained a keystroke to relocate the focus to the accordion header/button for the currently focused content (i.e., if I had a tabstop inside accordion content). This was a good workaround for the conflicts with Ctrl+PageUp that exist in some browsers (which moves focus between open tabs in the browser). I raised it as an issue with a jquery implementation, and it resolved the keyboard usability, but as Nico pointed out, the keystroke is no longer in the APG. https://github.com/nico3333fr/jquery-accessible-accordion-aria/issues/13

Just wondering what the rationale was, and if it can be put back in.

aleventhal commented 7 years ago

FWIW, ctrl+up/down are system keys on a Mac, and brings up a thumbnail view of open windows.

I think this is a bad key to recommend for any widget, and if we remove it we should do it for any other widgets as well, such as tree.

mbgower commented 7 years ago

Wow, @aleventhal. That's a pretty surprising key combo for an OS to steal, as it is used in a lot of situations by (Windows-based) word processors (to move between paragraphs) and html elements. What happens in a multi-select listbox when you issue Ctrl+UpArrow to move from a selected option through other options to get to a non-contiguous option you'd like to select? Does the OS steal it there as well or does Mac use another combo to achieve the same thing? If so, I wonder if the APG could still include guidance on this, but just show OS-based differences. My last Mac went to the grave a few years back, so sorry I can't check myself.

aleventhal commented 7 years ago

Yes it steals it in that case. I can't even find a way to select multiple items with the keyboard.

That said, I'd like to take a moment and see that 99.9% of users won't know this ctrl+arrow trick. It's truly much more usable to provide a widget that has a checkbox next to each item. In addition, with the multiselect listbox, if the user presses the wrong thing, they lose their entire selection. With the checkboxes, you can arrow to each item and press spacebar without worrying about losing your work. In fact, I almost never see the multiselect