Gecko/Touch: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(other browser status)
(update planning section)
Line 1: Line 1:
== 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:
This table summarizes some of the broad features related to touch input on the web, and their implementation status on different Gecko platforms:


Line 19: Line 21:
| Windows metro  || yes          || yes (disabled)        || yes                  || Gecko APZC            || Gecko
| Windows metro  || yes          || yes (disabled)        || yes                  || Gecko APZC            || Gecko
|}
|}
== Status in other browsers ==


This table lists support by other browsers as of December 2014:
This table lists support by other browsers as of December 2014:
Line 34: Line 38:
| Safari || ✓ ||  ||   
| Safari || ✓ ||  ||   
|}
|}
== References ==


Standards:
Standards:
Line 41: Line 47:
** touch-action is part of the Pointer Events spec (shipped by Chrome, IE Desktop, IE Mobile)
** touch-action is part of the Pointer Events spec (shipped by Chrome, IE Desktop, IE Mobile)


Notes:
== Planning ==
 
* Just implementing Touch Events and touch-action (without Pointer Events) would allow efficient Pointer Events polyfills, and other developer benefits (including ability to improve responsiveness of touch UIs).  This is what Chrome is currently doing.
* Implementing APZC on desktop would allow desktop Firefox to share much of the Touch Events / Pointer Events / touch-action code with Firefox OS.
** Similarly, porting Firefox for Android to the Gecko APZC and meta viewport code would allow increased code sharing with Firefox OS.


Current work:
Current work:


* '''Windows metro''': Finish Pointer Events / touch-action as reference implementation for W3C spec (MS Open Tech).
* '''Mac''': Use async pan/zoom (gfx).
* '''Windows desktop''': Fix and enable Touch Events, and implement Pointer Events / touch-action (MS Open Tech, Platform Integration?).
* '''Windows desktop''': Fix and enable Touch Events, and implement Pointer Events + touch-action (MS Open Tech, Platform Integration?).
* '''Firefox OS''': Implement and enable pointer events / touch-action (MS Open Tech?).


Possible future priorities:
Possible future work:


* '''Firefox OS''': Implement and enable pointer events and/or touch-action (MS Open Tech?).
* '''Android''': Implement Pointer Events and/or touch-action.
* '''Android''': Unify Android and Gecko APZC and viewport code.
* '''Android''': Unify Android and Gecko APZC and viewport code.
* '''Android''': Implement Pointer Events / touch-action.
* '''Windows/Linux desktop''': Use async pan/zoom ({{bug|apzc-desktop}}).
* '''Mac''': Implement async pan/zoom for trackpad gestures.
* '''Windows desktop''': Implement async pan/zoom for touch-screen and trackpad gestures.
* '''Platform''': Implement CSS Device Adaptation to rationalize mobile viewport code ({{bug|747754}}).
* '''Platform''': Implement CSS Device Adaptation to rationalize mobile viewport code ({{bug|747754}}).
Notes:
* Just implementing Touch Events and touch-action (without Pointer Events) would allow efficient Pointer Events polyfills, and other developer benefits (including ability to improve responsiveness of touch UIs).  This is what Chrome is currently doing.
* Implementing APZC on desktop would allow desktop Firefox to share much of the Touch Events / Pointer Events / touch-action code with Firefox OS.
** Similarly, porting Firefox for Android to the Gecko APZC and meta viewport code would allow increased code sharing with Firefox OS.

Revision as of 16:31, 9 December 2014

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 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 (disabled) no no no
Mac no mouse only (disabled) no no (bug 1011833) no
Windows desktop disabled (bug win-touch-issues) mouse only (disabled) no (bug 1001440) no 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)

Planning

Current work:

  • Mac: Use async pan/zoom (gfx).
  • Windows desktop: Fix and enable Touch Events, and implement Pointer Events + touch-action (MS Open Tech, Platform Integration?).

Possible future work:

  • Firefox OS: Implement and enable pointer events and/or touch-action (MS Open Tech?).
  • Android: Implement Pointer Events and/or touch-action.
  • Android: Unify Android and Gecko APZC and viewport code.
  • Windows/Linux desktop: Use async pan/zoom (bug apzc-desktop).
  • Platform: Implement CSS Device Adaptation to rationalize mobile viewport code (bug 747754).

Notes:

  • Just implementing Touch Events and touch-action (without Pointer Events) would allow efficient Pointer Events polyfills, and other developer benefits (including ability to improve responsiveness of touch UIs). This is what Chrome is currently doing.
  • Implementing APZC on desktop would allow desktop Firefox to share much of the Touch Events / Pointer Events / touch-action code with Firefox OS.
    • Similarly, porting Firefox for Android to the Gecko APZC and meta viewport code would allow increased code sharing with Firefox OS.