Feature | Status | ETA | Owner |
Touch Events | Implementation in progress | 2011-07-01 | Thomas Arend |
Summary
Expose touch events to content for better interaction with web pages and services, and compatibility with WebKit/Opera and existing web content.
Team
- Wes Johnson - Mobile Front-end
- Olli Pettay (smaug) - Platform
- Matt Brubeck - W3C spec
Release Requirements
- No performance regressions on non-touch-event pages.
- Acceptable performance of touch events in content. (Need more precise criteria?)
- Sidebar (or some alternate form of navigation) is still accessible on pages that use touch events.
Next Steps
- Finish patches and get reviews.
- Write automated tests and do manual compatibility testing.
- Experiment with different ways of allowing sidebar panning.
- Performance testing and optimization.
- Send spec feedback to W3C Web Events working group.
Open Issues
Related Bugs & Dependencies
- bug 544614 - Tracking bug for touch events in Fennec
Designs
Possible new gesture set, as mapped to current browser features:
[Browser Feature] = [Gesture]
Back = Double-finger Swipe Left + Onscreen Back button
Forward = Double-finger Swipe Right + Onscreen Forward button
Scroll Down = Swipe Down
Scroll Up = Swipe Up
Test Plans
Goals/Use Cases
- Expose single-touch events to content in Fennec.
- Don't let pages completely block navigation or sidebar panning.
- Compatibility with existing pages like Google Maps.
- Conformance with a subset of W3C Touch Events editor's draft.
- Compatibility with a common subset of Safari/Android/WebKit functionality.
Non-Goals
- Expose multiple simultaneous touches to content (will be done in a future version).
- 100% conformance with W3C Touch Events spec (will be completed in future versions).
- 100% compatibility with Safari or other browsers.
- Enable W3C touch events in desktop Firefox (will be done in future versions).
Other Documentation
Legend (remove if you like)
Healthy: feature is progressing as expected. | |
Blocked: feature is currently blocked. | |
At Risk: feature is at risk of missing its targeted release. | |
ETA | Estimated date for completion of the current feature task. Overall ETA for the feature is the product release date. |