Fennec/Features/touch: Difference between revisions

No edit summary
 
(29 intermediate revisions by 8 users not shown)
Line 1: Line 1:
<section begin="status" />
{{FeatureStatus
{| class="fullwidth-table"
|Feature name=Touch Events part 1: single-touch
|-
|Feature stage=Shipped
| style="font-weight: bold; background: #DDD;" | Feature  
|Feature version=Firefox 6
| style="font-weight: bold; background: #DDD;" | Status
|Feature health=OK
| style="font-weight: bold; background: #DDD;" | ETA
}}
| style="font-weight: bold; background: #DDD;" | Owner
{{FeatureTeam
|-
|Feature product manager=Thomas Arend
<section begin="status" />
|Feature feature manager=Matt Brubeck
| [[Fennec/Features/touch|Touch Events]]
|Feature lead engineer=Wes Johnson, Olli Pettay, Matt Brubeck
| {{StatusHealthy|status=Implementation in progress}}
|Feature qa lead=Martijn Wargers
| 2011-07-01
}}
| Thomas Arend
{{FeaturePageBody
<section end="status" />
|Feature open issues and risks=* {{bug|653009}} - Make preventDefault for touch events compatible with WebKit/Opera
|}
|Feature overview=Expose touch events to content for better interaction with web pages and services, and compatibility with WebKit/Opera and existing web content.
 
|Feature users and use cases=* Expose single-touch events to content in Fennec.
== 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 &amp; Dependencies  ==
 
* {{bug|544614}} - Tracking bug for touch events in Fennec
 
== Designs  ==
This is our new gesture set, as mapped to current browser features. We will also have on-screen touch buttons/targets, but we need to map all features to a gestures for accessibility reasons (more details on that soon).
 
'''[Browser Feature] = [Gesture]'''
 
Back = Two-finger Swipe Left
[http://farm6.static.flickr.com/5310/5637707487_f85325f4f9_m.jpg]
 
Forward = Double-finger Swipe Right
[http://farm6.static.flickr.com/5301/5638283158_21bbf92d00_b.jpg]
Scroll Down = Swipe Down
 
Scroll Up = Swipe Up
 
Pan = Drag
 
Kinetic Pan = Swipe
 
== Test Plans  ==
 
 
== Goals/Use Cases  ==
 
* Expose single-touch events to content in Fennec.
* Don't let pages completely block navigation or sidebar panning.
* Don't let pages completely block navigation or sidebar panning.
* Compatibility with existing pages like Google Maps.
* Compatibility with existing pages like Google Maps.
* Conformance with a subset of [http://dvcs.w3.org/hg/webevents/raw-file/tip/touchevents.html W3C Touch Events editor's draft].
* Conformance with a subset of [http://dvcs.w3.org/hg/webevents/raw-file/tip/touchevents.html W3C Touch Events editor's draft].
* Compatibility with a common subset of Safari/Android/WebKit functionality.
* Compatibility with a common subset of Safari/Android/WebKit functionality.
 
|Feature requirements=* No performance regressions on non-touch-event pages.
== Non-Goals  ==
* 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.
* Expose multiple simultaneous touches to content (will be done in a future version).
|Feature non-goals=* Expose multiple simultaneous touches to content (will be done in a [[Fennec/Features/multitouch|part 2]]).
* 100% conformance with W3C Touch Events spec (will be completed in future versions).
* 100% conformance with W3C Touch Events spec (will be completed in future versions).
* 100% compatibility with Safari or other browsers.
* 100% compatibility with Safari or other browsers.
* Enable W3C touch events in desktop Firefox (will be done in future versions).
* Enable W3C touch events in desktop Firefox (will be done in future versions).
|Feature qa review=* [[Fennec/Features/touch/TestPlan|QA Test Plan]]
|Feature implementation notes=* {{bug|544614}} - Tracking bug for touch events in Fennec
** Patches and early test builds are available; see comments in this bug.
* See also [[Fennec/Features/gestures]].


== Other Documentation  ==
* {{bug|650339}} - Allow access to UI on pages that consume touch events and prevent panning
 
}}
{{FeatureInfo
|Feature priority=P1
|Feature roadmap=Firefox Mobile
|Feature list=Mobile
|Feature engineering team=Mobile platform
}}
{{FeatureTeamStatus
|Feature security status=sec-review-unnecessary
|Feature security health=OK
}}
== Other documentation ==
* [http://digdug2k.wordpress.com/2011/05/02/touchevents/ Blog post about touch events in mobile Firefox]
* [http://dvcs.w3.org/hg/webevents/raw-file/tip/touchevents.html W3C Touch Events editor's draft specification]
* [http://dvcs.w3.org/hg/webevents/raw-file/tip/touchevents.html W3C Touch Events editor's draft specification]
== Legend (remove if you like)  ==
{| class="fullwidth-table"
|-
| {{StatusHealthy|status=&nbsp;}}
| Healthy: feature is progressing as expected.
|-
| {{StatusBlocked|status=&nbsp;}}
| Blocked: feature is currently blocked.
|-
| {{StatusAtRisk|status=&nbsp;}}
| 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.
|}
__NOTOC__
[[Category:Features]] [[Category:Mobile]] [[Category:Firefox]] [[Category:Priority_1]] [[Category:Platform]] [[Category:UX]]

Latest revision as of 00:04, 13 October 2011

Please use "Edit with form" above to edit this page.

Status

Touch Events part 1: single-touch
Stage Shipped
Status `
Release target Firefox 6
Health OK
Status note `

{{#set:Feature name=Touch Events part 1: single-touch

|Feature stage=Shipped |Feature status=` |Feature version=Firefox 6 |Feature health=OK |Feature status note=` }}

Team

Product manager Thomas Arend
Directly Responsible Individual Matt Brubeck
Lead engineer Wes Johnson, Olli Pettay, Matt Brubeck
Security lead `
Privacy lead `
Localization lead `
Accessibility lead `
QA lead Martijn Wargers
UX lead `
Product marketing lead `
Operations lead `
Additional members `

{{#set:Feature product manager=Thomas Arend

|Feature feature manager=Matt Brubeck |Feature lead engineer=Wes Johnson, Olli Pettay, Matt Brubeck |Feature security lead=` |Feature privacy lead=` |Feature localization lead=` |Feature accessibility lead=` |Feature qa lead=Martijn Wargers |Feature ux lead=` |Feature product marketing lead=` |Feature operations lead=` |Feature additional members=` }}

Open issues/risks

  • bug 653009 - Make preventDefault for touch events compatible with WebKit/Opera

Stage 1: Definition

1. Feature overview

Expose touch events to content for better interaction with web pages and services, and compatibility with WebKit/Opera and existing web content.

2. Users & 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.

3. Dependencies

`

4. 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.

Non-goals

  • Expose multiple simultaneous touches to content (will be done in a part 2).
  • 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).

Stage 2: Design

5. Functional specification

`

6. User experience design

`

Stage 3: Planning

7. Implementation plan

`

8. Reviews

Security review

`

Privacy review

`

Localization review

`

Accessibility

`

Quality Assurance review

Operations review

`

Stage 4: Development

9. Implementation

  • bug 650339 - Allow access to UI on pages that consume touch events and prevent panning

Stage 5: Release

10. Landing criteria

` {{#set:Feature open issues and risks=* bug 653009 - Make preventDefault for touch events compatible with WebKit/Opera |Feature overview=Expose touch events to content for better interaction with web pages and services, and compatibility with WebKit/Opera and existing web content. |Feature users and 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.

|Feature dependencies=` |Feature 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.

|Feature non-goals=* Expose multiple simultaneous touches to content (will be done in a part 2).

  • 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).

|Feature functional spec=` |Feature ux design=` |Feature implementation plan=` |Feature security review=` |Feature privacy review=` |Feature localization review=` |Feature accessibility review=` |Feature qa review=* QA Test Plan |Feature operations review=` |Feature implementation notes=* bug 544614 - Tracking bug for touch events in Fennec

  • bug 650339 - Allow access to UI on pages that consume touch events and prevent panning

|Feature landing criteria=` }}

Feature details

Priority P1
Rank 999
Theme / Goal `
Roadmap Firefox Mobile
Secondary roadmap `
Feature list Mobile
Project `
Engineering team Mobile platform

{{#set:Feature priority=P1

|Feature rank=999 |Feature theme=` |Feature roadmap=Firefox Mobile |Feature secondary roadmap=` |Feature list=Mobile |Feature project=` |Feature engineering team=Mobile platform }}

Team status notes

  status notes
Products ` `
Engineering ` `
Security sec-review-unnecessary `
Privacy ` `
Localization ` `
Accessibility ` `
Quality assurance ` `
User experience ` `
Product marketing ` `
Operations ` `

{{#set:Feature products status=`

|Feature products notes=` |Feature engineering status=` |Feature engineering notes=` |Feature security status=sec-review-unnecessary |Feature security health=OK |Feature security notes=` |Feature privacy status=` |Feature privacy notes=` |Feature localization status=` |Feature localization notes=` |Feature accessibility status=` |Feature accessibility notes=` |Feature qa status=` |Feature qa notes=` |Feature ux status=` |Feature ux notes=` |Feature product marketing status=` |Feature product marketing notes=` |Feature operations status=` |Feature operations notes=` }}


Other documentation