Skip to content
This repository has been archived by the owner on Jun 30, 2018. It is now read-only.

Pointer gestures #61

Closed
kwahlbin opened this issue Nov 29, 2016 · 9 comments
Closed

Pointer gestures #61

kwahlbin opened this issue Nov 29, 2016 · 9 comments

Comments

@kwahlbin
Copy link
Contributor

kwahlbin commented Nov 29, 2016

Current versions of SC and Definitions

SC Shortname

Pointer gestures

SC Text

All functionality can be operated with a single untimed pointer gesture unless a multipoint or timed gesture is essential.

Note: This requirement applies to web content which interprets pointer gestures (i.e. this does not apply to gestures that are required to operate the user agent or assistive technology).

Suggestion for Priority Level (A/AA/AAA)

Level A

Related Glossary additions or changes

None

What Principle and Guideline the SC falls within.

Principle 2, new Guideline "Pointer Accessible"

Description

It may not always be possible for users to perform specific gestures (e.g. draw a complex path with their finger on a touchscreen) in a precise and timely manner - they may lack the precision/accuracy/speed necessary. Further, it may not always be possible for users to perform multi-pointer gestures (e.g. a two-finger pinch/zoom, three-finger rotation). Authors must ensure that their content/functionality can be operated without requiring the user to perform timed or complex gestures.

Note: this does not preclude the inclusion of gesture-based interactions; however, if gesture-based controls are used, then an alternative which only requires a single activation/tap must be present.

Benefits

Users who cannot (accurately) perform complex or timed pointer gestures (such as touchscreen swipes or multi-pointer gestures such as a two-finger pinch/zoom) will be able to operate content/functionality.

Testability

Manual test: if a web site/application has controls that accept complex or timed pointer gestures, ensure that the functionality can be operated via alternative simple controls that can be activated by a simple pointer gesture (such as tapping or a mouse click).

Techniques

Do not rely solely on complex pointer gestures that require high precision or specific timings; do not rely on multi-pointer gestures; provide alternatives that do not require complex gestures (e.g. additional visible controls that perform the same function as a complex gesture and can be activated by a simple pointer gesture (mouse click, tap).

[Note: the techniques M3 and M9 are related and may be combined in 2.1. M3 requires that functionality work without timing or multi gestures, M9 requires it works without tilt, specific pressure, or angle, etc...]

@alastc
Copy link
Contributor

alastc commented Dec 14, 2016

This appears clear and testable to me.

I guess it would fail the current google maps interface on mobile? I can't see a means of zooming out or rotating the screen without multi-point gestures... they would have to add buttons for that to pass? Or provide a setting/mode that adds buttons for those functions.

@mbgower
Copy link
Contributor

mbgower commented Jan 18, 2017

I'm trying to relate this principle to what exists for keyboard on the desktop.
There is no author restriction to using multiple key commands. That is because the operating system is responsible for providing sticky keys, which ensure a single tap/switch can be used to sequentially connect keystrokes into a single command.
A similar thing seems to be occurring with mobile operating systems (in iOS, assistive touch, touch accommodations, etc)
Contrasting that is the idea that Mouse Keys cannot be used as a workaround for lack of keyboard support. So I get there may be a dividing line between what is the responsibility of the OS and the responsibility of the author.
I would just like a better understanding of what that dividing line is before imposing future restrictions on an author based on current technology.

@patrickhlauke
Copy link
Member

While an OS can provide ways to define "macros" for common gestures, this option is not pervasive on all touch-enabled platforms. Moreover, this may work for standard gestures that a user can predefine, but won't work for arbitrary gestures.

@alastc yes the current maps implementation would fail this, as there should be some way (which can well be something enabled in settings) to achieve rotation/zoom (and possibly even pan?) with single pointer interactions

@DavidMacDonald
Copy link
Contributor

DavidMacDonald commented Feb 13, 2017

If someone meets 2.1.1 they would also meet this, in it's current form. Perhaps it needs something like.

Functionality requiring complex or timed pointer gestures or multi-pointer gestures can also be operated with simple pointer gestures.

This has no SC manager... I can submit this proposal. Time is running out.

@patrickhlauke
Copy link
Member

Perhaps it needs something like [...]

Yes, agree. Happy for you to manage and submit if you don't mind, David

@kwahlbin
Copy link
Contributor Author

This is now #132

@awkawk
Copy link
Member

awkawk commented Feb 28, 2017

Updated the issue description to reflect the FPWD text and reopening issue.

@awkawk awkawk reopened this Feb 28, 2017
@DavidMacDonald
Copy link
Contributor

I did the pull request for FPWD it but I have 4 SCs right now. I should probably share the love and let someone else take it.

@steverep
Copy link
Member

A few comments and questions:

  1. The definition of a complex gesture does not seem to be mutually exclusive from a "single point gesture". I read this as requiring a single finger gesture movement, which I do not believe is the intent. For example, it's not clear that a timed single point gesture is not acceptable.
  2. What about complex single point gestures, such as requiring writing the letter W or something similar? The intent is probably to exclude that as well but it is not at the moment.
  3. Where do touch and hold events fit in here (e.g. drag and drop or a slider)? Essential or considered single point?
  4. I think the note saying this doesn't apply to user agents needs to be moved into the criterion itself for future-proofing and to align with other criteria.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

9 participants