Improved pan gesture prediction
[problem] A bigger prediction interpolation makes the prediction result less usable.
[cause] The changing velocity of pan gesture could cause overshoot for the prediction
(and sometimes in the wrong direction), which makes the scrolling jerky.
[solution] Dynamically adpat the prediction interpolation to the change of pan velocity.
When overshoot is detected, alter any prediction in the wrong direction and
decrease the prediction interpolation so that it doesn't overshoot as easily
in the next frame.
Change-Id: I71afc4d601c865785a1629a2c186d45547e6117c