| Index: cc/trees/layer_tree_host_impl.h
|
| diff --git a/cc/trees/layer_tree_host_impl.h b/cc/trees/layer_tree_host_impl.h
|
| index e0539a66a9795e96a95a458d82c763cae76d963e..4ecf73941a079a37da62796f9f61e2dec2a1a7cd 100644
|
| --- a/cc/trees/layer_tree_host_impl.h
|
| +++ b/cc/trees/layer_tree_host_impl.h
|
| @@ -200,7 +200,9 @@ class CC_EXPORT LayerTreeHostImpl
|
| bool DoTouchEventsBlockScrollAt(const gfx::Point& viewport_port) override;
|
| std::unique_ptr<SwapPromiseMonitor> CreateLatencyInfoSwapPromiseMonitor(
|
| ui::LatencyInfo* latency) override;
|
| - ScrollElasticityHelper* CreateScrollElasticityHelper() override;
|
| + ScrollElasticityHelper* CreateRootScrollElasticityHelper() override;
|
| + base::WeakPtr<ScrollElasticityHelper>
|
| + ScrollElasticityHelperForScrollingLayer() override;
|
| bool GetScrollOffsetForLayer(int layer_id,
|
| gfx::ScrollOffset* offset) override;
|
| bool ScrollLayerTo(int layer_id, const gfx::ScrollOffset& offset) override;
|
| @@ -328,6 +330,10 @@ class CC_EXPORT LayerTreeHostImpl
|
| ScrollbarAnimationController* ScrollbarAnimationControllerForId(
|
| int scroll_layer_id) const;
|
|
|
| + void RegisterScrollElasticityHelper(int scroll_layer_id);
|
| + void UnregisterScrollElasticityHelper(int scroll_layer_id);
|
| + ScrollElasticityHelper* ScrollElasticityHelperForId(int scroll_layer_id);
|
| +
|
| DrawMode GetDrawMode() const;
|
|
|
| // Viewport size in draw space: this size is in physical pixels and is used
|
| @@ -750,7 +756,7 @@ class CC_EXPORT LayerTreeHostImpl
|
|
|
| // An object to implement the ScrollElasticityHelper interface and
|
| // hold all state related to elasticity. May be NULL if never requested.
|
| - std::unique_ptr<ScrollElasticityHelper> scroll_elasticity_helper_;
|
| + std::unique_ptr<ScrollElasticityHelper> root_scroll_elasticity_helper_;
|
|
|
| bool tile_priorities_dirty_;
|
|
|
| @@ -806,6 +812,10 @@ class CC_EXPORT LayerTreeHostImpl
|
| std::unordered_map<int, std::unique_ptr<ScrollbarAnimationController>>
|
| scrollbar_animation_controllers_;
|
|
|
| + // Map from scroll layer ID to elasticity helper.
|
| + std::unordered_map<int, std::unique_ptr<ScrollElasticityHelper>>
|
| + scroll_elasticity_helpers_;
|
| +
|
| RenderingStatsInstrumentation* rendering_stats_instrumentation_;
|
| MicroBenchmarkControllerImpl micro_benchmark_controller_;
|
| std::unique_ptr<SynchronousTaskGraphRunner>
|
|
|