We understand how this might be useful, but we have some reservations concerning both UX and technical implementation.
Regarding UX, the problem is that this idea, while convenient, creates inconsistency. When in browse mode, users should be able to expect that single letter keys perform quick navigation as they usually do for browse mode and as they do on every other page. If you want otherwise, you can switch to focus mode. The question is whether convenience outweighs inconsistency in this case. It all depends what a user is more likely to try first: a web app key or a quick nav key.
It's worth noting that this is not just applicable to Windows screen readers with "virtual buffers". It also applies to quick nav with VoiceOver on the Mac when single-key webpage navigation is enabled. This isn't enabled by default, but it's reasonable to assume that many users would enable this for efficient navigation. I've had several users confirm that these keys *are* overridden in this case.
Regarding implementation, using a data- attribute is never going to be something that could be properly standardised. It also requires direct DOM access (which not all AT/browser combinations have).
I also think this concept could be broadened somewhat. For example, on iOS, there is a rotor setting which allows you to select quick actions for the current element that sighted users would access using other gestures (some of which might not be possible with VoiceOver running). (This would also be useful with other touch-based screen readers and may already be implemented for some others already.) This concept could be broadened so that it was a list of actions and the key to trigger the action was just one piece of data associated with that action. I'm not sure of the syntax, though. It's rather complicated because it needs to be a list of maps or similar. JSON does seem to fit nicely, but that hasn't been done anywhere else in the ARIA spec.
To unsubscribe from this group and stop receiving emails from it, send an email to browser-accessibil...@googlegroups.com.
To post to this group, send email to browser-acce...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/browser-accessibility-dev/55505586.9080308%40nvaccess.org.
--
You received this message because you are subscribed to the Google Groups "Browser Accessibility Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to browser-accessibil...@googlegroups.com.
To post to this group, send email to browser-acce...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/browser-accessibility-dev/CAFz-FYw7JxrbChwnfxV8p4%2Bnk1c_ka8G0ZTkRnJqr-u7mMLjFA%40mail.gmail.com.
2. Passthrough: aria-interactive="typing" or whatever we choose to call it would allow certain groups of keystrokes to be passed through to the web app instead of being "eaten" by the screen reader.
On Mon, May 11, 2015 at 1:46 PM, 'Nektarios Paisios' via Browser Accessibility Development <browser-acce...@googlegroups.com> wrote:
2. Passthrough: aria-interactive="typing" or whatever we choose to call it would allow certain groups of keystrokes to be passed through to the web app instead of being "eaten" by the screen reader.
I don't understand why this is needed. When the user lands on an element with a role of text field, slider, combo box, list box, etc. now, they're automatically put in focus mode / forms mode, and then all keystrokes go to the web app. That already works pretty well. Aria-interactive just allows the web app to specify that an element wants that same behavior even if it's not one of those predefined roles. So I don't see the need for a value like "typing".
Or are you proposing that aria-interactive could also allow some keystrokes to go to the web app even in browse mode / virtual cursor mode? If so, that seems potentially really confusing. Suppose you land on such an element that eats all keystrokes even though you're still navigating the virtual buffer - how would you override that element and jump to the next heading or link? The advantage of the current aria-interactive proposal is that it preserves the existing two modes and the feedback you get when auto focus mode / auto forms mode is on.
* It ensures there's a programmatic way to activate any global command without necessarily pressing the key - for example, voice control software could expose these commands to users, or a mobile screen reader could provide a menu of all global commands on the page.
--
You received this message because you are subscribed to the Google Groups "Browser Accessibility Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to browser-accessibil...@googlegroups.com.
To post to this group, send email to browser-acce...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/browser-accessibility-dev/1e53681c-1a9a-4714-a2d1-61f494dedde3%40googlegroups.com.
Why don't we let screen readers decide on what shortcut key to use.
Sent from a Mobile device
However, if this were implemented and became a default, it's highly likely we'd end up with the reverse; i.e. users who tried to use quick navigation keys and wondered why they didn't work. In fact, this is even worse because the user might not even be aware of the specific shortcut keys used by the web app they're using; e.g. if they're using it for the first time.
where the app wants arrow keys, it can do so when the user is focused onThis should only be the case if the user switches to focus mode. Otherwise, a user will be happily arrowing through the document until, all of a sudden, their arrow keys start doing something different.
a specific control, possibly using aria-interactive to help.)
Jamie, what would you think if the screen reader announced the presenceThat would at least make things clear and give the user a choice. We'd probably want some way of saving this choice, but that brings up the question of how screen readers should identify a given "web app" (e.g. domain isn't necessarily a reliable identifier).
of web app key commands when a page loads, giving users the choice at
that time?
In terms of implementation, one problem with this idea is that a screen reader would have to crawl the entire document to cache all possible shortcut keys. Windows screen readers currently use virtual buffers (so they already suck in the entire document), but this may not be the case forever. The concept behind browse mode doesn't necessarily require a virtual buffer; that's just the current way it's implemented "behind the scenes". Doing browse mode without virtual buffers is something I've been thinking about quite a bit lately, and while it's not likely to happen in the short-term, I'm still keen to explore the possibilities. It's reasonable to expect a small delay when doing quick navigation, but not every time a user presses a key. So, if we did go with an approach like this, browsers would need to provide a way for ATs to get at all shortcut keys.
If you want to be able to quickly find something in a large documentThis is not a good solution for this problem because you'd have to do this on *every* key press, which means the response needs to be near instant (which these APIs won't be in a large document). (Try navigating by heading in a large document on Mac or iOS.) This is very different to quick navigation, where it's reasonable to expect a slight delay. You can't even have the AT fetch the entire list and cache it unless the AT invalidates the cache on every possible mutation event (which first means listening for every mutation event).
without scanning the whole thing, we should add news APIs to make this
easier. Mac OS X already has this, VoiceOver calls a special function to
search for objects that match certain predefined search predicates as a
way to avoid scanning the whole document.
--
You received this message because you are subscribed to the Google Groups "Browser Accessibility Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to browser-accessibil...@googlegroups.com.
To post to this group, send email to browser-acce...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/browser-accessibility-dev/555E7C58.4090806%40nvaccess.org.
--
You received this message because you are subscribed to the Google Groups "Browser Accessibility Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to browser-accessibil...@googlegroups.com.
To post to this group, send email to browser-acce...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/browser-accessibility-dev/555F3A50.9040507%40google.com.