1 // Copyright 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5#ifndef CHROME_BROWSER_UI_VIEWS_FRAME_SCROLL_END_EFFECT_CONTROLLER_H_ 6#define CHROME_BROWSER_UI_VIEWS_FRAME_SCROLL_END_EFFECT_CONTROLLER_H_ 7 8#include "base/basictypes.h" 9 10// The controller receives the raw y-deltas generated by the overscroll 11// controller and is resonsible for converting them in to the scroll end 12// effect. This effect occurs in the vertical overscroll case and is used to 13// visually indicate to the user that they have reached the end of the content 14// that they are scrolling. 15class ScrollEndEffectController { 16 public: 17 ScrollEndEffectController() {} 18 virtual ~ScrollEndEffectController() {} 19 20 static ScrollEndEffectController* Create(); 21 22 // Interface that allows vertical overscroll activies to be communicated to 23 // the controller. 24 virtual void OverscrollUpdate(int delta_y) = 0; 25 26 private: 27 DISALLOW_COPY_AND_ASSIGN(ScrollEndEffectController); 28}; 29 30#endif // CHROME_BROWSER_UI_VIEWS_FRAME_SCROLL_END_EFFECT_CONTROLLER_H_ 31