This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 20311 - Clarify touch-action is only looked at during pointerdown
Summary: Clarify touch-action is only looked at during pointerdown
Status: RESOLVED FIXED
Alias: None
Product: PointerEventsWG
Classification: Unclassified
Component: Pointer Events specification (show other bugs)
Version: unspecified
Hardware: PC Windows NT
: P2 normal
Target Milestone: ---
Assignee: Jacob Rossi [MSFT]
QA Contact: Pointer Events Bugzilla list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-12-09 00:00 UTC by Jacob Rossi [MSFT]
Modified: 2013-01-12 14:58 UTC (History)
4 users (show)

See Also:


Attachments

Description Jacob Rossi [MSFT] 2012-12-09 00:00:34 UTC
You’re absolutely right.  The intended design is that you only care about the value of touch-action on the target element of the pointerdown event. After that, it doesn’t matter what the value of touch-action is on elements you drag over. 

Additionally, I think it should be clarified that the value of touch-action is checked prior to dispatching pointerdown (e.g. modifications to touch-action during the event won’t be honored for that pointer). This, of course, is fundamental to ensure the performance optimizations for threaded scrolling that touch-action is intended to enable.

-Jacob 

From: Daniel Freedman [mailto:dfreedm@google.com] 
Sent: Friday, December 7, 2012 2:34 PM
To: public-pointer-events@w3.org
Subject: Clarification of event generation with respect to touch-action

In section 6.1, the description of "none" for touch-action states that touches that begin on those elements will not perform default actions.
However, it is not stated if events may still be generated after the touch leaves that element with touch-action: none.

In the MSPointerEvent implementation, further MSPointerMoves are dispatched to elements that can have touch-action: auto or touch-action: inherit. Is this what is expected for PointerEvents as well? Can this be made more explicit?

Thanks!
Comment 1 Jacob Rossi [MSFT] 2013-01-05 00:03:43 UTC
I believe there’s some language missing from the spec to clear things up. Here’s perhaps a more concise description of the behavior (emphasis on the last sentence):

When a user touches an element, that element's -ms-touch-action property determines the default touch behaviors permitted for that contact, like panning or zooming. The touch behavior is then performed on the nearest ancestor element that is capable of that behavior, unless an intermediate ancestor element specifies that the behavior is not permitted.

Would adding that clear things up?
Comment 2 Arthur Barstow 2013-01-05 12:57:28 UTC
A nit here: I think you want to remove the "ms" prefix for touch-action.
Comment 3 Rick Byers 2013-01-08 04:51:56 UTC
That sounds reasonable to me, and is certainly an important detail that was missing.
Comment 4 Daniel Freedman 2013-01-10 21:52:16 UTC
That sounds good to me. Thanks!
Comment 5 Jacob Rossi [MSFT] 2013-01-12 14:58:30 UTC
Great, I've made this change.

https://dvcs.w3.org/hg/pointerevents/rev/dfe657176445
Resolution: http://www.w3.org/2013/01/08-pointerevents-minutes.html