Since touch events have clientX/clientY properties but no offsetX/offsetY properties, we still need to use something like TransformAwareTranslator.
The previous TransformAwareTranslator would add, move, and measure a pseudo hidden component, causing awful DOM layout thrashing.
In the new approach, we compute the a cumulative CSS3 transform matrix of the root element ancestors up to <body> and apply it directly to touch event clientX/clientY values.
Since touch events have
clientX
/clientY
properties but nooffsetX
/offsetY
properties, we still need to use something likeTransformAwareTranslator
.The previous
TransformAwareTranslator
would add, move, and measure a pseudo hidden component, causing awful DOM layout thrashing.In the new approach, we compute the a cumulative CSS3 transform matrix of the root element ancestors up to
<body>
and apply it directly to touch eventclientX
/clientY
values.