This document is in beta. Help us by reporting issues via Github or email
Back to the overview page
Device motion
On this page:
Summary
If a feature uses the device’s motion (like shaking or tilting), make sure that responses to these motions can be turned off, and that the feature can be used in another way.
If you’ve implemented any feature that responds to moving or shaking the device (like shake to undo), make sure that the same functionality is available in other ways (like pressing a button), and that responses to motions can be disabled.
Requirements
- Do not use the device motion events to activate any functionality. Or, if you do:
- Ensure that alternative means of input exist when using device motion sensor input.
- Provide a user preference to disable motion actuation (ie. responses to the device’s motion).
- Support Operating System features which allow the user to disable motion actuation.
Why?
This helps people who:
- may be unable to perform tilting, shaking, or gesturing to use an interface;
- may have their device mounted to a mobility aid in a fixed position;
- move or shake involuntarily.
Fixing this will ensure users:
- can still operate all functionality by other means;
- won’t trigger functionalities without meaning to.
Common mistakes
- A functionality that can only be activated by moving, shaking or tilting the device. For example:
- When inputting text on an iPhone, shaking the device shows a dialog where you can undo the text input. That dialog can be disabled, but there’s no other way to cancel the last action.
- The user is unable to disable motion actuation. For example:
- Imagine an app where users can tilt their device to scroll down a page, and there’s way to disable that response to tilting.
Official wording in the Web Content Accessibility Guidelines
2.5.4 Motion Actuation: Functionality that can be operated by device motion or user motion can also be operated by user interface components and responding to the motion can be disabled to prevent accidental actuation, except when: (Level A)
- Supported Interface: The motion is used to operate functionality through an accessibility supported interface;
- Essential: The motion is essential for the function and doing so would invalidate the activity.
See the W3C’s detailed explanation of this guideline with techniques and examples.
More info
Sources
Contribute
This document is in beta. Help us by reporting issues via Github or email