OLD | NEW |
1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CC_INPUT_INPUT_HANDLER_H_ | 5 #ifndef CC_INPUT_INPUT_HANDLER_H_ |
6 #define CC_INPUT_INPUT_HANDLER_H_ | 6 #define CC_INPUT_INPUT_HANDLER_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "base/time/time.h" | 9 #include "base/time/time.h" |
10 #include "cc/base/cc_export.h" | 10 #include "cc/base/cc_export.h" |
11 #include "cc/base/swap_promise_monitor.h" | 11 #include "cc/base/swap_promise_monitor.h" |
12 #include "cc/input/scrollbar.h" | 12 #include "cc/input/scrollbar.h" |
13 | 13 |
14 namespace gfx { | 14 namespace gfx { |
15 class Point; | 15 class Point; |
16 class PointF; | 16 class PointF; |
17 class Vector2d; | 17 class Vector2d; |
18 class Vector2dF; | 18 class Vector2dF; |
19 } | 19 } |
20 | 20 |
21 namespace ui { struct LatencyInfo; } | 21 namespace ui { struct LatencyInfo; } |
22 | 22 |
23 namespace cc { | 23 namespace cc { |
24 | 24 |
25 class LayerScrollOffsetDelegate; | 25 class LayerScrollOffsetDelegate; |
| 26 class ScrollElasticityControllerClient; |
26 | 27 |
27 class CC_EXPORT InputHandlerClient { | 28 class CC_EXPORT InputHandlerClient { |
28 public: | 29 public: |
29 virtual ~InputHandlerClient() {} | 30 virtual ~InputHandlerClient() {} |
30 | 31 |
31 virtual void WillShutdown() = 0; | 32 virtual void WillShutdown() = 0; |
32 virtual void Animate(base::TimeTicks time) = 0; | 33 virtual void Animate(base::TimeTicks time) = 0; |
33 virtual void MainThreadHasStoppedFlinging() = 0; | 34 virtual void MainThreadHasStoppedFlinging() = 0; |
34 | 35 |
35 // Called when scroll deltas reaching the root scrolling layer go unused. | 36 // Called when scroll deltas reaching the root scrolling layer go unused. |
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
133 virtual bool HaveTouchEventHandlersAt(const gfx::Point& viewport_point) = 0; | 134 virtual bool HaveTouchEventHandlersAt(const gfx::Point& viewport_point) = 0; |
134 | 135 |
135 // Calling CreateLatencyInfoSwapPromiseMonitor() to get a scoped | 136 // Calling CreateLatencyInfoSwapPromiseMonitor() to get a scoped |
136 // LatencyInfoSwapPromiseMonitor. During the life time of the | 137 // LatencyInfoSwapPromiseMonitor. During the life time of the |
137 // LatencyInfoSwapPromiseMonitor, if SetNeedsRedraw() or SetNeedsRedrawRect() | 138 // LatencyInfoSwapPromiseMonitor, if SetNeedsRedraw() or SetNeedsRedrawRect() |
138 // is called on LayerTreeHostImpl, the original latency info will be turned | 139 // is called on LayerTreeHostImpl, the original latency info will be turned |
139 // into a LatencyInfoSwapPromise. | 140 // into a LatencyInfoSwapPromise. |
140 virtual scoped_ptr<SwapPromiseMonitor> CreateLatencyInfoSwapPromiseMonitor( | 141 virtual scoped_ptr<SwapPromiseMonitor> CreateLatencyInfoSwapPromiseMonitor( |
141 ui::LatencyInfo* latency) = 0; | 142 ui::LatencyInfo* latency) = 0; |
142 | 143 |
| 144 virtual ScrollElasticityControllerClient* |
| 145 GetScrollElasticityControllerClient() = 0; |
| 146 |
143 protected: | 147 protected: |
144 InputHandler() {} | 148 InputHandler() {} |
145 virtual ~InputHandler() {} | 149 virtual ~InputHandler() {} |
146 | 150 |
147 private: | 151 private: |
148 DISALLOW_COPY_AND_ASSIGN(InputHandler); | 152 DISALLOW_COPY_AND_ASSIGN(InputHandler); |
149 }; | 153 }; |
150 | 154 |
151 } // namespace cc | 155 } // namespace cc |
152 | 156 |
153 #endif // CC_INPUT_INPUT_HANDLER_H_ | 157 #endif // CC_INPUT_INPUT_HANDLER_H_ |
OLD | NEW |