Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / content / browser / renderer_host / input / synthetic_smooth_scroll_gesture.h
blob1819b3dd6af6450f8f769f2b378024d3e63bdeae
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.
5 #ifndef CONTENT_BROWSER_RENDERER_HOST_INPUT_SYNTHETIC_SMOOTH_SCROLL_GESTURE_H_
6 #define CONTENT_BROWSER_RENDERER_HOST_INPUT_SYNTHETIC_SMOOTH_SCROLL_GESTURE_H_
8 #include "content/browser/renderer_host/input/synthetic_smooth_move_gesture.h"
10 #include "content/common/input/synthetic_smooth_scroll_gesture_params.h"
12 namespace content {
13 class CONTENT_EXPORT SyntheticSmoothScrollGesture : public SyntheticGesture {
14 public:
15 explicit SyntheticSmoothScrollGesture(
16 const SyntheticSmoothScrollGestureParams& params);
17 ~SyntheticSmoothScrollGesture() override;
19 // SyntheticGesture implementation:
20 SyntheticGesture::Result ForwardInputEvents(
21 const base::TimeTicks& timestamp,
22 SyntheticGestureTarget* target) override;
24 private:
25 static SyntheticSmoothMoveGestureParams::InputType GetInputSourceType(
26 SyntheticGestureParams::GestureSourceType gesture_source_type);
28 bool InitializeMoveGesture(
29 SyntheticGestureParams::GestureSourceType gesture_type,
30 SyntheticGestureTarget* target);
32 scoped_ptr<SyntheticSmoothMoveGesture> move_gesture_;
33 SyntheticSmoothScrollGestureParams params_;
36 } // namespace content
38 #endif // CONTENT_BROWSER_RENDERER_HOST_INPUT_SYNTHETIC_SMOOTH_SCROLL_GESTURE_H_