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

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

Issue 1975533002: Change ui::Event::time_stamp from TimeDelta to TimeTicks (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 6 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
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 "build/build_config.h" 7 #include "build/build_config.h"
8 #include "content/browser/renderer_host/input/web_input_event_util.h" 8 #include "content/browser/renderer_host/input/web_input_event_util.h"
9 #include "content/browser/renderer_host/ui_events_helper.h" 9 #include "content/browser/renderer_host/ui_events_helper.h"
10 #include "ui/aura/client/screen_position_client.h" 10 #include "ui/aura/client/screen_position_client.h"
11 #include "ui/aura/window.h" 11 #include "ui/aura/window.h"
12 #include "ui/events/base_event_utils.h"
12 #include "ui/events/blink/blink_event_util.h" 13 #include "ui/events/blink/blink_event_util.h"
13 #include "ui/events/event.h" 14 #include "ui/events/event.h"
14 #include "ui/events/event_utils.h" 15 #include "ui/events/event_utils.h"
15 #include "ui/events/keycodes/dom/keycode_converter.h" 16 #include "ui/events/keycodes/dom/keycode_converter.h"
16 #include "ui/events/keycodes/keyboard_code_conversion.h" 17 #include "ui/events/keycodes/keyboard_code_conversion.h"
17 18
18 namespace content { 19 namespace content {
19 20
20 namespace { 21 namespace {
21 22
(...skipping 27 matching lines...) Expand all
49 } 50 }
50 NOTREACHED() << "Unexpected EventPointerType"; 51 NOTREACHED() << "Unexpected EventPointerType";
51 return blink::WebPointerProperties::PointerType::Unknown; 52 return blink::WebPointerProperties::PointerType::Unknown;
52 } 53 }
53 54
54 } // namespace 55 } // namespace
55 56
56 #if defined(OS_WIN) 57 #if defined(OS_WIN)
57 blink::WebMouseEvent MakeUntranslatedWebMouseEventFromNativeEvent( 58 blink::WebMouseEvent MakeUntranslatedWebMouseEventFromNativeEvent(
58 const base::NativeEvent& native_event, 59 const base::NativeEvent& native_event,
59 const base::TimeDelta& time_stamp, 60 const base::TimeTicks& time_stamp,
60 blink::WebPointerProperties::PointerType pointer_type); 61 blink::WebPointerProperties::PointerType pointer_type);
61 blink::WebMouseWheelEvent MakeUntranslatedWebMouseWheelEventFromNativeEvent( 62 blink::WebMouseWheelEvent MakeUntranslatedWebMouseWheelEventFromNativeEvent(
62 const base::NativeEvent& native_event, 63 const base::NativeEvent& native_event,
63 const base::TimeDelta& time_stamp, 64 const base::TimeTicks& time_stamp,
64 blink::WebPointerProperties::PointerType pointer_type); 65 blink::WebPointerProperties::PointerType pointer_type);
65 blink::WebKeyboardEvent MakeWebKeyboardEventFromNativeEvent( 66 blink::WebKeyboardEvent MakeWebKeyboardEventFromNativeEvent(
66 const base::NativeEvent& native_event, 67 const base::NativeEvent& native_event,
67 const base::TimeDelta& time_stamp); 68 const base::TimeTicks& time_stamp);
68 blink::WebGestureEvent MakeWebGestureEventFromNativeEvent( 69 blink::WebGestureEvent MakeWebGestureEventFromNativeEvent(
69 const base::NativeEvent& native_event, 70 const base::NativeEvent& native_event,
70 const base::TimeDelta& time_stamp); 71 const base::TimeTicks& time_stamp);
71 #endif 72 #endif
72 73
73 blink::WebKeyboardEvent MakeWebKeyboardEventFromAuraEvent( 74 blink::WebKeyboardEvent MakeWebKeyboardEventFromAuraEvent(
74 const ui::KeyEvent& event) { 75 const ui::KeyEvent& event) {
75 blink::WebKeyboardEvent webkit_event; 76 blink::WebKeyboardEvent webkit_event;
76 77
77 webkit_event.timeStampSeconds = event.time_stamp().InSecondsF(); 78 webkit_event.timeStampSeconds =
79 ui::EventTimeStampToSeconds(event.time_stamp());
78 webkit_event.modifiers = ui::EventFlagsToWebEventModifiers(event.flags()) | 80 webkit_event.modifiers = ui::EventFlagsToWebEventModifiers(event.flags()) |
79 DomCodeToWebInputEventModifiers(event.code()); 81 DomCodeToWebInputEventModifiers(event.code());
80 82
81 switch (event.type()) { 83 switch (event.type()) {
82 case ui::ET_KEY_PRESSED: 84 case ui::ET_KEY_PRESSED:
83 webkit_event.type = event.is_char() ? blink::WebInputEvent::Char : 85 webkit_event.type = event.is_char() ? blink::WebInputEvent::Char :
84 blink::WebInputEvent::RawKeyDown; 86 blink::WebInputEvent::RawKeyDown;
85 break; 87 break;
86 case ui::ET_KEY_RELEASED: 88 case ui::ET_KEY_RELEASED:
87 webkit_event.type = blink::WebInputEvent::KeyUp; 89 webkit_event.type = blink::WebInputEvent::KeyUp;
(...skipping 22 matching lines...) Expand all
110 return webkit_event; 112 return webkit_event;
111 } 113 }
112 114
113 blink::WebMouseWheelEvent MakeWebMouseWheelEventFromAuraEvent( 115 blink::WebMouseWheelEvent MakeWebMouseWheelEventFromAuraEvent(
114 const ui::ScrollEvent& event) { 116 const ui::ScrollEvent& event) {
115 blink::WebMouseWheelEvent webkit_event; 117 blink::WebMouseWheelEvent webkit_event;
116 118
117 webkit_event.type = blink::WebInputEvent::MouseWheel; 119 webkit_event.type = blink::WebInputEvent::MouseWheel;
118 webkit_event.button = blink::WebMouseEvent::ButtonNone; 120 webkit_event.button = blink::WebMouseEvent::ButtonNone;
119 webkit_event.modifiers = ui::EventFlagsToWebEventModifiers(event.flags()); 121 webkit_event.modifiers = ui::EventFlagsToWebEventModifiers(event.flags());
120 webkit_event.timeStampSeconds = event.time_stamp().InSecondsF(); 122 webkit_event.timeStampSeconds =
123 ui::EventTimeStampToSeconds(event.time_stamp());
121 webkit_event.hasPreciseScrollingDeltas = true; 124 webkit_event.hasPreciseScrollingDeltas = true;
122 125
123 float offset_ordinal_x = 0.f; 126 float offset_ordinal_x = 0.f;
124 float offset_ordinal_y = 0.f; 127 float offset_ordinal_y = 0.f;
125 if ((event.flags() & ui::EF_SHIFT_DOWN) != 0 && event.x_offset() == 0) { 128 if ((event.flags() & ui::EF_SHIFT_DOWN) != 0 && event.x_offset() == 0) {
126 webkit_event.deltaX = event.y_offset(); 129 webkit_event.deltaX = event.y_offset();
127 webkit_event.deltaY = 0; 130 webkit_event.deltaY = 0;
128 offset_ordinal_x = event.y_offset_ordinal(); 131 offset_ordinal_x = event.y_offset_ordinal();
129 offset_ordinal_y = event.x_offset_ordinal(); 132 offset_ordinal_y = event.x_offset_ordinal();
130 } else { 133 } else {
(...skipping 30 matching lines...) Expand all
161 break; 164 break;
162 case ui::ET_SCROLL: 165 case ui::ET_SCROLL:
163 NOTREACHED() << "Invalid gesture type: " << event.type(); 166 NOTREACHED() << "Invalid gesture type: " << event.type();
164 break; 167 break;
165 default: 168 default:
166 NOTREACHED() << "Unknown gesture type: " << event.type(); 169 NOTREACHED() << "Unknown gesture type: " << event.type();
167 } 170 }
168 171
169 webkit_event.sourceDevice = blink::WebGestureDeviceTouchpad; 172 webkit_event.sourceDevice = blink::WebGestureDeviceTouchpad;
170 webkit_event.modifiers = ui::EventFlagsToWebEventModifiers(event.flags()); 173 webkit_event.modifiers = ui::EventFlagsToWebEventModifiers(event.flags());
171 webkit_event.timeStampSeconds = event.time_stamp().InSecondsF(); 174 webkit_event.timeStampSeconds =
175 ui::EventTimeStampToSeconds(event.time_stamp());
172 return webkit_event; 176 return webkit_event;
173 } 177 }
174 178
175 blink::WebMouseEvent MakeWebMouseEventFromAuraEvent( 179 blink::WebMouseEvent MakeWebMouseEventFromAuraEvent(
176 const ui::MouseEvent& event); 180 const ui::MouseEvent& event);
177 blink::WebMouseWheelEvent MakeWebMouseWheelEventFromAuraEvent( 181 blink::WebMouseWheelEvent MakeWebMouseWheelEventFromAuraEvent(
178 const ui::MouseWheelEvent& event); 182 const ui::MouseWheelEvent& event);
179 183
180 // General approach: 184 // General approach:
181 // 185 //
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after
355 gesture_event.globalY = screen_point.y(); 359 gesture_event.globalY = screen_point.y();
356 360
357 return gesture_event; 361 return gesture_event;
358 } 362 }
359 363
360 blink::WebGestureEvent MakeWebGestureEventFlingCancel() { 364 blink::WebGestureEvent MakeWebGestureEventFlingCancel() {
361 blink::WebGestureEvent gesture_event; 365 blink::WebGestureEvent gesture_event;
362 366
363 // All other fields are ignored on a GestureFlingCancel event. 367 // All other fields are ignored on a GestureFlingCancel event.
364 gesture_event.type = blink::WebInputEvent::GestureFlingCancel; 368 gesture_event.type = blink::WebInputEvent::GestureFlingCancel;
365 gesture_event.timeStampSeconds = ui::EventTimeForNow().InSecondsF(); 369 gesture_event.timeStampSeconds =
370 ui::EventTimeStampToSeconds(ui::EventTimeForNow());
366 gesture_event.sourceDevice = blink::WebGestureDeviceTouchpad; 371 gesture_event.sourceDevice = blink::WebGestureDeviceTouchpad;
367 return gesture_event; 372 return gesture_event;
368 } 373 }
369 374
370 blink::WebMouseEvent MakeWebMouseEventFromAuraEvent( 375 blink::WebMouseEvent MakeWebMouseEventFromAuraEvent(
371 const ui::MouseEvent& event) { 376 const ui::MouseEvent& event) {
372 blink::WebMouseEvent webkit_event; 377 blink::WebMouseEvent webkit_event;
373 378
374 webkit_event.modifiers = ui::EventFlagsToWebEventModifiers(event.flags()); 379 webkit_event.modifiers = ui::EventFlagsToWebEventModifiers(event.flags());
375 webkit_event.timeStampSeconds = event.time_stamp().InSecondsF(); 380 webkit_event.timeStampSeconds =
376 381 ui::EventTimeStampToSeconds(event.time_stamp());
377 webkit_event.button = blink::WebMouseEvent::ButtonNone; 382 webkit_event.button = blink::WebMouseEvent::ButtonNone;
378 int button_flags = event.flags(); 383 int button_flags = event.flags();
379 if (event.type() == ui::ET_MOUSE_PRESSED || 384 if (event.type() == ui::ET_MOUSE_PRESSED ||
380 event.type() == ui::ET_MOUSE_RELEASED) { 385 event.type() == ui::ET_MOUSE_RELEASED) {
381 // We want to use changed_button_flags() for mouse pressed & released. 386 // We want to use changed_button_flags() for mouse pressed & released.
382 // These flags can be used only if they are set which is not always the case 387 // These flags can be used only if they are set which is not always the case
383 // (see e.g. GetChangedMouseButtonFlagsFromNative() in events_win.cc). 388 // (see e.g. GetChangedMouseButtonFlagsFromNative() in events_win.cc).
384 if (event.changed_button_flags()) 389 if (event.changed_button_flags())
385 button_flags = event.changed_button_flags(); 390 button_flags = event.changed_button_flags();
386 } 391 }
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
420 return webkit_event; 425 return webkit_event;
421 } 426 }
422 427
423 blink::WebMouseWheelEvent MakeWebMouseWheelEventFromAuraEvent( 428 blink::WebMouseWheelEvent MakeWebMouseWheelEventFromAuraEvent(
424 const ui::MouseWheelEvent& event) { 429 const ui::MouseWheelEvent& event) {
425 blink::WebMouseWheelEvent webkit_event; 430 blink::WebMouseWheelEvent webkit_event;
426 431
427 webkit_event.type = blink::WebInputEvent::MouseWheel; 432 webkit_event.type = blink::WebInputEvent::MouseWheel;
428 webkit_event.button = blink::WebMouseEvent::ButtonNone; 433 webkit_event.button = blink::WebMouseEvent::ButtonNone;
429 webkit_event.modifiers = ui::EventFlagsToWebEventModifiers(event.flags()); 434 webkit_event.modifiers = ui::EventFlagsToWebEventModifiers(event.flags());
430 webkit_event.timeStampSeconds = event.time_stamp().InSecondsF(); 435 webkit_event.timeStampSeconds =
436 ui::EventTimeStampToSeconds(event.time_stamp());
431 437
432 if ((event.flags() & ui::EF_SHIFT_DOWN) != 0 && event.x_offset() == 0) { 438 if ((event.flags() & ui::EF_SHIFT_DOWN) != 0 && event.x_offset() == 0) {
433 webkit_event.deltaX = event.y_offset(); 439 webkit_event.deltaX = event.y_offset();
434 webkit_event.deltaY = 0; 440 webkit_event.deltaY = 0;
435 } else { 441 } else {
436 webkit_event.deltaX = event.x_offset(); 442 webkit_event.deltaX = event.x_offset();
437 webkit_event.deltaY = event.y_offset(); 443 webkit_event.deltaY = event.y_offset();
438 } 444 }
439 445
440 webkit_event.wheelTicksX = webkit_event.deltaX / kPixelsPerTick; 446 webkit_event.wheelTicksX = webkit_event.deltaX / kPixelsPerTick;
441 webkit_event.wheelTicksY = webkit_event.deltaY / kPixelsPerTick; 447 webkit_event.wheelTicksY = webkit_event.deltaY / kPixelsPerTick;
442 448
443 webkit_event.tiltX = roundf(event.pointer_details().tilt_x); 449 webkit_event.tiltX = roundf(event.pointer_details().tilt_x);
444 webkit_event.tiltY = roundf(event.pointer_details().tilt_y); 450 webkit_event.tiltY = roundf(event.pointer_details().tilt_y);
445 webkit_event.force = event.pointer_details().force; 451 webkit_event.force = event.pointer_details().force;
446 webkit_event.pointerType = 452 webkit_event.pointerType =
447 EventPointerTypeToWebPointerType(event.pointer_details().pointer_type); 453 EventPointerTypeToWebPointerType(event.pointer_details().pointer_type);
448 454
449 return webkit_event; 455 return webkit_event;
450 } 456 }
451 457
452 } // namespace content 458 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/renderer_host/ui_events_helper.cc ('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