| Index: cc/input/scroll_elasticity_helper.cc
|
| diff --git a/cc/input/scroll_elasticity_helper.cc b/cc/input/scroll_elasticity_helper.cc
|
| index 54da888ff7692951252427bf852f35d471312219..6a38e4b3bae34e6854c2099cb799ca0af14e00b1 100644
|
| --- a/cc/input/scroll_elasticity_helper.cc
|
| +++ b/cc/input/scroll_elasticity_helper.cc
|
| @@ -32,6 +32,7 @@ bool ScrollElasticityHelper::AllowsVerticalStretching() {
|
| }
|
|
|
| gfx::Vector2dF ScrollElasticityHelper::StretchAmount() {
|
| + // TODO(ccameron): Use the value of active_tree->elastic_overscroll directly
|
| return stretch_offset_;
|
| }
|
|
|
| @@ -63,7 +64,7 @@ bool ScrollElasticityHelper::CanScrollVertically() {
|
|
|
| gfx::Vector2dF ScrollElasticityHelper::AbsoluteScrollPosition() {
|
| // TODO(ccameron): This is function is redundant and may be removed.
|
| - return stretch_offset_;
|
| + return StretchAmount();
|
| }
|
|
|
| void ScrollElasticityHelper::ImmediateScrollBy(const gfx::Vector2dF& scroll) {
|
| @@ -73,9 +74,14 @@ void ScrollElasticityHelper::ImmediateScrollBy(const gfx::Vector2dF& scroll) {
|
| void ScrollElasticityHelper::ImmediateScrollByWithoutContentEdgeConstraints(
|
| const gfx::Vector2dF& scroll) {
|
| stretch_offset_ += scroll;
|
| -
|
| - // TODO(ccameron): Update the transform of the appropriate layer in the
|
| - // LayerTreeHostImpl, and request that a frame be drawn.
|
| + // TODO(ccameron): Use the value of active_tree->elastic_overscroll directly
|
| + // Note that this assumes that this property's true value is ever changed
|
| + // by the impl thread. While this is true, it is redundant state.
|
| + layer_tree_host_impl_->active_tree()->elastic_overscroll()->SetCurrent(
|
| + -stretch_offset_);
|
| + layer_tree_host_impl_->active_tree()->set_needs_update_draw_properties();
|
| + layer_tree_host_impl_->SetNeedsCommit();
|
| + layer_tree_host_impl_->SetNeedsRedraw();
|
| }
|
|
|
| void ScrollElasticityHelper::StartSnapRubberbandTimer() {
|
|
|