Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / content / browser / renderer_host / input / synthetic_smooth_drag_gesture.h
blob05de2426c7c7ad81e18bddac745f1634e3a2f760
1 // Copyright 2015 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_DRAG_GESTURE_H_
6 #define CONTENT_BROWSER_RENDERER_HOST_INPUT_SYNTHETIC_SMOOTH_DRAG_GESTURE_H_
8 #include "content/browser/renderer_host/input/synthetic_smooth_move_gesture.h"
10 #include "content/common/input/synthetic_smooth_drag_gesture_params.h"
12 namespace content {
13 class CONTENT_EXPORT SyntheticSmoothDragGesture : public SyntheticGesture {
14 public:
15 explicit SyntheticSmoothDragGesture(
16 const SyntheticSmoothDragGestureParams& params);
17 ~SyntheticSmoothDragGesture() 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 SyntheticSmoothDragGestureParams params_;
36 } // namespace content
38 #endif // CONTENT_BROWSER_RENDERER_HOST_INPUT_SYNTHETIC_SMOOTH_DRAG_GESTURE_H_