Touch Events
This is a page for keeping track of notes on one or more specifications for client-side script APIs and events for pen-tablet devices, multi-touch inputs, and gestures. These specifications are intended to define an advanced pointing-device interface, to expose distinct features of specific devices such as pen/tablet inputs and multi-touch trackpads, including gesture-based events.
This is very rough first draft, pulling items from email discussions. It is by no means complete, and is intended to serve as a template for other people to add more information.
Use Cases
- Pinching to zoom into a map
- Dragging an element from one place to another
- Rotating an element manually
- Multiple people using a device simultaneously
- Chording on a software keyboard
- list more here
Requirements
- Should reuse existing API wherever possible
- Must include pressure sensitivity
- Must include low-level APIs for position and movement
- Must include multi-touch
- May include high-level gestures, including but not limited to:
- swipe
- pinch
- twist
- Should consider mapping to legacy events for backwards compatibility with legacy content, if possible (e.g. "swipe left" might have left-arrow key event as default action)
- May include accelerometer / shaking API
- Must consider accessibility concerns (note that gesture events have the potential to improve accessibility)
- May include a way to distinguish between multiple people using a device simulataneously
Notes
Proposals
Other Resources
In no particular order...
- PhoneGap: an open source cross-platform mobile apps development framework, including multitouch and gesture events]
- iUI: iPhone User Interface Framework
- JavaScript Touch and Gesture Events iPhone and Android (blog post)
- Apple Developer Center Safari Reference Library
- sitepen: Touching and Gesturing on the iPhone]
- Mozilla Wiki on Multitouch: API, status, and bugs
- Jeff Han: Unveiling the genius of multi-touch interface design (video)
- multitouch: A software API for multiple touch inputs: developed by Deutsche Telekom AG Laboratories
- MultiTouch Capabilities in Windows 7