Bug 119507

Summary: Starting a momentum scroll while rubber banding can cause scrolling to jump back when the rubberband snaps
Product: WebKit Reporter: Tim Horton <thorton>
Component: Layout and RenderingAssignee: Beth Dakin <bdakin>
Status: RESOLVED FIXED    
Severity: Normal CC: andersca, bdakin, sam, simon.fraser, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
preliminary patch
buildbot: commit-queue-
Patch simon.fraser: review+

Description Tim Horton 2013-08-05 19:01:00 PDT
Steps to Reproduce:

1. Open a tall page.
2. Flick into the left margin and downwards, in an inverted L shape.

Expected:

The vertical momentum should decelerate gracefully and then scrolling should stop.

Actual:

The vertical momentum decelerates gracefully and then the page scrolls vertically back to the vertical position it was in when the momentum phase began.

This is a bit hard to describe and reproduce for the first time, but once you've done it once it's hard to stop.

I have a fix.
Comment 1 Radar WebKit Bug Importer 2013-08-05 19:07:07 PDT
<rdar://problem/14655893>
Comment 2 Tim Horton 2013-08-06 13:47:04 PDT
Created attachment 208216 [details]
preliminary patch

preliminary patch, but it changes the behavior when you rubberband during the momentum phase too much (flick up off the top of the page with the patch applied vs. not, and you'll see the view rubberbands much further before it)
Comment 3 Build Bot 2013-08-21 11:05:59 PDT
Comment on attachment 208216 [details]
preliminary patch

Attachment 208216 [details] did not pass win-ews (win):
Output: http://webkit-queues.appspot.com/results/1525398
Comment 4 Beth Dakin 2013-12-17 22:34:08 PST
Created attachment 219507 [details]
Patch

Here is a different approach.
Comment 5 Beth Dakin 2013-12-18 12:56:07 PST
Thanks, Simon! http://trac.webkit.org/changeset/160791