Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(373)

Issue 296003011: Fix event passing to overlay scrollbars when over a plugin (Closed)

Created:
6 years, 7 months ago by raymes
Modified:
6 years, 6 months ago
CC:
blink-reviews, blink-reviews-events_chromium.org, blink-reviews-rendering, bokan, chrome-apps-syd-reviews_chromium.org, dglazkov+blink, eae+blinkwatch, jamesr, jchaffraix+rendering, leviw+renderwatch, pdr., piman, rune+blink, weiliangc, zoltan1
Base URL:
https://chromium.googlesource.com/chromium/blink.git@master
Visibility:
Public.

Description

Fix event passing to overlay scrollbars when over a plugin There are two fixes here: 1) Previously frame scrollbars never had a chance to handle an event if an element or event handler swallowed the event. So, for example, if a mousedown event listener was added to the window and the handler called preventDefault(), then the frame scrollbar would never receive mouse clicks. This change always gives frame scrollbars an opportunity to handle the event. This would also affect elements (such as plugins) that lie underneath overlay scrollbars and swallowed events. 2) Previously if an overlay scrollbar was above a plugin, clicking on the scrollbar could trigger mouse capture on the plugin, which would interfere with the scrollbar receiving events. This change prevents mouse capture on a plugin from starting if the event was initiated above a scrollbar. BUG=369898, 358248 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=175857

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Total comments: 2

Patch Set 4 : #

Patch Set 5 : #

Patch Set 6 : #

Total comments: 18

Patch Set 7 : #

Patch Set 8 : #

Patch Set 9 : #

Total comments: 1

Patch Set 10 : #

Total comments: 9

Patch Set 11 : #

Patch Set 12 : #

Patch Set 13 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+179 lines, -20 lines) Patch
M LayoutTests/TestExpectations View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +1 line, -0 lines 0 comments Download
A LayoutTests/fast/scrolling/scrollbar-prevent-default.html View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +65 lines, -0 lines 0 comments Download
A LayoutTests/fast/scrolling/scrollbar-prevent-default-expected.txt View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +13 lines, -0 lines 0 comments Download
A LayoutTests/plugins/overlay-scrollbar-mouse-capture.html View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +66 lines, -0 lines 0 comments Download
A LayoutTests/plugins/overlay-scrollbar-mouse-capture-expected.txt View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +14 lines, -0 lines 0 comments Download
M Source/core/page/EventHandler.h View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M Source/core/page/EventHandler.cpp View 1 2 3 4 5 6 7 8 2 chunks +13 lines, -15 lines 0 comments Download
M Source/web/WebViewImpl.cpp View 1 2 3 4 5 6 1 chunk +6 lines, -4 lines 0 comments Download

Messages

Total messages: 32 (0 generated)
raymes
Starting with japhet@ - please help me find the right reviewer (jamesr@ is OOO). I ...
6 years, 7 months ago (2014-05-22 03:15:53 UTC) #1
ojan
Rick, this looks like your area of expertise, yes?
6 years, 7 months ago (2014-05-22 04:15:57 UTC) #2
Rick Byers
I don't have a ton of context on scrollbars, but I can review. /cc bokan ...
6 years, 7 months ago (2014-05-22 13:53:35 UTC) #3
raymes
I agree that it seems like the hit test should probably return the frame scrollbar, ...
6 years, 7 months ago (2014-05-23 00:18:36 UTC) #4
Rick Byers
On 2014/05/23 00:18:36, raymes wrote: > I agree that it seems like the hit test ...
6 years, 7 months ago (2014-05-27 19:48:12 UTC) #5
weiliangc
On Tue, May 27, 2014 at 3:48 PM, <rbyers@chromium.org> wrote: > On 2014/05/23 00:18:36, raymes ...
6 years, 7 months ago (2014-05-27 20:51:24 UTC) #6
raymes
Rick, thanks for the detailed explanation and advice, very helpful! Writing the tests helped to ...
6 years, 6 months ago (2014-05-30 03:59:14 UTC) #7
Rick Byers
Raymes, this is great! Seems quite rational now, and I love the tests and little ...
6 years, 6 months ago (2014-05-31 04:32:32 UTC) #8
raymes
https://codereview.chromium.org/296003011/diff/100001/LayoutTests/fast/scrolling/scrollbar-prevent-default.html File LayoutTests/fast/scrolling/scrollbar-prevent-default.html (right): https://codereview.chromium.org/296003011/diff/100001/LayoutTests/fast/scrolling/scrollbar-prevent-default.html#newcode9 LayoutTests/fast/scrolling/scrollbar-prevent-default.html:9: testRunner.waitUntilDone(); On 2014/05/31 04:32:33, Rick Byers wrote: > I ...
6 years, 6 months ago (2014-06-03 00:09:35 UTC) #9
Rick Byers
Looks great, LGTM! Please update your CL description for the current design, eg. ".. to ...
6 years, 6 months ago (2014-06-03 14:22:46 UTC) #10
Rick Byers
On 2014/06/03 14:22:46, Rick Byers wrote: > Looks great, LGTM! > > Please update your ...
6 years, 6 months ago (2014-06-03 14:23:42 UTC) #11
raymes
On 2014/06/03 14:23:42, Rick Byers wrote: > On 2014/06/03 14:22:46, Rick Byers wrote: > > ...
6 years, 6 months ago (2014-06-04 02:42:31 UTC) #12
pals
Thanks for doing this. You could add the layout test from my CL https://codereview.chromium.org/309793003/ which ...
6 years, 6 months ago (2014-06-04 05:18:22 UTC) #13
raymes1
This is already tested in LayoutTests/fast/scrolling/scrollbar-prevent-default.html
6 years, 6 months ago (2014-06-04 05:20:23 UTC) #14
pals
On 2014/06/04 05:20:23, raymes1 wrote: > This is already tested in > LayoutTests/fast/scrolling/scrollbar-prevent-default.html Oh. I ...
6 years, 6 months ago (2014-06-04 06:31:21 UTC) #15
Rick Byers
On 2014/06/04 02:42:31, raymes wrote: > On 2014/06/03 14:23:42, Rick Byers wrote: > > On ...
6 years, 6 months ago (2014-06-05 20:55:18 UTC) #16
Rick Byers
https://codereview.chromium.org/296003011/diff/160001/LayoutTests/TestExpectations File LayoutTests/TestExpectations (right): https://codereview.chromium.org/296003011/diff/160001/LayoutTests/TestExpectations#newcode1078 LayoutTests/TestExpectations:1078: crbug.com/267206 [ Mavericks Lion MountainLion Retina ] plugins/overlay-scrollbar-mouse-capture.html [ ...
6 years, 6 months ago (2014-06-05 20:55:30 UTC) #17
raymes
Thanks, I'll move it up. The CL that broke this was https://src.chromium.org/viewvc/blink?view=revision&revision=155279 (Enable composited scrollbars ...
6 years, 6 months ago (2014-06-06 00:00:08 UTC) #18
Rick Byers
On 2014/06/06 00:00:08, raymes wrote: > Thanks, I'll move it up. > > The CL ...
6 years, 6 months ago (2014-06-06 00:05:26 UTC) #19
ojan
Where is the code for doing this behavior for elements? It obviously makes sense for ...
6 years, 6 months ago (2014-06-06 02:02:56 UTC) #20
Rick Byers
On 2014/06/06 02:02:56, ojan wrote: > Where is the code for doing this behavior for ...
6 years, 6 months ago (2014-06-06 02:08:41 UTC) #21
Rick Byers
On 2014/06/06 02:08:41, Rick Byers wrote: > On 2014/06/06 02:02:56, ojan wrote: > > Where ...
6 years, 6 months ago (2014-06-06 02:16:34 UTC) #22
raymes
> Where is the code for doing this behavior for elements? It obviously makes sense ...
6 years, 6 months ago (2014-06-06 04:47:40 UTC) #23
ojan
lgtm
6 years, 6 months ago (2014-06-07 02:23:44 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/raymes@chromium.org/296003011/220001
6 years, 6 months ago (2014-06-07 02:24:16 UTC) #25
ojan
Matching FF and IE and our element handling is compelling to me.
6 years, 6 months ago (2014-06-07 02:24:26 UTC) #26
commit-bot: I haz the power
FYI, CQ is re-trying this CL (attempt #1). The failing builders are: mac_blink_rel on tryserver.blink ...
6 years, 6 months ago (2014-06-07 03:02:27 UTC) #27
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 6 months ago (2014-06-07 03:42:43 UTC) #28
commit-bot: I haz the power
Try jobs failed on following builders: mac_blink_rel on tryserver.blink (http://build.chromium.org/p/tryserver.blink/builders/mac_blink_rel/builds/10527)
6 years, 6 months ago (2014-06-07 03:42:44 UTC) #29
raymes
The CQ bit was checked by raymes@chromium.org
6 years, 6 months ago (2014-06-10 04:06:43 UTC) #30
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/raymes@chromium.org/296003011/240001
6 years, 6 months ago (2014-06-10 04:08:37 UTC) #31
commit-bot: I haz the power
6 years, 6 months ago (2014-06-10 05:13:59 UTC) #32
Message was sent while issue was closed.
Change committed as 175857

Powered by Google App Engine
This is Rietveld 408576698