| // Copyright 2017 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "content/test/test_overscroll_delegate.h" |
| |
| namespace content { |
| |
| TestOverscrollDelegate::TestOverscrollDelegate(const gfx::Size& display_size) |
| : display_size_(display_size), |
| current_mode_(OVERSCROLL_NONE), |
| completed_mode_(OVERSCROLL_NONE), |
| delta_x_(0.f), |
| delta_y_(0.f) {} |
| |
| TestOverscrollDelegate::~TestOverscrollDelegate() {} |
| |
| void TestOverscrollDelegate::Reset() { |
| current_mode_ = OVERSCROLL_NONE; |
| completed_mode_ = OVERSCROLL_NONE; |
| historical_modes_.clear(); |
| delta_x_ = delta_y_ = 0.f; |
| } |
| |
| gfx::Size TestOverscrollDelegate::GetDisplaySize() const { |
| return display_size_; |
| } |
| |
| bool TestOverscrollDelegate::OnOverscrollUpdate(float delta_x, float delta_y) { |
| delta_x_ = delta_x; |
| delta_y_ = delta_y; |
| return true; |
| } |
| |
| void TestOverscrollDelegate::OnOverscrollComplete( |
| OverscrollMode overscroll_mode) { |
| DCHECK_EQ(current_mode_, overscroll_mode); |
| completed_mode_ = overscroll_mode; |
| current_mode_ = OVERSCROLL_NONE; |
| } |
| |
| void TestOverscrollDelegate::OnOverscrollModeChange( |
| OverscrollMode old_mode, |
| OverscrollMode new_mode, |
| OverscrollSource source, |
| cc::OverscrollBehavior behavior) { |
| DCHECK_EQ(current_mode_, old_mode); |
| current_mode_ = new_mode; |
| historical_modes_.push_back(new_mode); |
| delta_x_ = delta_y_ = 0.f; |
| } |
| |
| base::Optional<float> TestOverscrollDelegate::GetMaxOverscrollDelta() const { |
| return delta_cap_; |
| } |
| |
| } // namespace content |