This is a regression from:
Best way to handle this is to revert all the native platform code, since it was all correct and just do the minimum line clamping at DOM event generation time. That way any code in WebCore that uses wheel events natively (without exposing them to the DOM) will be accurate. This could be important when we move off NSScrollView in WebKit2 and end up using this event for wheeling.
Another possibility is to use an accumulator strategy at the DOM level and send the event once you have moved 1 full line. This would still result in no movement in response to small events until the threshold was crossed though.
I am guessing a minimum line movement of 1, although it will result in slightly-too-rapid scrolling, will probably work best, but really we should just be evangelizing the Web sites, as what we were doing in Safari 4 wasn't wrong.
Created attachment 58410 [details]
This is just a straight-up backout of the fix for 29601. I will be reopening that bug once this lands.
Comment on attachment 58410 [details]
As I hang my head in shame, I acknowledge that the lack of this code is better than its presence, despite my earlier review.
Attachment 58410 [details] did not build on mac:
Build output: http://webkit-commit-queue.appspot.com/results/3230112
Fixed in r60974.