Touch-action hit testing

Hi,
The touch-action processing model (
http://www.w3.org/TR/pointerevents/#the-touch-action-css-property) says
that the touch-action property is restricted to block-level elements -
which simplifies implementations a little.

But it indicates that hit testing still needs to be done against inline
elements since they may flow outside their containing block.  In particular
"then examine the touch-action property of each element between the hit
tested element and the element with the default touch behavior".

So for example, in this test http://jsbin.com/AROLEjEH/1/edit, touching the
blue text outside the box should not scroll (since the hit-tested element
is the span, and it has a block-level ancestor with  touch-action: none).

But my understanding of the whole point of the block-level restriction was
to simplify the hit testing.  So we technically aren't getting that
simplification the way the spec is worded today.

Not surprisingly, IE does NOT conform to the spec here.  It appears to only
hit test against the block-level elements (at least in the simple scenarios
I tried).

This distinction makes a huge difference for implementations (and impacts
future compatibility).  Unfortunately I think we need to make a normative
change to the spec here to say explicitly that hit testing occurs only on
block-level elements (and just passes through any inline elements, as if
they had 'pointer-events: none').

Rick

Received on Thursday, 14 November 2013 20:17:46 UTC