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

Side by Side Diff: content/browser/renderer_host/web_input_event_aura.cc

Issue 63253002: Rename WebKit namespace to blink (part 3) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 1 month 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #include "content/browser/renderer_host/web_input_event_aura.h" 5 #include "content/browser/renderer_host/web_input_event_aura.h"
6 6
7 #include "content/browser/renderer_host/ui_events_helper.h" 7 #include "content/browser/renderer_host/ui_events_helper.h"
8 #include "ui/aura/window.h" 8 #include "ui/aura/window.h"
9 #include "ui/events/event.h" 9 #include "ui/events/event.h"
10 #include "ui/events/event_utils.h" 10 #include "ui/events/event_utils.h"
11 11
12 namespace content { 12 namespace content {
13 13
14 #if defined(USE_X11) || defined(USE_OZONE) 14 #if defined(USE_X11) || defined(USE_OZONE)
15 // From third_party/WebKit/Source/web/gtk/WebInputEventFactory.cpp: 15 // From third_party/WebKit/Source/web/gtk/WebInputEventFactory.cpp:
16 WebKit::WebUChar GetControlCharacter(int windows_key_code, bool shift) { 16 blink::WebUChar GetControlCharacter(int windows_key_code, bool shift) {
17 if (windows_key_code >= ui::VKEY_A && 17 if (windows_key_code >= ui::VKEY_A &&
18 windows_key_code <= ui::VKEY_Z) { 18 windows_key_code <= ui::VKEY_Z) {
19 // ctrl-A ~ ctrl-Z map to \x01 ~ \x1A 19 // ctrl-A ~ ctrl-Z map to \x01 ~ \x1A
20 return windows_key_code - ui::VKEY_A + 1; 20 return windows_key_code - ui::VKEY_A + 1;
21 } 21 }
22 if (shift) { 22 if (shift) {
23 // following graphics chars require shift key to input. 23 // following graphics chars require shift key to input.
24 switch (windows_key_code) { 24 switch (windows_key_code) {
25 // ctrl-@ maps to \x00 (Null byte) 25 // ctrl-@ maps to \x00 (Null byte)
26 case ui::VKEY_2: 26 case ui::VKEY_2:
(...skipping 24 matching lines...) Expand all
51 return 0x0A; 51 return 0x0A;
52 // Returns 0 for all other keys to avoid inputting unexpected chars. 52 // Returns 0 for all other keys to avoid inputting unexpected chars.
53 default: 53 default:
54 break; 54 break;
55 } 55 }
56 } 56 }
57 return 0; 57 return 0;
58 } 58 }
59 #endif 59 #endif
60 #if defined(OS_WIN) 60 #if defined(OS_WIN)
61 WebKit::WebMouseEvent MakeUntranslatedWebMouseEventFromNativeEvent( 61 blink::WebMouseEvent MakeUntranslatedWebMouseEventFromNativeEvent(
62 base::NativeEvent native_event); 62 base::NativeEvent native_event);
63 WebKit::WebMouseWheelEvent MakeUntranslatedWebMouseWheelEventFromNativeEvent( 63 blink::WebMouseWheelEvent MakeUntranslatedWebMouseWheelEventFromNativeEvent(
64 base::NativeEvent native_event); 64 base::NativeEvent native_event);
65 WebKit::WebKeyboardEvent MakeWebKeyboardEventFromNativeEvent( 65 blink::WebKeyboardEvent MakeWebKeyboardEventFromNativeEvent(
66 base::NativeEvent native_event); 66 base::NativeEvent native_event);
67 WebKit::WebGestureEvent MakeWebGestureEventFromNativeEvent( 67 blink::WebGestureEvent MakeWebGestureEventFromNativeEvent(
68 base::NativeEvent native_event); 68 base::NativeEvent native_event);
69 #elif defined(USE_X11) 69 #elif defined(USE_X11)
70 WebKit::WebKeyboardEvent MakeWebKeyboardEventFromAuraEvent( 70 blink::WebKeyboardEvent MakeWebKeyboardEventFromAuraEvent(
71 ui::KeyEvent* event); 71 ui::KeyEvent* event);
72 #elif defined(USE_OZONE) 72 #elif defined(USE_OZONE)
73 WebKit::WebKeyboardEvent MakeWebKeyboardEventFromAuraEvent( 73 blink::WebKeyboardEvent MakeWebKeyboardEventFromAuraEvent(
74 ui::KeyEvent* event) { 74 ui::KeyEvent* event) {
75 base::NativeEvent native_event = event->native_event(); 75 base::NativeEvent native_event = event->native_event();
76 ui::EventType type = ui::EventTypeFromNative(native_event); 76 ui::EventType type = ui::EventTypeFromNative(native_event);
77 WebKit::WebKeyboardEvent webkit_event; 77 blink::WebKeyboardEvent webkit_event;
78 78
79 webkit_event.timeStampSeconds = event->time_stamp().InSecondsF(); 79 webkit_event.timeStampSeconds = event->time_stamp().InSecondsF();
80 webkit_event.modifiers = EventFlagsToWebEventModifiers(event->flags()); 80 webkit_event.modifiers = EventFlagsToWebEventModifiers(event->flags());
81 81
82 switch (type) { 82 switch (type) {
83 case ui::ET_KEY_PRESSED: 83 case ui::ET_KEY_PRESSED:
84 webkit_event.type = event->is_char() ? WebKit::WebInputEvent::Char : 84 webkit_event.type = event->is_char() ? blink::WebInputEvent::Char :
85 WebKit::WebInputEvent::RawKeyDown; 85 blink::WebInputEvent::RawKeyDown;
86 break; 86 break;
87 case ui::ET_KEY_RELEASED: 87 case ui::ET_KEY_RELEASED:
88 webkit_event.type = WebKit::WebInputEvent::KeyUp; 88 webkit_event.type = blink::WebInputEvent::KeyUp;
89 break; 89 break;
90 default: 90 default:
91 NOTREACHED(); 91 NOTREACHED();
92 } 92 }
93 93
94 if (webkit_event.modifiers & WebKit::WebInputEvent::AltKey) 94 if (webkit_event.modifiers & blink::WebInputEvent::AltKey)
95 webkit_event.isSystemKey = true; 95 webkit_event.isSystemKey = true;
96 96
97 wchar_t character = ui::KeyboardCodeFromNative(native_event); 97 wchar_t character = ui::KeyboardCodeFromNative(native_event);
98 webkit_event.windowsKeyCode = character; 98 webkit_event.windowsKeyCode = character;
99 webkit_event.nativeKeyCode = character; 99 webkit_event.nativeKeyCode = character;
100 100
101 if (webkit_event.windowsKeyCode == ui::VKEY_RETURN) 101 if (webkit_event.windowsKeyCode == ui::VKEY_RETURN)
102 webkit_event.unmodifiedText[0] = '\r'; 102 webkit_event.unmodifiedText[0] = '\r';
103 else 103 else
104 webkit_event.unmodifiedText[0] = character; 104 webkit_event.unmodifiedText[0] = character;
105 105
106 if (webkit_event.modifiers & WebKit::WebInputEvent::ControlKey) { 106 if (webkit_event.modifiers & blink::WebInputEvent::ControlKey) {
107 webkit_event.text[0] = 107 webkit_event.text[0] =
108 GetControlCharacter( 108 GetControlCharacter(
109 webkit_event.windowsKeyCode, 109 webkit_event.windowsKeyCode,
110 webkit_event.modifiers & WebKit::WebInputEvent::ShiftKey); 110 webkit_event.modifiers & blink::WebInputEvent::ShiftKey);
111 } else { 111 } else {
112 webkit_event.text[0] = webkit_event.unmodifiedText[0]; 112 webkit_event.text[0] = webkit_event.unmodifiedText[0];
113 } 113 }
114 114
115 webkit_event.setKeyIdentifierFromWindowsKeyCode(); 115 webkit_event.setKeyIdentifierFromWindowsKeyCode();
116 116
117 return webkit_event; 117 return webkit_event;
118 } 118 }
119 #endif 119 #endif
120 #if defined(USE_X11) || defined(USE_OZONE) 120 #if defined(USE_X11) || defined(USE_OZONE)
121 WebKit::WebMouseWheelEvent MakeWebMouseWheelEventFromAuraEvent( 121 blink::WebMouseWheelEvent MakeWebMouseWheelEventFromAuraEvent(
122 ui::ScrollEvent* event) { 122 ui::ScrollEvent* event) {
123 WebKit::WebMouseWheelEvent webkit_event; 123 blink::WebMouseWheelEvent webkit_event;
124 124
125 webkit_event.type = WebKit::WebInputEvent::MouseWheel; 125 webkit_event.type = blink::WebInputEvent::MouseWheel;
126 webkit_event.button = WebKit::WebMouseEvent::ButtonNone; 126 webkit_event.button = blink::WebMouseEvent::ButtonNone;
127 webkit_event.modifiers = EventFlagsToWebEventModifiers(event->flags()); 127 webkit_event.modifiers = EventFlagsToWebEventModifiers(event->flags());
128 webkit_event.timeStampSeconds = event->time_stamp().InSecondsF(); 128 webkit_event.timeStampSeconds = event->time_stamp().InSecondsF();
129 webkit_event.hasPreciseScrollingDeltas = true; 129 webkit_event.hasPreciseScrollingDeltas = true;
130 webkit_event.deltaX = event->x_offset(); 130 webkit_event.deltaX = event->x_offset();
131 if (event->x_offset_ordinal() != 0.f && event->x_offset() != 0.f) { 131 if (event->x_offset_ordinal() != 0.f && event->x_offset() != 0.f) {
132 webkit_event.accelerationRatioX = 132 webkit_event.accelerationRatioX =
133 event->x_offset_ordinal() / event->x_offset(); 133 event->x_offset_ordinal() / event->x_offset();
134 } 134 }
135 webkit_event.wheelTicksX = webkit_event.deltaX / kPixelsPerTick; 135 webkit_event.wheelTicksX = webkit_event.deltaX / kPixelsPerTick;
136 webkit_event.deltaY = event->y_offset(); 136 webkit_event.deltaY = event->y_offset();
137 webkit_event.wheelTicksY = webkit_event.deltaY / kPixelsPerTick; 137 webkit_event.wheelTicksY = webkit_event.deltaY / kPixelsPerTick;
138 if (event->y_offset_ordinal() != 0.f && event->y_offset() != 0.f) { 138 if (event->y_offset_ordinal() != 0.f && event->y_offset() != 0.f) {
139 webkit_event.accelerationRatioY = 139 webkit_event.accelerationRatioY =
140 event->y_offset_ordinal() / event->y_offset(); 140 event->y_offset_ordinal() / event->y_offset();
141 } 141 }
142 return webkit_event; 142 return webkit_event;
143 } 143 }
144 144
145 WebKit::WebGestureEvent MakeWebGestureEventFromAuraEvent( 145 blink::WebGestureEvent MakeWebGestureEventFromAuraEvent(
146 ui::ScrollEvent* event) { 146 ui::ScrollEvent* event) {
147 WebKit::WebGestureEvent webkit_event; 147 blink::WebGestureEvent webkit_event;
148 148
149 switch (event->type()) { 149 switch (event->type()) {
150 case ui::ET_SCROLL_FLING_START: 150 case ui::ET_SCROLL_FLING_START:
151 webkit_event.type = WebKit::WebInputEvent::GestureFlingStart; 151 webkit_event.type = blink::WebInputEvent::GestureFlingStart;
152 webkit_event.data.flingStart.velocityX = event->x_offset(); 152 webkit_event.data.flingStart.velocityX = event->x_offset();
153 webkit_event.data.flingStart.velocityY = event->y_offset(); 153 webkit_event.data.flingStart.velocityY = event->y_offset();
154 break; 154 break;
155 case ui::ET_SCROLL_FLING_CANCEL: 155 case ui::ET_SCROLL_FLING_CANCEL:
156 webkit_event.type = WebKit::WebInputEvent::GestureFlingCancel; 156 webkit_event.type = blink::WebInputEvent::GestureFlingCancel;
157 break; 157 break;
158 case ui::ET_SCROLL: 158 case ui::ET_SCROLL:
159 NOTREACHED() << "Invalid gesture type: " << event->type(); 159 NOTREACHED() << "Invalid gesture type: " << event->type();
160 break; 160 break;
161 default: 161 default:
162 NOTREACHED() << "Unknown gesture type: " << event->type(); 162 NOTREACHED() << "Unknown gesture type: " << event->type();
163 } 163 }
164 164
165 webkit_event.sourceDevice = WebKit::WebGestureEvent::Touchpad; 165 webkit_event.sourceDevice = blink::WebGestureEvent::Touchpad;
166 webkit_event.modifiers = EventFlagsToWebEventModifiers(event->flags()); 166 webkit_event.modifiers = EventFlagsToWebEventModifiers(event->flags());
167 webkit_event.timeStampSeconds = event->time_stamp().InSecondsF(); 167 webkit_event.timeStampSeconds = event->time_stamp().InSecondsF();
168 return webkit_event; 168 return webkit_event;
169 } 169 }
170 170
171 #endif 171 #endif
172 172
173 WebKit::WebMouseEvent MakeWebMouseEventFromAuraEvent( 173 blink::WebMouseEvent MakeWebMouseEventFromAuraEvent(
174 ui::MouseEvent* event); 174 ui::MouseEvent* event);
175 WebKit::WebMouseWheelEvent MakeWebMouseWheelEventFromAuraEvent( 175 blink::WebMouseWheelEvent MakeWebMouseWheelEventFromAuraEvent(
176 ui::MouseWheelEvent* event); 176 ui::MouseWheelEvent* event);
177 177
178 // General approach: 178 // General approach:
179 // 179 //
180 // ui::Event only carries a subset of possible event data provided to Aura by 180 // ui::Event only carries a subset of possible event data provided to Aura by
181 // the host platform. WebKit utilizes a larger subset of that information than 181 // the host platform. WebKit utilizes a larger subset of that information than
182 // Aura itself. WebKit includes some built in cracking functionality that we 182 // Aura itself. WebKit includes some built in cracking functionality that we
183 // rely on to obtain this information cleanly and consistently. 183 // rely on to obtain this information cleanly and consistently.
184 // 184 //
185 // The only place where an ui::Event's data differs from what the underlying 185 // The only place where an ui::Event's data differs from what the underlying
186 // base::NativeEvent would provide is position data, since we would like to 186 // base::NativeEvent would provide is position data, since we would like to
187 // provide coordinates relative to the aura::Window that is hosting the 187 // provide coordinates relative to the aura::Window that is hosting the
188 // renderer, not the top level platform window. 188 // renderer, not the top level platform window.
189 // 189 //
190 // The approach is to fully construct a WebKit::WebInputEvent from the 190 // The approach is to fully construct a blink::WebInputEvent from the
191 // ui::Event's base::NativeEvent, and then replace the coordinate fields with 191 // ui::Event's base::NativeEvent, and then replace the coordinate fields with
192 // the translated values from the ui::Event. 192 // the translated values from the ui::Event.
193 // 193 //
194 // The exception is mouse events on linux. The ui::MouseEvent contains enough 194 // The exception is mouse events on linux. The ui::MouseEvent contains enough
195 // necessary information to construct a WebMouseEvent. So instead of extracting 195 // necessary information to construct a WebMouseEvent. So instead of extracting
196 // the information from the XEvent, which can be tricky when supporting both 196 // the information from the XEvent, which can be tricky when supporting both
197 // XInput2 and XInput, the WebMouseEvent is constructed from the 197 // XInput2 and XInput, the WebMouseEvent is constructed from the
198 // ui::MouseEvent. This will not be necessary once only XInput2 is supported. 198 // ui::MouseEvent. This will not be necessary once only XInput2 is supported.
199 // 199 //
200 200
201 WebKit::WebMouseEvent MakeWebMouseEvent(ui::MouseEvent* event) { 201 blink::WebMouseEvent MakeWebMouseEvent(ui::MouseEvent* event) {
202 // Construct an untranslated event from the platform event data. 202 // Construct an untranslated event from the platform event data.
203 WebKit::WebMouseEvent webkit_event = 203 blink::WebMouseEvent webkit_event =
204 #if defined(OS_WIN) 204 #if defined(OS_WIN)
205 // On Windows we have WM_ events comming from desktop and pure aura 205 // On Windows we have WM_ events comming from desktop and pure aura
206 // events comming from metro mode. 206 // events comming from metro mode.
207 event->native_event().message ? 207 event->native_event().message ?
208 MakeUntranslatedWebMouseEventFromNativeEvent(event->native_event()) : 208 MakeUntranslatedWebMouseEventFromNativeEvent(event->native_event()) :
209 MakeWebMouseEventFromAuraEvent(event); 209 MakeWebMouseEventFromAuraEvent(event);
210 #else 210 #else
211 MakeWebMouseEventFromAuraEvent(event); 211 MakeWebMouseEventFromAuraEvent(event);
212 #endif 212 #endif
213 // Replace the event's coordinate fields with translated position data from 213 // Replace the event's coordinate fields with translated position data from
214 // |event|. 214 // |event|.
215 webkit_event.windowX = webkit_event.x = event->x(); 215 webkit_event.windowX = webkit_event.x = event->x();
216 webkit_event.windowY = webkit_event.y = event->y(); 216 webkit_event.windowY = webkit_event.y = event->y();
217 217
218 #if defined(OS_WIN) 218 #if defined(OS_WIN)
219 if (event->native_event().message) 219 if (event->native_event().message)
220 return webkit_event; 220 return webkit_event;
221 #endif 221 #endif
222 const gfx::Point root_point = event->root_location(); 222 const gfx::Point root_point = event->root_location();
223 webkit_event.globalX = root_point.x(); 223 webkit_event.globalX = root_point.x();
224 webkit_event.globalY = root_point.y(); 224 webkit_event.globalY = root_point.y();
225 225
226 return webkit_event; 226 return webkit_event;
227 } 227 }
228 228
229 WebKit::WebMouseWheelEvent MakeWebMouseWheelEvent(ui::MouseWheelEvent* event) { 229 blink::WebMouseWheelEvent MakeWebMouseWheelEvent(ui::MouseWheelEvent* event) {
230 #if defined(OS_WIN) 230 #if defined(OS_WIN)
231 // Construct an untranslated event from the platform event data. 231 // Construct an untranslated event from the platform event data.
232 WebKit::WebMouseWheelEvent webkit_event = event->native_event().message ? 232 blink::WebMouseWheelEvent webkit_event = event->native_event().message ?
233 MakeUntranslatedWebMouseWheelEventFromNativeEvent(event->native_event()) : 233 MakeUntranslatedWebMouseWheelEventFromNativeEvent(event->native_event()) :
234 MakeWebMouseWheelEventFromAuraEvent(event); 234 MakeWebMouseWheelEventFromAuraEvent(event);
235 #else 235 #else
236 WebKit::WebMouseWheelEvent webkit_event = 236 blink::WebMouseWheelEvent webkit_event =
237 MakeWebMouseWheelEventFromAuraEvent(event); 237 MakeWebMouseWheelEventFromAuraEvent(event);
238 #endif 238 #endif
239 239
240 // Replace the event's coordinate fields with translated position data from 240 // Replace the event's coordinate fields with translated position data from
241 // |event|. 241 // |event|.
242 webkit_event.windowX = webkit_event.x = event->x(); 242 webkit_event.windowX = webkit_event.x = event->x();
243 webkit_event.windowY = webkit_event.y = event->y(); 243 webkit_event.windowY = webkit_event.y = event->y();
244 244
245 const gfx::Point root_point = event->root_location(); 245 const gfx::Point root_point = event->root_location();
246 webkit_event.globalX = root_point.x(); 246 webkit_event.globalX = root_point.x();
247 webkit_event.globalY = root_point.y(); 247 webkit_event.globalY = root_point.y();
248 248
249 return webkit_event; 249 return webkit_event;
250 } 250 }
251 251
252 WebKit::WebMouseWheelEvent MakeWebMouseWheelEvent(ui::ScrollEvent* event) { 252 blink::WebMouseWheelEvent MakeWebMouseWheelEvent(ui::ScrollEvent* event) {
253 #if defined(OS_WIN) 253 #if defined(OS_WIN)
254 // Construct an untranslated event from the platform event data. 254 // Construct an untranslated event from the platform event data.
255 WebKit::WebMouseWheelEvent webkit_event = 255 blink::WebMouseWheelEvent webkit_event =
256 MakeUntranslatedWebMouseWheelEventFromNativeEvent(event->native_event()); 256 MakeUntranslatedWebMouseWheelEventFromNativeEvent(event->native_event());
257 #else 257 #else
258 WebKit::WebMouseWheelEvent webkit_event = 258 blink::WebMouseWheelEvent webkit_event =
259 MakeWebMouseWheelEventFromAuraEvent(event); 259 MakeWebMouseWheelEventFromAuraEvent(event);
260 #endif 260 #endif
261 261
262 // Replace the event's coordinate fields with translated position data from 262 // Replace the event's coordinate fields with translated position data from
263 // |event|. 263 // |event|.
264 webkit_event.windowX = webkit_event.x = event->x(); 264 webkit_event.windowX = webkit_event.x = event->x();
265 webkit_event.windowY = webkit_event.y = event->y(); 265 webkit_event.windowY = webkit_event.y = event->y();
266 266
267 const gfx::Point root_point = event->root_location(); 267 const gfx::Point root_point = event->root_location();
268 webkit_event.globalX = root_point.x(); 268 webkit_event.globalX = root_point.x();
269 webkit_event.globalY = root_point.y(); 269 webkit_event.globalY = root_point.y();
270 270
271 return webkit_event; 271 return webkit_event;
272 } 272 }
273 273
274 WebKit::WebKeyboardEvent MakeWebKeyboardEvent(ui::KeyEvent* event) { 274 blink::WebKeyboardEvent MakeWebKeyboardEvent(ui::KeyEvent* event) {
275 // Windows can figure out whether or not to construct a RawKeyDown or a Char 275 // Windows can figure out whether or not to construct a RawKeyDown or a Char
276 // WebInputEvent based on the type of message carried in 276 // WebInputEvent based on the type of message carried in
277 // event->native_event(). X11 is not so fortunate, there is no separate 277 // event->native_event(). X11 is not so fortunate, there is no separate
278 // translated event type, so DesktopHostLinux sends an extra KeyEvent with 278 // translated event type, so DesktopHostLinux sends an extra KeyEvent with
279 // is_char() == true. We need to pass the ui::KeyEvent to the X11 function 279 // is_char() == true. We need to pass the ui::KeyEvent to the X11 function
280 // to detect this case so the right event type can be constructed. 280 // to detect this case so the right event type can be constructed.
281 #if defined(OS_WIN) 281 #if defined(OS_WIN)
282 // Key events require no translation by the aura system. 282 // Key events require no translation by the aura system.
283 return MakeWebKeyboardEventFromNativeEvent(event->native_event()); 283 return MakeWebKeyboardEventFromNativeEvent(event->native_event());
284 #else 284 #else
285 return MakeWebKeyboardEventFromAuraEvent(event); 285 return MakeWebKeyboardEventFromAuraEvent(event);
286 #endif 286 #endif
287 } 287 }
288 288
289 WebKit::WebGestureEvent MakeWebGestureEvent(ui::GestureEvent* event) { 289 blink::WebGestureEvent MakeWebGestureEvent(ui::GestureEvent* event) {
290 WebKit::WebGestureEvent gesture_event; 290 blink::WebGestureEvent gesture_event;
291 #if defined(OS_WIN) 291 #if defined(OS_WIN)
292 if (event->HasNativeEvent()) 292 if (event->HasNativeEvent())
293 gesture_event = MakeWebGestureEventFromNativeEvent(event->native_event()); 293 gesture_event = MakeWebGestureEventFromNativeEvent(event->native_event());
294 else 294 else
295 gesture_event = MakeWebGestureEventFromUIEvent(*event); 295 gesture_event = MakeWebGestureEventFromUIEvent(*event);
296 #else 296 #else
297 gesture_event = MakeWebGestureEventFromUIEvent(*event); 297 gesture_event = MakeWebGestureEventFromUIEvent(*event);
298 #endif 298 #endif
299 299
300 gesture_event.x = event->x(); 300 gesture_event.x = event->x();
301 gesture_event.y = event->y(); 301 gesture_event.y = event->y();
302 302
303 const gfx::Point root_point = event->root_location(); 303 const gfx::Point root_point = event->root_location();
304 gesture_event.globalX = root_point.x(); 304 gesture_event.globalX = root_point.x();
305 gesture_event.globalY = root_point.y(); 305 gesture_event.globalY = root_point.y();
306 306
307 return gesture_event; 307 return gesture_event;
308 } 308 }
309 309
310 WebKit::WebGestureEvent MakeWebGestureEvent(ui::ScrollEvent* event) { 310 blink::WebGestureEvent MakeWebGestureEvent(ui::ScrollEvent* event) {
311 WebKit::WebGestureEvent gesture_event; 311 blink::WebGestureEvent gesture_event;
312 312
313 #if defined(OS_WIN) 313 #if defined(OS_WIN)
314 gesture_event = MakeWebGestureEventFromNativeEvent(event->native_event()); 314 gesture_event = MakeWebGestureEventFromNativeEvent(event->native_event());
315 #else 315 #else
316 gesture_event = MakeWebGestureEventFromAuraEvent(event); 316 gesture_event = MakeWebGestureEventFromAuraEvent(event);
317 #endif 317 #endif
318 318
319 gesture_event.x = event->x(); 319 gesture_event.x = event->x();
320 gesture_event.y = event->y(); 320 gesture_event.y = event->y();
321 321
322 const gfx::Point root_point = event->root_location(); 322 const gfx::Point root_point = event->root_location();
323 gesture_event.globalX = root_point.x(); 323 gesture_event.globalX = root_point.x();
324 gesture_event.globalY = root_point.y(); 324 gesture_event.globalY = root_point.y();
325 325
326 return gesture_event; 326 return gesture_event;
327 } 327 }
328 328
329 WebKit::WebGestureEvent MakeWebGestureEventFlingCancel() { 329 blink::WebGestureEvent MakeWebGestureEventFlingCancel() {
330 WebKit::WebGestureEvent gesture_event; 330 blink::WebGestureEvent gesture_event;
331 331
332 // All other fields are ignored on a GestureFlingCancel event. 332 // All other fields are ignored on a GestureFlingCancel event.
333 gesture_event.type = WebKit::WebInputEvent::GestureFlingCancel; 333 gesture_event.type = blink::WebInputEvent::GestureFlingCancel;
334 gesture_event.sourceDevice = WebKit::WebGestureEvent::Touchpad; 334 gesture_event.sourceDevice = blink::WebGestureEvent::Touchpad;
335 return gesture_event; 335 return gesture_event;
336 } 336 }
337 337
338 WebKit::WebMouseEvent MakeWebMouseEventFromAuraEvent(ui::MouseEvent* event) { 338 blink::WebMouseEvent MakeWebMouseEventFromAuraEvent(ui::MouseEvent* event) {
339 WebKit::WebMouseEvent webkit_event; 339 blink::WebMouseEvent webkit_event;
340 340
341 webkit_event.modifiers = EventFlagsToWebEventModifiers(event->flags()); 341 webkit_event.modifiers = EventFlagsToWebEventModifiers(event->flags());
342 webkit_event.timeStampSeconds = event->time_stamp().InSecondsF(); 342 webkit_event.timeStampSeconds = event->time_stamp().InSecondsF();
343 343
344 webkit_event.button = WebKit::WebMouseEvent::ButtonNone; 344 webkit_event.button = blink::WebMouseEvent::ButtonNone;
345 if (event->flags() & ui::EF_LEFT_MOUSE_BUTTON) 345 if (event->flags() & ui::EF_LEFT_MOUSE_BUTTON)
346 webkit_event.button = WebKit::WebMouseEvent::ButtonLeft; 346 webkit_event.button = blink::WebMouseEvent::ButtonLeft;
347 if (event->flags() & ui::EF_MIDDLE_MOUSE_BUTTON) 347 if (event->flags() & ui::EF_MIDDLE_MOUSE_BUTTON)
348 webkit_event.button = WebKit::WebMouseEvent::ButtonMiddle; 348 webkit_event.button = blink::WebMouseEvent::ButtonMiddle;
349 if (event->flags() & ui::EF_RIGHT_MOUSE_BUTTON) 349 if (event->flags() & ui::EF_RIGHT_MOUSE_BUTTON)
350 webkit_event.button = WebKit::WebMouseEvent::ButtonRight; 350 webkit_event.button = blink::WebMouseEvent::ButtonRight;
351 351
352 switch (event->type()) { 352 switch (event->type()) {
353 case ui::ET_MOUSE_PRESSED: 353 case ui::ET_MOUSE_PRESSED:
354 webkit_event.type = WebKit::WebInputEvent::MouseDown; 354 webkit_event.type = blink::WebInputEvent::MouseDown;
355 webkit_event.clickCount = event->GetClickCount(); 355 webkit_event.clickCount = event->GetClickCount();
356 break; 356 break;
357 case ui::ET_MOUSE_RELEASED: 357 case ui::ET_MOUSE_RELEASED:
358 webkit_event.type = WebKit::WebInputEvent::MouseUp; 358 webkit_event.type = blink::WebInputEvent::MouseUp;
359 webkit_event.clickCount = event->GetClickCount(); 359 webkit_event.clickCount = event->GetClickCount();
360 break; 360 break;
361 case ui::ET_MOUSE_ENTERED: 361 case ui::ET_MOUSE_ENTERED:
362 case ui::ET_MOUSE_EXITED: 362 case ui::ET_MOUSE_EXITED:
363 case ui::ET_MOUSE_MOVED: 363 case ui::ET_MOUSE_MOVED:
364 case ui::ET_MOUSE_DRAGGED: 364 case ui::ET_MOUSE_DRAGGED:
365 webkit_event.type = WebKit::WebInputEvent::MouseMove; 365 webkit_event.type = blink::WebInputEvent::MouseMove;
366 break; 366 break;
367 default: 367 default:
368 NOTIMPLEMENTED() << "Received unexpected event: " << event->type(); 368 NOTIMPLEMENTED() << "Received unexpected event: " << event->type();
369 break; 369 break;
370 } 370 }
371 371
372 return webkit_event; 372 return webkit_event;
373 } 373 }
374 374
375 WebKit::WebMouseWheelEvent MakeWebMouseWheelEventFromAuraEvent( 375 blink::WebMouseWheelEvent MakeWebMouseWheelEventFromAuraEvent(
376 ui::MouseWheelEvent* event) { 376 ui::MouseWheelEvent* event) {
377 WebKit::WebMouseWheelEvent webkit_event; 377 blink::WebMouseWheelEvent webkit_event;
378 378
379 webkit_event.type = WebKit::WebInputEvent::MouseWheel; 379 webkit_event.type = blink::WebInputEvent::MouseWheel;
380 webkit_event.button = WebKit::WebMouseEvent::ButtonNone; 380 webkit_event.button = blink::WebMouseEvent::ButtonNone;
381 webkit_event.modifiers = EventFlagsToWebEventModifiers(event->flags()); 381 webkit_event.modifiers = EventFlagsToWebEventModifiers(event->flags());
382 webkit_event.timeStampSeconds = event->time_stamp().InSecondsF(); 382 webkit_event.timeStampSeconds = event->time_stamp().InSecondsF();
383 webkit_event.deltaX = event->x_offset(); 383 webkit_event.deltaX = event->x_offset();
384 webkit_event.deltaY = event->y_offset(); 384 webkit_event.deltaY = event->y_offset();
385 webkit_event.wheelTicksX = webkit_event.deltaX / kPixelsPerTick; 385 webkit_event.wheelTicksX = webkit_event.deltaX / kPixelsPerTick;
386 webkit_event.wheelTicksY = webkit_event.deltaY / kPixelsPerTick; 386 webkit_event.wheelTicksY = webkit_event.deltaY / kPixelsPerTick;
387 387
388 return webkit_event; 388 return webkit_event;
389 } 389 }
390 390
391 } // namespace content 391 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/renderer_host/web_input_event_aura.h ('k') | content/browser/renderer_host/web_input_event_aura_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698