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

Issue 2785533003: Animated scroll shouldn't consume unhandled scrolls for OOPIFs. (Closed)

Created:
3 years, 8 months ago by wjmaclean
Modified:
3 years, 8 months ago
CC:
cc-bugs_chromium.org, chromium-reviews, kenrb, site-isolation-reviews_chromiuim.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Animated scroll shouldn't require main-frame for OOPIFs. At present the animated scroll code for mouse wheels will mark as SCROLL_ON_IMPL any attempt to scroll if there is no scrollable layer, and in an OOPIF this causes the GestureScrollUpdate to be marked as consumed when in fact it isn't. In turn, this prevents the GestureScrollUpdate from bubbling to the embedder. This CL fixes LayerTreeHostImpl::ScrollAnimated() to corrently report such GestureScrollUpdate events as ignored, so they can bubble to the embedder. This CL has no behavioral changes for Mac, as it does not support smooth scrolling. BUG=701178 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel Review-Url: https://codereview.chromium.org/2785533003 Cr-Commit-Position: refs/heads/master@{#465828} Committed: https://chromium.googlesource.com/chromium/src/+/a755e30003e89da8ed1ee6f9e4e039acb395e3af

Patch Set 1 #

Patch Set 2 : Remove check for OOPIF in LTHI, fix DCHECK issue. #

Patch Set 3 : Fix test compilation. #

Patch Set 4 : Fix handling of scroll state in test mocks. #

Patch Set 5 : Fix test. #

Patch Set 6 : Rebase to master@{#463250}. #

Patch Set 7 : Ooops, uncomment test fix! #

Patch Set 8 : More rebase fixes. #

Patch Set 9 : Plumb subframe flag to compositor. #

Patch Set 10 : Fix Android compile. #

Total comments: 10

Patch Set 11 : Address suggestions, adjust timeout. #

Patch Set 12 : Disable scroll bubbling test on Android. #

Total comments: 2

Patch Set 13 : Remove browser-side DCHECK mods. #

Patch Set 14 : Rebase to master@{#465268}. #

Total comments: 12

Patch Set 15 : Address nits, add comments. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+55 lines, -4 lines) Patch
M cc/test/layer_tree_test.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +2 lines, -0 lines 0 comments Download
M cc/test/stub_layer_tree_host_client.h View 1 2 3 4 5 6 7 8 13 1 chunk +2 lines, -0 lines 0 comments Download
M cc/test/stub_layer_tree_host_client.cc View 1 2 3 4 5 6 7 8 13 1 chunk +4 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_host_client.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +4 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_host_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +8 lines, -0 lines 0 comments Download
M cc/trees/layer_tree_settings.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +4 lines, -0 lines 0 comments Download
M content/browser/renderer_host/compositor_impl_android.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +1 line, -0 lines 0 comments Download
M content/browser/renderer_host/compositor_impl_android.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +4 lines, -0 lines 0 comments Download
M content/renderer/gpu/render_widget_compositor.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 chunks +2 lines, -0 lines 0 comments Download
M content/renderer/gpu/render_widget_compositor.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 3 chunks +9 lines, -2 lines 0 comments Download
M content/renderer/render_widget.cc View 1 2 3 4 5 6 7 8 13 1 chunk +2 lines, -1 line 0 comments Download
M content/test/layouttest_support.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/platform/testing/WebLayerTreeViewImplForTesting.h View 1 2 3 4 5 6 7 8 13 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/testing/WebLayerTreeViewImplForTesting.cpp View 1 2 3 4 5 6 7 8 13 1 chunk +4 lines, -0 lines 0 comments Download
M ui/compositor/compositor.h View 1 2 3 4 5 6 7 8 13 1 chunk +2 lines, -0 lines 0 comments Download
M ui/compositor/compositor.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +4 lines, -0 lines 0 comments Download

Depends on Patchset:

Messages

Total messages: 104 (72 generated)
wjmaclean
pdr@ - Does this seem sane to you?
3 years, 8 months ago (2017-03-29 14:06:17 UTC) #12
pdr.
On 2017/03/29 at 14:06:17, wjmaclean wrote: > pdr@ - Does this seem sane to you? ...
3 years, 8 months ago (2017-03-29 16:14:51 UTC) #13
wjmaclean
On 2017/03/29 16:14:51, pdr. wrote: > On 2017/03/29 at 14:06:17, wjmaclean wrote: > > pdr@ ...
3 years, 8 months ago (2017-03-29 20:29:29 UTC) #14
wjmaclean
creis@chromium.org: Please review changes in content/ sahel@ please verify the changes in MouseWheelEventQueue are OK. ...
3 years, 8 months ago (2017-04-10 13:56:15 UTC) #34
sahel
On 2017/04/10 13:56:15, wjmaclean wrote: > mailto:creis@chromium.org: Please review changes in > > content/ > ...
3 years, 8 months ago (2017-04-10 15:44:19 UTC) #41
Charlie Reis
On 2017/04/10 13:56:15, wjmaclean wrote: > mailto:creis@chromium.org: Please review changes in > > content/ I'm ...
3 years, 8 months ago (2017-04-10 16:16:19 UTC) #44
Charlie Reis
[CC kenrb, site-isolation-reviews]
3 years, 8 months ago (2017-04-10 16:17:03 UTC) #45
pdr.
@Bokan, could you review this?
3 years, 8 months ago (2017-04-10 16:32:13 UTC) #49
wjmaclean
On 2017/04/10 16:32:13, pdr. wrote: > @Bokan, could you review this? After a discussion with ...
3 years, 8 months ago (2017-04-10 16:36:33 UTC) #50
wjmaclean
aelias@chromium.org: Please review changes in cc/ ?
3 years, 8 months ago (2017-04-11 14:35:00 UTC) #54
wjmaclean
vollick@chromium.org: Please review changes in ui/compositor ?
3 years, 8 months ago (2017-04-11 14:36:01 UTC) #56
bokan
https://codereview.chromium.org/2785533003/diff/180001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2785533003/diff/180001/cc/trees/layer_tree_host_impl.cc#newcode3036 cc/trees/layer_tree_host_impl.cc:3036: if (settings_.is_layer_tree_for_subframe) { Should this be `is_layer_tree_for_subframe && scroll_status.thread ...
3 years, 8 months ago (2017-04-11 16:23:14 UTC) #63
wjmaclean
Addressed comments - ptal bokan@ ? https://codereview.chromium.org/2785533003/diff/180001/cc/trees/layer_tree_host_impl.cc File cc/trees/layer_tree_host_impl.cc (right): https://codereview.chromium.org/2785533003/diff/180001/cc/trees/layer_tree_host_impl.cc#newcode3036 cc/trees/layer_tree_host_impl.cc:3036: if (settings_.is_layer_tree_for_subframe) { ...
3 years, 8 months ago (2017-04-11 20:04:52 UTC) #65
bokan
I'm fine with the change to bubbling from ScrollAnimated, given how it currently works. I ...
3 years, 8 months ago (2017-04-11 22:18:29 UTC) #69
sahel
https://codereview.chromium.org/2785533003/diff/180001/content/browser/renderer_host/render_widget_host_impl.h File content/browser/renderer_host/render_widget_host_impl.h (right): https://codereview.chromium.org/2785533003/diff/180001/content/browser/renderer_host/render_widget_host_impl.h#newcode357 content/browser/renderer_host/render_widget_host_impl.h:357: bool is_in_gesture_scroll(blink::WebGestureDevice device) override; On 2017/04/11 16:23:14, bokan wrote: ...
3 years, 8 months ago (2017-04-12 15:40:22 UTC) #70
wjmaclean
https://codereview.chromium.org/2785533003/diff/220001/content/browser/site_per_process_browsertest.cc File content/browser/site_per_process_browsertest.cc (right): https://codereview.chromium.org/2785533003/diff/220001/content/browser/site_per_process_browsertest.cc#newcode1093 content/browser/site_per_process_browsertest.cc:1093: // Flaky: https://crbug.com/627238 On 2017/04/11 22:18:29, bokan wrote: > ...
3 years, 8 months ago (2017-04-12 15:54:47 UTC) #71
Ian Vollick
On 2017/04/12 15:54:47, wjmaclean wrote: > https://codereview.chromium.org/2785533003/diff/220001/content/browser/site_per_process_browsertest.cc > File content/browser/site_per_process_browsertest.cc (right): > > https://codereview.chromium.org/2785533003/diff/220001/content/browser/site_per_process_browsertest.cc#newcode1093 > ...
3 years, 8 months ago (2017-04-12 15:56:47 UTC) #72
bokan
https://codereview.chromium.org/2785533003/diff/180001/content/browser/renderer_host/render_widget_host_impl.h File content/browser/renderer_host/render_widget_host_impl.h (right): https://codereview.chromium.org/2785533003/diff/180001/content/browser/renderer_host/render_widget_host_impl.h#newcode357 content/browser/renderer_host/render_widget_host_impl.h:357: bool is_in_gesture_scroll(blink::WebGestureDevice device) override; On 2017/04/12 15:40:22, sahel wrote: ...
3 years, 8 months ago (2017-04-12 19:15:10 UTC) #73
wjmaclean
On 2017/04/12 19:15:10, bokan wrote: > https://codereview.chromium.org/2785533003/diff/180001/content/browser/renderer_host/render_widget_host_impl.h > File content/browser/renderer_host/render_widget_host_impl.h (right): > > https://codereview.chromium.org/2785533003/diff/180001/content/browser/renderer_host/render_widget_host_impl.h#newcode357 > ...
3 years, 8 months ago (2017-04-12 20:44:59 UTC) #74
sahel
https://codereview.chromium.org/2785533003/diff/180001/content/browser/renderer_host/render_widget_host_impl.h File content/browser/renderer_host/render_widget_host_impl.h (right): https://codereview.chromium.org/2785533003/diff/180001/content/browser/renderer_host/render_widget_host_impl.h#newcode357 content/browser/renderer_host/render_widget_host_impl.h:357: bool is_in_gesture_scroll(blink::WebGestureDevice device) override; On 2017/04/12 19:15:10, bokan wrote: ...
3 years, 8 months ago (2017-04-18 15:43:43 UTC) #75
wjmaclean
On 2017/04/18 15:43:43, sahel wrote: > https://codereview.chromium.org/2785533003/diff/180001/content/browser/renderer_host/render_widget_host_impl.h > File content/browser/renderer_host/render_widget_host_impl.h (right): > > https://codereview.chromium.org/2785533003/diff/180001/content/browser/renderer_host/render_widget_host_impl.h#newcode357 > ...
3 years, 8 months ago (2017-04-18 19:10:16 UTC) #86
bokan
All except I'm still worried we're missing test coverage. Can we at least reenable the ...
3 years, 8 months ago (2017-04-18 19:40:20 UTC) #87
wjmaclean
On 2017/04/18 19:40:20, bokan wrote: > All except I'm still worried we're missing test coverage. ...
3 years, 8 months ago (2017-04-18 19:46:29 UTC) #88
bokan
On 2017/04/18 19:46:29, wjmaclean wrote: > On 2017/04/18 19:40:20, bokan wrote: > > All except ...
3 years, 8 months ago (2017-04-18 20:13:01 UTC) #89
wjmaclean
aelias@ ... could you please look at cc/ ?
3 years, 8 months ago (2017-04-18 20:36:50 UTC) #91
aelias_OOO_until_Jul13
cc/ lgtm
3 years, 8 months ago (2017-04-18 20:57:09 UTC) #92
aelias_OOO_until_Jul13
cc/ lgtm
3 years, 8 months ago (2017-04-18 20:57:10 UTC) #93
Charlie Reis
One real question about OOPIFs on Android, but otherwise looks good with just a few ...
3 years, 8 months ago (2017-04-18 21:59:03 UTC) #96
wjmaclean
creis@ - Comments addressed, ptal? https://codereview.chromium.org/2785533003/diff/260001/cc/trees/layer_tree_host_client.h File cc/trees/layer_tree_host_client.h (right): https://codereview.chromium.org/2785533003/diff/260001/cc/trees/layer_tree_host_client.h#newcode62 cc/trees/layer_tree_host_client.h:62: virtual bool IsForSubframe() = ...
3 years, 8 months ago (2017-04-18 23:26:49 UTC) #97
Charlie Reis
Thanks, LGTM. (And thanks for the discussion about tests-- hopefully we can find a way ...
3 years, 8 months ago (2017-04-19 17:20:36 UTC) #98
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2785533003/280001
3 years, 8 months ago (2017-04-19 22:59:42 UTC) #101
commit-bot: I haz the power
3 years, 8 months ago (2017-04-20 00:43:53 UTC) #104
Message was sent while issue was closed.
Committed patchset #15 (id:280001) as
https://chromium.googlesource.com/chromium/src/+/a755e30003e89da8ed1ee6f9e4e0...

Powered by Google App Engine
This is Rietveld 408576698