smoothed result when browser skips input events

when browser fails to give input events evenly during continuous drag
input, we now generate virtual inputs to make extra pokes so the
resulting input is smooth.
merged