Index: athena/wm/window_overview_mode.cc |
diff --git a/athena/wm/window_overview_mode.cc b/athena/wm/window_overview_mode.cc |
index ce6774420e59d5182c58f42ccddeaaa05a59bb99..f8f9ab004f0543181f09a4df777871ac60d094da 100644 |
--- a/athena/wm/window_overview_mode.cc |
+++ b/athena/wm/window_overview_mode.cc |
@@ -696,14 +696,15 @@ class WindowOverviewModeImpl : public WindowOverviewMode, |
// ui::CompositorAnimationObserver: |
virtual void OnAnimationStep(base::TimeTicks timestamp) override { |
CHECK(fling_); |
- if (fling_->start_timestamp() > timestamp) |
- return; |
- gfx::Vector2dF scroll = fling_->GetScrollAmountAtTime(timestamp); |
- if (scroll.IsZero()) { |
+ gfx::Vector2dF delta; |
+ bool fling_active = fling_->ComputeScrollDeltaAtTime(timestamp, &delta); |
+ |
+ if (!scroll.IsZero()) |
+ DoScroll(delta.y()); |
+ |
+ if (!fling_active) { |
fling_.reset(); |
RemoveAnimationObserver(); |
- } else { |
- DoScroll(scroll.y()); |
} |
} |