Bug 113441 - Fling gestures incorrectly bubble across iframes
Summary: Fling gestures incorrectly bubble across iframes
Status: RESOLVED WONTFIX
Alias: None
Product: WebKit
Classification: Unclassified
Component: UI Events (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: David Bokan
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-03-27 14:28 PDT by David Bokan
Modified: 2013-04-08 16:30 PDT (History)
1 user (show)

See Also:


Attachments
WIP, not for review (1.42 KB, patch)
2013-03-27 14:31 PDT, David Bokan
no flags Details | Formatted Diff | Diff
WIP, not for review (6.62 KB, patch)
2013-04-03 07:51 PDT, David Bokan
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description David Bokan 2013-03-27 14:28:54 PDT
Steps to reproduce:
1. Fling a scrollable iframe so that it reaches the end

What happens:
Once the iframe is scrolled fully, any remaining scrolls generated by the fling will be propagated to its parent frame/page.

What should happen instead:
The fling should stop once the iframe has scrolled fully.
Comment 1 David Bokan 2013-03-27 14:31:14 PDT
Created attachment 195396 [details]
WIP, not for review
Comment 2 Terry Anderson 2013-03-28 12:32:33 PDT
(In reply to comment #1)
> Created an attachment (id=195396) [details]
> WIP, not for review

This patch makes a lot of sense. Summarizing a chat I had with David, it forces handleGestureScrollUpdate() to always return true when the event type is GestureScrollUpdateWithoutPropagation, which indicates that the event was handled even if no scrolling happened. As a result, the parent frame's call to passGestureEventToWidgetIfPossible() at line 2715 evaluates to true and the parent's scrolling code is bypassed. This is exactly what we would like to have happen when propagation is prohibited.
Comment 3 David Bokan 2013-04-03 07:51:54 PDT
Created attachment 196353 [details]
WIP, not for review