You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jun 30, 2018. It is now read-only.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
For single pointer activation, at least one of the following is true:
Activation is on the up-event, either explicitly or implicitly as a platform's generic activation/click event;
A mechanism is available that allows the user to choose the up-event as an option;
Confirmation is provided or another way to dismiss activation is provided once it has begun;
Activation is reversible;
Timing of activation is essential and waiting for the up-event would invalidate the activity.
Note: This success criteria applies when platform assistive technology (e.g. screen reader) that remaps touch gestures is not turned on - see proposed SC Touch with Assistive Technology.
Suggestion for Priority Level (A/AA/AAA)
Level A
Related Glossary additions or changes
Up-Event: The activation of a component when the trigger stimulus is released. On different platforms the "up-event" may be called different things, such as "touchend" or "mouseup".
Example: For touchscreen interaction, the event is triggered when a finger is lifted from the touchscreen at the end of a tap.
Platform assistive technology that remaps touch gestures: Software that is integrated into the operating system, ships with the product, and/or is updated or installed via system updates. This software changes the characteristics of the touch interface when turned on. (e.g., a system screen reader may remap a right swipe gesture to move focus from item to item instead of it's default behaviour when the assistive technology is not on).
Single Pointer Activation: One point of contact with the screen (vs. multi-touch). A pointer can be any point of contact on the screen made by a mouse cursor, pen, touch (including multi-touch), or other pointing input device. This model makes it easier to write sites and applications that work well no matter what hardware the user has. For scenarios when device-specific handling is desired, this specification also defines properties for inspecting. Pointer Events (REC)Pointer Events Level 2 (ED)]
What Principle and Guideline the SC falls within.
New Proposed Guideline "Pointer Accessible"
Make it easier for users to operate pointer functionality.
Editorial Note for WCAG group: Pointer includes "Touch" in its definition
Description
People with various disabilities can inadvertently initiate touch or mouse events with unwanted results. Up-Event activation refers to the activation of a component when the trigger stimulus is released. For example, for touchscreen interaction the event would be triggered when a finger is lifted from the touchscreen at the end of a tap.There is a distinction between when someone touches a screen and when they remove their finger. On a mouse there is a difference between mouse down (initiating a click) and mouse up (releasing the finger). Authors can reduce the problem of users inadvertently triggering an action, by making activation on the up-event. This gives users the opportunity to move their finger or other pointer (e.g. mouse) away from the wrong target once they hit it. If touch down activation is necessary, there are several options:
A confirmation alert allows the user to change their mind
An undo button or other mechanism allows the user to reverse the action.
A setting in preferences allows the user to choose whether activation happens on the down or up event.
Generic platform activation/click events generally trigger on up and when they do, they are also allowed. For example, in the case of mouse interactions, the "click" event in JavaScript triggers on release of the primary mouse button, and is an example of an implicit up-event.
Examples of where timing of the activation is essential would be:
An activity that would be invalid if activation waited for the up-event such as a piano program.
A program for shooting skeets where waiting for the "up" event would invalidate the activation.
Long press activation and 3D touch can be used as long as one of the above listed alternatives is present, and there is another conforming way to provide the action performed by the control.
Examples
For interface elements that have a single tap or long press as input, the corresponding event is triggered when the finger is lifted inside that element.
A phone dialling application has number keys that are activated on touch down. A user can undo an unwanted number by hitting the backspace button to delete a mistaken digit.
Examples of exceptions covered under the last bullet "Timing of activation is essential and waiting for the up-event would invalidate the activity." include:
a piano program where the notes need to play on the touch down.
An arcade game where the trigger of a gun is on the down event.
A drag and drop application where on the down event the element is "grabbed" in order to be moved.
Benefits
Makes it easier for all users to recover from hitting the wrong target.
Helps people with visual disabilities, cognitive limitations, and motor impairments by reducing the chance that a control will be accidentally activated or action will occur unexpectedly.
Individuals who are unable to detect changes of context are less likely to become disoriented while navigating a site.
Jon A. was in touch with a research project which tested 30 users with physical dexterity disabilities. Results outstanding.
NOTE: There is feedback from the WCAG working group on this work. Captured in minutes here and in the Survey remarks. This feedback has been incorporated into this SC.
Testability
The majority of the testing of this will be terminated after the first test.
Activation is on the up-event, either explicitly or implicitly as a platform's generic activation/click event;
Test: Examine code for the Up-Event. This could be done with automated checking. OR activate the event with a pointer to ensure it activates on release rather than on contact.
If that is not true, proceed to the next test.
A mechanism is available that allows the user to choose the up-event as an option;
Test: Examine code for a mechanism that switches activation to the Up-Event. This test could be automated. Or functionally test it by examining for a mechanism that changes event activation to the up-Event.
Confirmation is provided, which can dismiss activation;
Test: Examine code for a confirmation mechanism that allows the user not to proceed with the action. Or functionally test it by activating the control and looking for a confirmation dialogue that allows the user not to proceed with the action or to proceed with the action.
Activation is reversible;
Test: Examine code Can be tested both functionally and by looking at the code for a control that reverses the activation.
Timing of activation is essential and waiting for the up-event would invalidate the activity.[edit]
Test: Can be tested by considering whether activating as the user leaves the surface would invalidate the activity (up-event). AN example would be a piano program that needs the keys to lay as the user touches the key rather than when they leave the key. WCAG 2.2.1
Techniques
Activating a control using the up-Event in HTML, iOS and Android
When this was discussed in the 8/30/2016 WCAG teleconference, I asked where drag and drop operations fit into this SC. I don't see how that has been addressed per the notes in issue #65. I think it would be a very helpful accessibility feature to require that such operations have either a confirmation (3rd bullet) or a way to reverse them (4th bullet) to prevent mistakes. This type of operation would not be exempt when a screen reader is active since the up-event triggers the exact same result.
Regarding the definition of "Platform assistive technology that remaps touch gestures", I do not understand why the word "platform" is used, or why it matters if the AT ships with the OS or gets updates. All that should matter is that it is remapping touch for reasons of accessibility. Am I missing something?
Regarding the definition of "Platform assistive technology that remaps touch gestures", I do not understand why the word "platform" is used, or why it matters if the AT ships with the OS or gets updates. All that should matter is that it is remapping touch for reasons of accessibility. Am I missing something?
@steverep "The Platform assistive technology that remaps touch gestures" is a proposed new term in WCAG 2.1. It's main function is for the SC on "touch with AT" Pull Request #131. The term is specific to mean basically screen readers that ship with the OS. We can't really talk about apps that don't ship with the OS, for mobile because there are just too many and always changing. And blind users are using the OS Assistive technology (VoiceOver and Talkback). .. ."AT that remaps touch gestures" is a term to further limit requirements to basically AT that alters the touch interface, such as screen readers.
I asked where drag and drop operations fit into this SC. (doesn't this invalidate Drag and Drop)
We have the 4th bullet exception:
Timing of activation is essential and waiting for the up-event would invalidate the activity.
This is a clear case of the exception. I added drag and drop to the understanding as an example of this exception.
Hi @DavidMacDonald... If you limit application of the SC to only screen readers that ship with the OS, then I don't see how this SC can be met if a third party AT or other app is remapping touch. For example, it eliminates a major Windows screen reader, NVDA.
With regard to drag and drop, my point was that by making it an exception, the SC loses the opportunity to provide better accessibility for those events by requiring either a way to undo or asking for confirmation. Often the only way to undo a mistake is to perform a second drag and drop, which can be difficult with visual or motor disabilities (and perhaps cognitive as well). I think it might be worth rewording the SC to include this type of operation. I could take a shot at it if you'd like. Do you think it would be too difficult?
Sign up for freeto subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Labels
None yet
3 participants
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This is from issue #65
SC Text
For single pointer activation, at least one of the following is true:
Note: This success criteria applies when platform assistive technology (e.g. screen reader) that remaps touch gestures is not turned on - see proposed SC Touch with Assistive Technology.
Suggestion for Priority Level (A/AA/AAA)
Level A
Related Glossary additions or changes
Up-Event: The activation of a component when the trigger stimulus is released. On different platforms the "up-event" may be called different things, such as "touchend" or "mouseup".
Example: For touchscreen interaction, the event is triggered when a finger is lifted from the touchscreen at the end of a tap.
Platform assistive technology that remaps touch gestures: Software that is integrated into the operating system, ships with the product, and/or is updated or installed via system updates. This software changes the characteristics of the touch interface when turned on. (e.g., a system screen reader may remap a right swipe gesture to move focus from item to item instead of it's default behaviour when the assistive technology is not on).
Single Pointer Activation: One point of contact with the screen (vs. multi-touch). A pointer can be any point of contact on the screen made by a mouse cursor, pen, touch (including multi-touch), or other pointing input device. This model makes it easier to write sites and applications that work well no matter what hardware the user has. For scenarios when device-specific handling is desired, this specification also defines properties for inspecting. Pointer Events (REC) Pointer Events Level 2 (ED)]
What Principle and Guideline the SC falls within.
New Proposed Guideline "Pointer Accessible"
Make it easier for users to operate pointer functionality.
Editorial Note for WCAG group: Pointer includes "Touch" in its definition
Description
People with various disabilities can inadvertently initiate touch or mouse events with unwanted results. Up-Event activation refers to the activation of a component when the trigger stimulus is released. For example, for touchscreen interaction the event would be triggered when a finger is lifted from the touchscreen at the end of a tap.There is a distinction between when someone touches a screen and when they remove their finger. On a mouse there is a difference between mouse down (initiating a click) and mouse up (releasing the finger). Authors can reduce the problem of users inadvertently triggering an action, by making activation on the up-event. This gives users the opportunity to move their finger or other pointer (e.g. mouse) away from the wrong target once they hit it. If touch down activation is necessary, there are several options:
Generic platform activation/click events generally trigger on up and when they do, they are also allowed. For example, in the case of mouse interactions, the "click" event in JavaScript triggers on release of the primary mouse button, and is an example of an implicit up-event.
Examples of where timing of the activation is essential would be:
Long press activation and 3D touch can be used as long as one of the above listed alternatives is present, and there is another conforming way to provide the action performed by the control.
Examples
Examples of exceptions covered under the last bullet "Timing of activation is essential and waiting for the up-event would invalidate the activity." include:
Benefits
Evidence
NOTE: There is feedback from the WCAG working group on this work. Captured in minutes here and in the Survey remarks. This feedback has been incorporated into this SC.
Testability
The majority of the testing of this will be terminated after the first test.
Activation is on the up-event, either explicitly or implicitly as a platform's generic activation/click event;
Test: Examine code for the Up-Event. This could be done with automated checking. OR activate the event with a pointer to ensure it activates on release rather than on contact.
If that is not true, proceed to the next test.
A mechanism is available that allows the user to choose the up-event as an option;
Test: Examine code for a mechanism that switches activation to the Up-Event. This test could be automated. Or functionally test it by examining for a mechanism that changes event activation to the up-Event.
Confirmation is provided, which can dismiss activation;
Test: Examine code for a confirmation mechanism that allows the user not to proceed with the action. Or functionally test it by activating the control and looking for a confirmation dialogue that allows the user not to proceed with the action or to proceed with the action.
Activation is reversible;
Test: Examine code Can be tested both functionally and by looking at the code for a control that reverses the activation.
Timing of activation is essential and waiting for the up-event would invalidate the activity.[edit]
Test: Can be tested by considering whether activating as the user leaves the surface would invalidate the activity (up-event). AN example would be a piano program that needs the keys to lay as the user touches the key rather than when they leave the key. WCAG 2.2.1
Techniques