Clean up the SendNavigate family of functions.
[chromium-blink-merge.git] / content / browser / renderer_host / overscroll_controller_delegate.h
blobb3d4757933f7928759a89774f99a0194d9c19041
1 // Copyright (c) 2012 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.
5 #ifndef CONTENT_BROWSER_RENDERER_HOST_OVERSCROLL_CONTROLLER_DELEGATE_H_
6 #define CONTENT_BROWSER_RENDERER_HOST_OVERSCROLL_CONTROLLER_DELEGATE_H_
8 #include "base/basictypes.h"
9 #include "base/compiler_specific.h"
10 #include "content/browser/renderer_host/overscroll_controller.h"
11 #include "content/common/content_export.h"
12 #include "ui/gfx/geometry/rect.h"
14 namespace content {
16 // The delegate receives overscroll gesture updates from the controller and
17 // should perform appropriate actions.
18 class CONTENT_EXPORT OverscrollControllerDelegate {
19 public:
20 OverscrollControllerDelegate() {}
21 virtual ~OverscrollControllerDelegate() {}
23 // Get the bounds of the view corresponding to the delegate. Overscroll-ending
24 // events will only be processed if the visible bounds are non-empty.
25 virtual gfx::Rect GetVisibleBounds() const = 0;
27 // This is called for each update in the overscroll amount. Returns true if
28 // the delegate consumed the event.
29 virtual bool OnOverscrollUpdate(float delta_x, float delta_y) = 0;
31 // This is called when the overscroll completes.
32 virtual void OnOverscrollComplete(OverscrollMode overscroll_mode) = 0;
34 // This is called when the direction of the overscroll changes.
35 virtual void OnOverscrollModeChange(OverscrollMode old_mode,
36 OverscrollMode new_mode) = 0;
38 private:
39 DISALLOW_COPY_AND_ASSIGN(OverscrollControllerDelegate);
42 } // namespace content
44 #endif // CONTENT_BROWSER_RENDERER_HOST_OVERSCROLL_CONTROLLER_DELEGATE_H_