Precision touch for precise gestures
A change landed in the implementation of Chrome's TouchEvents as of M37 (stable in 08/2014), which alters the reported co-ordinates to floats instead of integers.
The result of this change means you have a smoother response to the users gestures as it gives you higher accuracy of the fingers position.
Using Rick Byers' demo, you can see what a huge difference this can make when slowly drawing a swirl.
This will only make affect screens which have a pixel density greater than 1. To understand why, let's step through an example.
Imagine you have a 3x3 grid of CSS pixels and the screen density is 3, meaning we have a grid of 9x9 physical pixels and the user gestures from the top left to the bottom right.
Originally, we were rounding the touches position to the nearest CSS pixel, which meant in this gesture you would end up with the following steps.
We miss out on drawing any of the intermediate steps that the physical pixels could show as the user moves their finger.
Now that we've switched to floats, our gesture can look like this.
In most cases, this won't require any changes in your code, but does mean any animations or movements you do as a result of TouchEvents, will be smoother, especially for slow gestures.
There is also plan to bring this improvement to mobile Safari as well: https://bugs.webkit.org/show_bug.cgi?id=133180.