Gecko/Touch
From MozillaWiki
< Gecko
Status in Gecko
This table summarizes some of the broad features related to touch input on the web, and their implementation status on different Gecko platforms:
Platform | Touch Events | Pointer Events (bug 960316) | touch-action | async pan/zoom (APZ) | mobile viewport |
---|---|---|---|---|---|
Android | yes | no | no (bug 1029631) | Java (bug 776030) | Java (bug 799585) |
Firefox OS | yes | no | no (bug 960209) | Gecko APZC | Gecko |
Linux | no | mouse only (nightly) | no | disabled (bug 1013364) | no |
Mac | no | mouse only (nightly) | no | disabled (bug 1013364) | no |
Windows desktop | disabled (bug win-touch-issues) | mouse (nightly) touch (nightly + APZ) |
no (bug 1001440) | disabled (bug 1013364) | no |
Windows metro | yes | yes (disabled) | yes | Gecko APZC | Gecko |
Status in other browsers
This table lists support by other browsers as of December 2014:
Browser | Touch Events | Pointer Events | touch-action |
---|---|---|---|
Chrome | ✓ | ✓ | |
IE desktop | ✓ | ✓ | |
IE mobile | ✓ | ✓ | ✓ |
Safari | ✓ |
References
Standards:
- W3C Touch Events (shipped by Safari, Chrome, IE Mobile, Firefox for Android, Firefox OS)
- W3C Pointer Events (shipped by IE Desktop, IE Mobile)
- touch-action is part of the Pointer Events spec (shipped by Chrome, IE Desktop, IE Mobile)
Other documentation:
Planning
Current work:
- Windows, Mac, Linux: Use async pan/zoom (APZ).
- Status: disabled, can be tested in nightly builds with pref: layers.async-pan-zoom.enabled
- Tracking bug
- Windows, Mac, Linux: Support Pointer Events for mouse input.
- Tracking bug
- Status: enabled on nightly channel. Controlled by pref:
- dom.w3c_pointer_events.enabled
- Windows desktop: Support Pointer Events for touch input, and touch-action CSS property.
- Status: Works on nightly channel when APZ and Pointer Events are both enabled.
- CSS property is controlled by pref:
- layout.css.touch_action.enabled
- Windows desktop: Fix and enable Touch Events.
- Status: disabled, can be tested in nightly builds with prefs:
- dom.w3c_touch_events.enabled
- Status: disabled, can be tested in nightly builds with prefs:
Possible future work:
- Linux desktop: Add support for touch events, pointer events, touch-action.
- Firefox OS: Implement and enable pointer events and/or touch-action.
- Android: Unify Android and Gecko APZC and viewport code.
- Android: Implement Pointer Events and/or touch-action.
- Layout: Implement CSS Device Adaptation to rationalize mobile viewport code (bug 747754).