Move SetOverscrollBehavior from WebLayerTreeView to WebWidgetClient (10/n)
Remove caching of the OverscrollBehavior in OverscrollController, and
then stop plumbing it through DidOverscroll, when RenderWidget can
access the last set behaviour on its own.
The WebLayerTreeView is a shortcut past the WebWidgetClient that is
not needed now that we always composite. This works toward eliminating
this extra API layer.
More importantly this helps us Close/Restart the WebWidget parts of
WebViewImpl by not requiring plumbing 2 pointers with slightly different
lifetimes (WebLayerTreeView is created inside the Init of the
WebWidgetClient). This will help avoid a bunch of complexity in
creating WebFrameWidgets and other WebWidgets.
[email protected]
Bug: 912193
Change-Id: Ib501ade7e2563dbfb856f3b7295038546cbc8915
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1554644
Commit-Queue: danakj <[email protected]>
Reviewed-by: Daniel Cheng <[email protected]>
Cr-Commit-Position: refs/heads/master@{#650523}
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
index 4d3da78..987016a 100644
--- a/content/renderer/render_widget.cc
+++ b/content/renderer/render_widget.cc
@@ -2770,11 +2770,10 @@
}
void RenderWidget::DidOverscroll(
- const blink::WebFloatSize& overscrollDelta,
- const blink::WebFloatSize& accumulatedOverscroll,
+ const blink::WebFloatSize& overscroll_delta,
+ const blink::WebFloatSize& accumulated_overscroll,
const blink::WebFloatPoint& position,
- const blink::WebFloatSize& velocity,
- const cc::OverscrollBehavior& behavior) {
+ const blink::WebFloatSize& velocity) {
#if defined(OS_MACOSX)
// On OSX the user can disable the elastic overscroll effect. If that's the
// case, don't forward the overscroll notification.
@@ -2782,8 +2781,14 @@
if (!compositor_deps()->IsElasticOverscrollEnabled())
return;
#endif
- input_handler_->DidOverscrollFromBlink(overscrollDelta, accumulatedOverscroll,
- position, velocity, behavior);
+ input_handler_->DidOverscrollFromBlink(
+ overscroll_delta, accumulated_overscroll, position, velocity,
+ layer_tree_view_->layer_tree_host()->overscroll_behavior());
+}
+
+void RenderWidget::SetOverscrollBehavior(
+ const cc::OverscrollBehavior& behavior) {
+ layer_tree_view_->layer_tree_host()->SetOverscrollBehavior(behavior);
}
// static