The current distance function is a combination of two functions. One measuring the distance from the hot-spot in the touch-area to the centerline of the target, and one measuring how much of the target is covered.
The distance to the center-line was originally used instead of just the distance to the target, to make it easier to hit small targets near big targets. The very same feature is however also what measing how much of the target is covered is good at. Using the distance to center-line is therefore redundant now, and can be replaced with the simpler 'distance the hot-spot needs to be adjusted'.
Since 'distance the hot-spot needs to be adjusted' is also used later to choose between targets that have been fully covered, it could simply be added making the switch from one to the other in the hybrid distance function more gradual.
This greatly simplies a lot of code, and means several functions can be removed as dead code, and without any regressions in touchadjustment cases.
Created attachment 163632 [details]
Created attachment 163633 [details]
Forgot a hunk in the patch
Comment on attachment 163633 [details]
Clearing flags on attachment: 163633
Committed r129108: <http://trac.webkit.org/changeset/129108>
All reviewed patches have been landed. Closing bug.