- From: Jacob Rossi <Jacob.Rossi@microsoft.com>
- Date: Tue, 21 Oct 2014 04:48:52 +0000
- To: "Patrick H. Lauke" <redux@splintered.co.uk>, "public-pointer-events@w3.org" <public-pointer-events@w3.org>
This is a case of "do as IE spec'd not as IE do". :-) The fact that click happens last in IE is an artifact of a naïve double-tap-to-zoom implementation. As we all know, double-tap-zoom delays the click (~300ms). When we implemented this, we just defer the event on a timer (which is cancelled if a second tap happens fast enough). But what other browsers do (and is *very* important for compat, as it turns out!) is pause the event stream (e.g. defer the click & out/leave events). In fact, the ordering is fixed if you disable double-tap-zoom via touch-action: http://jsbin.com/jadohisegu/1/edit We're changing this to match the spec (and other browsers WRT the mouse events which also have this issue) whether double-tap-zoom is enabled or not. So I think we can resolve this spec bug. -Jacob -----Original Message----- From: Patrick H. Lauke [mailto:redux@splintered.co.uk] Sent: Thursday, October 16, 2014 5:00 PM To: public-pointer-events@w3.org Subject: "click" in the example event sequences in 11.2 Mapping for devices that do not support hover I know that in the main "11. Compatibility Mapping with Mouse Events" https://dvcs.w3.org/hg/pointerevents/raw-file/tip/pointerEvents.html#compatibility-mapping-with-mouse-events section we have a fairly clear note about "The relative ordering of these high-level events (click, contextmenu, focus, blur, etc.) with pointer events is undefined and varies between user agents" But in IE10/IE11, "click" seems to always be the last event fired (after pointerleave) following a tap on a touchscreen, while in the informative example sequence in https://dvcs.w3.org/hg/pointerevents/raw-file/tip/pointerEvents.html#mapping-for-devices-that-do-not-support-hover we list "click" as coming after "pointerup". As IE is currently the only browser to have PE support enabled, I wonder if the example sequence should reflect what it's doing? Or, alternatively - if we feel that "click" should logically be listed after pointerup, and consider IE's firing of click after "mouseleave" to be a UA-specific quirk - should we add a tiny note right next to it reminding the reader that the position of click may vary between UAs? P -- Patrick H. Lauke www.splintered.co.uk | https://github.com/patrickhlauke http://flickr.com/photos/redux/ | http://redux.deviantart.com twitter: @patrick_h_lauke | skype: patrick_h_lauke
Received on Tuesday, 21 October 2014 04:49:22 UTC