OLD | NEW |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 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 REMOTING_IOS_CLIENT_GESTURES_H_ | 5 #ifndef REMOTING_IOS_CLIENT_GESTURES_H_ |
6 #define REMOTING_IOS_CLIENT_GESTURES_H_ | 6 #define REMOTING_IOS_CLIENT_GESTURES_H_ |
7 | 7 |
8 #import <Foundation/Foundation.h> | 8 #import <Foundation/Foundation.h> |
9 #import <UIKit/UIKit.h> | 9 #import <UIKit/UIKit.h> |
10 #include "base/logging.h" | |
11 #import "remoting/ios/key_input.h" | |
12 | 10 |
13 @class RemotingClient; | 11 @class RemotingClient; |
14 | 12 |
15 typedef NS_ENUM(NSInteger, HostInputScheme) { | 13 typedef NS_ENUM(NSInteger, HostInputScheme) { |
16 // Mouse cursor is shown | 14 // Mouse cursor is shown |
17 // Dragging or Panning, moves the mouse cursor | 15 // Dragging or Panning, moves the mouse cursor |
18 // Tapping causes mouse input at the cursor location | 16 // Tapping causes mouse input at the cursor location |
19 HostInputSchemeTrackpad = 0, // Default | 17 HostInputSchemeTrackpad = 0, // Default |
20 // Mouse cursor is not shown | 18 // Mouse cursor is not shown |
21 // Dragging or Panning is similar to a map | 19 // Dragging or Panning is similar to a map |
22 // Tapping causes mouse input at the tap location | 20 // Tapping causes mouse input at the tap location |
23 HostInputSchemeTouch = 1 | 21 HostInputSchemeTouch = 1 |
24 }; | 22 }; |
25 | 23 |
26 typedef NS_ENUM(NSInteger, MouseButton) { | 24 typedef NS_ENUM(NSInteger, MouseButton) { |
27 | |
28 NO_BUTTON = 0, | 25 NO_BUTTON = 0, |
29 LEFT_BUTTON = 1, | 26 LEFT_BUTTON = 1, |
30 MIDDLE_BUTTON = 2, | 27 MIDDLE_BUTTON = 2, |
31 RIGHT_BUTTON = 3, | 28 RIGHT_BUTTON = 3, |
32 | |
33 }; | 29 }; |
34 | 30 |
35 @interface ClientGestures : NSObject<UIGestureRecognizerDelegate> { | 31 @interface ClientGestures : NSObject<UIGestureRecognizerDelegate> { |
36 @private | 32 @private |
37 UILongPressGestureRecognizer* _longPressRecognizer; | 33 UILongPressGestureRecognizer* _longPressRecognizer; |
38 UIPanGestureRecognizer* _panRecognizer; | 34 UIPanGestureRecognizer* _panRecognizer; |
39 UIPanGestureRecognizer* _threeFingerPanRecognizer; | 35 UIPanGestureRecognizer* _threeFingerPanRecognizer; |
40 UIPinchGestureRecognizer* _pinchRecognizer; | 36 UIPinchGestureRecognizer* _pinchRecognizer; |
41 UITapGestureRecognizer* _singleTapRecognizer; | 37 UITapGestureRecognizer* _singleTapRecognizer; |
42 UITapGestureRecognizer* _twoFingerTapRecognizer; | 38 UITapGestureRecognizer* _twoFingerTapRecognizer; |
(...skipping 20 matching lines...) Expand all Loading... |
63 // Right mouse click | 59 // Right mouse click |
64 - (IBAction)twoFingerTapGestureTriggered:(UITapGestureRecognizer*)sender; | 60 - (IBAction)twoFingerTapGestureTriggered:(UITapGestureRecognizer*)sender; |
65 // Middle mouse click | 61 // Middle mouse click |
66 - (IBAction)threeFingerTapGestureTriggered:(UITapGestureRecognizer*)sender; | 62 - (IBAction)threeFingerTapGestureTriggered:(UITapGestureRecognizer*)sender; |
67 // Show hidden menus. Swipe up for keyboard, swipe down for navigation menu | 63 // Show hidden menus. Swipe up for keyboard, swipe down for navigation menu |
68 - (IBAction)threeFingerPanGestureTriggered:(UIPanGestureRecognizer*)sender; | 64 - (IBAction)threeFingerPanGestureTriggered:(UIPanGestureRecognizer*)sender; |
69 | 65 |
70 @end | 66 @end |
71 | 67 |
72 #endif // REMOTING_IOS_CLIENT_GESTURES_H_ | 68 #endif // REMOTING_IOS_CLIENT_GESTURES_H_ |
OLD | NEW |