Impulse fling target updates as ease in-out.
Context - This CL is specific to Impulse-based-scrolling [1]. Design doc summary is that if the flag is turned on, scroll animations will use a different curve. (i.e the new curve is also Bezier based but with different control points). The CL that added this new curve is crrev.com/c/1901628. Problem - The new curve causes minor jerks for flings on non-PTP touchpads that send WM_MOUSEWHEEL(s). The reason this happens is because the steep initial slope of the curve. Fix - Start off as an impulse based curve but when subsequent GSU(s) come in, update the curve to the old ease in/out style curve. That way, individual mousewheel ticks, keyboard presses, scrollbar clicks will still feel impulse based and the fling will be smooth. Misc - Why can’t we just fix this by changing the control points on the new Bezier curve? If we do this, we’d be changing the personality of the Impulse curve itself which defeats the purpose of adding this new curve in the first place. [1] https://docs.google.com/document/d/1A3VmlY3ZR6UtJt3QQ5uuqaCOgPjV6vCMxvkpvPBe0g0/edit#heading=h.ji0n9h8v0xez Bug: 1157698 Change-Id: I91b90080f6eac4c268f443daf2345716374a1927 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2553869 Commit-Queue: Rahul Arakeri <arakeri@microsoft.com> Reviewed-by:Robert Flack <flackr@chromium.org> Cr-Commit-Position: refs/heads/master@{#836344}
Showing
Please register or sign in to comment