Firefox/Projects/Multitouch: Difference between revisions

no edit summary
No edit summary
Line 1: Line 1:
== Overview ==
= Pitch =
This project aims to improve Firefox support for touchscreen devices. These improvements include making the browser experience better for users of touch screens (on desktop and mobile) and making it possible for webpages to make use of this new form of user input.
This project aims to improve Firefox support for touchscreen devices. These improvements include making the browser experience better for users of touch screens (on desktop and mobile) and making it possible for webpages to make use of this new form of user input.


Main bugs:
= Goals =
* {{bug|548100}} Tracking bug to everything related to touch
* Allow users to interact with the browser via touchscreens
* {{bug|508906}} Bug to implement a multitouch API via DOM Events
* Provide good usability for surfing the web
* Feature a new form of input method and allow web developers to make use of it
* Support this API in Desktop and Mobile


=== UX front ===
= Non Goals =
* Implement advanced form of interactions such as custom gestures
* Alter any behavior for non-touchscreen users
 
= Status =
* IN FLIGHT
** project lead: felipe
** project members:
** started implementation, working on two fronts
** tracking bugs: {{bug|548100}}
 
== UX front ==


Some bugs:
Some bugs:
Line 13: Line 26:
* {{bug|548005}} – Browser zoom should stay centered when coordinates are available
* {{bug|548005}} – Browser zoom should stay centered when coordinates are available
* {{bug|548012}} – Browser zoom should be cancelable to be handled by webpage
* {{bug|548012}} – Browser zoom should be cancelable to be handled by webpage
* {{bug|549446}} - Possibility to hide brower's scrollbars


(More on the tracking bug)
== Multitouch API front ==
 
 
 
 
=== Multitouch API front ===


* {{bug|508906}} [Win7] {{bug|544614}} Fennec
* {{bug|508906}} [Win7] {{bug|544614}} Fennec
Line 30: Line 39:
* Thinking on how to deal with Windows 7 limitation that we cannot get gestures and raw data at the same time
* Thinking on how to deal with Windows 7 limitation that we cannot get gestures and raw data at the same time


- Working on plan of steps around these issues


=== Plan  ===
= Timeline / Milestones =


* Work on our events implementation for desktop and mobile to get them close to a possible spec (following smaug's proposal?)  
The following set of steps represent the main plan to be able to ship the new API by taking into account the 2 issues above
 
* Work on our events implementation for desktop and mobile to get them close to a possible spec (following smaug's proposal?)
* Get rid of the manual document.multitouchData switch and work on switching modes when the page requests any touch events  
* Get rid of the manual document.multitouchData switch and work on switching modes when the page requests any touch events  
** This will deactivate page scrolling and win7 gesture recognition  
** This will deactivate page scrolling and win7 gesture recognition  
* '''[LAND 1]''' Deliver the raw events input first
* '''[LANDING 1]''' Deliver the raw events input first


*Check on using windows gesture processors or implement our own gesture engine  
*Check on using windows gesture processors or implement our own gesture engine  
*[LAND 2] Deliver the gesture events
*[LANDING 2] Deliver the gesture events


*Re-implement [kinetic] panning on our engine for the pages using the touch events  
*Re-implement [kinetic] panning on our engine for the pages using the touch events  
*[LAND 3] Deliver panning on our engine
*[LANDING 3] Deliver panning on our engine


<br> Note 1: for pages that will not make use of the touch apis, nothing will change, and we will continue to use window's own gesture and scrolling processors. If, after LAND 3 or later we think our own stack is good enough to replace windows's one we can make the full switch  
 
Note 1: for pages that will not make use of the touch apis, nothing will change, and we will continue to use window's own gesture and scrolling processors. If, after LAND 3 or later we think our own stack is good enough to replace windows's one we can make the full switch  


Note 2: Most demos out there related to touch (e.g. [http://scripty2.com/demos/touch/]) never combine it with a page with scrolling, so disabling it as a first step doesn't seem to be a big problem.
Note 2: Most demos out there related to touch (e.g. [http://scripty2.com/demos/touch/]) never combine it with a page with scrolling, so disabling it as a first step doesn't seem to be a big problem.
= Delivery =
* TBD
= Constraints =
* TBD
= Dependencies =
* Most of the work right now is focused on Win7 only for being the only OS to provide a standard API for multitouch
= Testing =
* TBD  - We would need the regular testing schemes for events, plus some manual testing or simulation of multitouch events from the OS
* [perf]
* [compatibility]
* [security]
= Related Projects =
* [Firefox/Projects/Multitouch Polish|Multitouch Polish] - old project page
* Windows 7 features
Confirmed users
371

edits