Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(188)

Side by Side Diff: ui/events/ozone/evdev/device_event_dispatcher_evdev.h

Issue 869613003: [PATCH 5/11] ozone: evdev: Replace dispatch callbacks with an interface (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: namespace ui Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « ui/events/ozone/BUILD.gn ('k') | ui/events/ozone/evdev/device_event_dispatcher_evdev.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 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 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 UI_EVENTS_OZONE_EVDEV_EVENT_DISPATCH_CALLBACK_H_ 5 #ifndef UI_EVENTS_OZONE_EVDEV_DEVICE_EVENT_DISPATCHER_H_
6 #define UI_EVENTS_OZONE_EVDEV_EVENT_DISPATCH_CALLBACK_H_ 6 #define UI_EVENTS_OZONE_EVDEV_DEVICE_EVENT_DISPATCHER_H_
7 7
8 #include "base/callback.h"
9 #include "base/time/time.h" 8 #include "base/time/time.h"
10 #include "ui/events/event_constants.h" 9 #include "ui/events/event_constants.h"
11 #include "ui/events/ozone/evdev/events_ozone_evdev_export.h" 10 #include "ui/events/ozone/evdev/events_ozone_evdev_export.h"
12 #include "ui/gfx/geometry/point_f.h" 11 #include "ui/gfx/geometry/point_f.h"
13 #include "ui/gfx/geometry/vector2d.h" 12 #include "ui/gfx/geometry/vector2d.h"
14 #include "ui/gfx/geometry/vector2d_f.h" 13 #include "ui/gfx/geometry/vector2d_f.h"
15 14
16 namespace base {
17 class TimeDelta;
18 }
19
20 namespace gfx {
21 class PointF;
22 class Vector2d;
23 class Vector2dF;
24 }
25
26 namespace ui { 15 namespace ui {
27 16
28 class Event;
29
30 typedef base::Callback<void(scoped_ptr<Event>)> EventDispatchCallback;
31
32 struct EVENTS_OZONE_EVDEV_EXPORT KeyEventParams { 17 struct EVENTS_OZONE_EVDEV_EXPORT KeyEventParams {
33 KeyEventParams(int device_id, unsigned int code, bool down); 18 KeyEventParams(int device_id, unsigned int code, bool down);
34 KeyEventParams(const KeyEventParams& other); 19 KeyEventParams(const KeyEventParams& other);
35 ~KeyEventParams(); 20 ~KeyEventParams();
36 21
37 int device_id; 22 int device_id;
38 unsigned int code; 23 unsigned int code;
39 bool down; 24 bool down;
40 }; 25 };
41 26
42 typedef base::Callback<void(const KeyEventParams& params)>
43 KeyEventDispatchCallback;
44
45 struct EVENTS_OZONE_EVDEV_EXPORT MouseMoveEventParams { 27 struct EVENTS_OZONE_EVDEV_EXPORT MouseMoveEventParams {
46 MouseMoveEventParams(int device_id, const gfx::PointF& location); 28 MouseMoveEventParams(int device_id, const gfx::PointF& location);
47 MouseMoveEventParams(const MouseMoveEventParams& other); 29 MouseMoveEventParams(const MouseMoveEventParams& other);
48 ~MouseMoveEventParams(); 30 ~MouseMoveEventParams();
49 31
50 int device_id; 32 int device_id;
51 gfx::PointF location; 33 gfx::PointF location;
52 }; 34 };
53 35
54 typedef base::Callback<void(const MouseMoveEventParams& params)>
55 MouseMoveEventDispatchCallback;
56
57 struct EVENTS_OZONE_EVDEV_EXPORT MouseButtonEventParams { 36 struct EVENTS_OZONE_EVDEV_EXPORT MouseButtonEventParams {
58 MouseButtonEventParams(int device_id, 37 MouseButtonEventParams(int device_id,
59 const gfx::PointF& location, 38 const gfx::PointF& location,
60 unsigned int button, 39 unsigned int button,
61 bool down, 40 bool down,
62 bool allow_remap); 41 bool allow_remap);
63 MouseButtonEventParams(const MouseButtonEventParams& other); 42 MouseButtonEventParams(const MouseButtonEventParams& other);
64 ~MouseButtonEventParams(); 43 ~MouseButtonEventParams();
65 44
66 int device_id; 45 int device_id;
67 gfx::PointF location; 46 gfx::PointF location;
68 unsigned int button; 47 unsigned int button;
69 bool down; 48 bool down;
70 bool allow_remap; 49 bool allow_remap;
71 }; 50 };
72 51
73 typedef base::Callback<void(const MouseButtonEventParams& params)>
74 MouseButtonEventDispatchCallback;
75
76 struct EVENTS_OZONE_EVDEV_EXPORT MouseWheelEventParams { 52 struct EVENTS_OZONE_EVDEV_EXPORT MouseWheelEventParams {
77 MouseWheelEventParams(int device_id, 53 MouseWheelEventParams(int device_id,
78 const gfx::PointF& location, 54 const gfx::PointF& location,
79 const gfx::Vector2d& delta); 55 const gfx::Vector2d& delta);
80 MouseWheelEventParams(const MouseWheelEventParams& other); 56 MouseWheelEventParams(const MouseWheelEventParams& other);
81 ~MouseWheelEventParams(); 57 ~MouseWheelEventParams();
82 58
83 int device_id; 59 int device_id;
84 gfx::PointF location; 60 gfx::PointF location;
85 gfx::Vector2d delta; 61 gfx::Vector2d delta;
86 }; 62 };
87 63
88 typedef base::Callback<void(const MouseWheelEventParams& params)>
89 MouseWheelEventDispatchCallback;
90
91 struct EVENTS_OZONE_EVDEV_EXPORT ScrollEventParams { 64 struct EVENTS_OZONE_EVDEV_EXPORT ScrollEventParams {
92 ScrollEventParams(int device_id, 65 ScrollEventParams(int device_id,
93 EventType type, 66 EventType type,
94 const gfx::PointF location, 67 const gfx::PointF location,
95 const gfx::Vector2dF delta, 68 const gfx::Vector2dF delta,
96 const gfx::Vector2dF ordinal_delta, 69 const gfx::Vector2dF ordinal_delta,
97 int finger_count, 70 int finger_count,
98 const base::TimeDelta timestamp); 71 const base::TimeDelta timestamp);
99 ScrollEventParams(const ScrollEventParams& other); 72 ScrollEventParams(const ScrollEventParams& other);
100 ~ScrollEventParams(); 73 ~ScrollEventParams();
101 74
102 int device_id; 75 int device_id;
103 EventType type; 76 EventType type;
104 const gfx::PointF location; 77 const gfx::PointF location;
105 const gfx::Vector2dF delta; 78 const gfx::Vector2dF delta;
106 const gfx::Vector2dF ordinal_delta; 79 const gfx::Vector2dF ordinal_delta;
107 int finger_count; 80 int finger_count;
108 const base::TimeDelta timestamp; 81 const base::TimeDelta timestamp;
109 }; 82 };
110 83
111 typedef base::Callback<void(const ScrollEventParams& params)>
112 ScrollEventDispatchCallback;
113
114 struct EVENTS_OZONE_EVDEV_EXPORT TouchEventParams { 84 struct EVENTS_OZONE_EVDEV_EXPORT TouchEventParams {
115 TouchEventParams(int device_id, 85 TouchEventParams(int device_id,
116 int touch_id, 86 int touch_id,
117 EventType type, 87 EventType type,
118 const gfx::PointF& location, 88 const gfx::PointF& location,
119 const gfx::Vector2dF& radii, 89 const gfx::Vector2dF& radii,
120 float pressure, 90 float pressure,
121 const base::TimeDelta& timestamp); 91 const base::TimeDelta& timestamp);
122 TouchEventParams(const TouchEventParams& other); 92 TouchEventParams(const TouchEventParams& other);
123 ~TouchEventParams(); 93 ~TouchEventParams();
124 94
125 int device_id; 95 int device_id;
126 int touch_id; 96 int touch_id;
127 EventType type; 97 EventType type;
128 gfx::PointF location; 98 gfx::PointF location;
129 gfx::Vector2dF radii; 99 gfx::Vector2dF radii;
130 float pressure; 100 float pressure;
131 base::TimeDelta timestamp; 101 base::TimeDelta timestamp;
132 }; 102 };
133 103
134 typedef base::Callback<void(const TouchEventParams& params)> 104 // Interface used by device objects for event dispatch.
135 TouchEventDispatchCallback; 105 class EVENTS_OZONE_EVDEV_EXPORT DeviceEventDispatcherEvdev {
106 public:
107 DeviceEventDispatcherEvdev() {}
108 virtual ~DeviceEventDispatcherEvdev() {}
136 109
137 } // namspace ui 110 virtual void DispatchKeyEvent(const KeyEventParams& params) = 0;
111 virtual void DispatchMouseMoveEvent(const MouseMoveEventParams& params) = 0;
112 virtual void DispatchMouseButtonEvent(
113 const MouseButtonEventParams& params) = 0;
114 virtual void DispatchMouseWheelEvent(const MouseWheelEventParams& params) = 0;
115 virtual void DispatchScrollEvent(const ScrollEventParams& params) = 0;
116 virtual void DispatchTouchEvent(const TouchEventParams& params) = 0;
117 };
138 118
139 #endif // UI_EVENTS_OZONE_EVDEV_EVENT_DISPATCH_CALLBACK_H_ 119 } // namespace ui
120
121 #endif // UI_EVENTS_OZONE_EVDEV_DEVICE_EVENT_DISPATCHER_H_
OLDNEW
« no previous file with comments | « ui/events/ozone/BUILD.gn ('k') | ui/events/ozone/evdev/device_event_dispatcher_evdev.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698