Chromium Code Reviews| Index: ui/events/event.cc |
| diff --git a/ui/events/event.cc b/ui/events/event.cc |
| index 6d2df8d8f7224bcee06a4ef01f79a8fc49f083bd..b2dd067c47a3b6c1bc1df827a60c6be6980843dc 100644 |
| --- a/ui/events/event.cc |
| +++ b/ui/events/event.cc |
| @@ -457,6 +457,7 @@ MouseEvent::MouseEvent(const base::NativeEvent& native_event) |
| : LocatedEvent(native_event), |
| changed_button_flags_(GetChangedMouseButtonFlagsFromNative(native_event)), |
| pointer_details_(GetMousePointerDetailsFromNative(native_event)) { |
| + latency()->set_source_event_type(ui::SourceEventType::OTHER); |
| latency()->AddLatencyNumberWithTimestamp( |
| INPUT_EVENT_LATENCY_ORIGINAL_COMPONENT, 0, 0, |
| base::TimeTicks::FromInternalValue(time_stamp().ToInternalValue()), 1); |
| @@ -469,6 +470,7 @@ MouseEvent::MouseEvent(const PointerEvent& pointer_event) |
| : LocatedEvent(pointer_event), |
| changed_button_flags_(pointer_event.changed_button_flags()), |
| pointer_details_(pointer_event.pointer_details()) { |
| + latency()->set_source_event_type(ui::SourceEventType::OTHER); |
| DCHECK(pointer_event.IsMousePointerEvent()); |
| switch (pointer_event.type()) { |
| case ET_POINTER_DOWN: |
| @@ -525,6 +527,7 @@ MouseEvent::MouseEvent(EventType type, |
| changed_button_flags_(changed_button_flags), |
| pointer_details_(PointerDetails(EventPointerType::POINTER_TYPE_MOUSE)) { |
| DCHECK_NE(ET_MOUSEWHEEL, type); |
| + latency()->set_source_event_type(ui::SourceEventType::OTHER); |
| latency()->AddLatencyNumber(INPUT_EVENT_LATENCY_UI_COMPONENT, 0, 0); |
| if (this->type() == ET_MOUSE_MOVED && IsAnyButton()) |
| SetType(ET_MOUSE_DRAGGED); |
| @@ -654,12 +657,14 @@ void MouseEvent::SetClickCount(int click_count) { |
| MouseWheelEvent::MouseWheelEvent(const base::NativeEvent& native_event) |
| : MouseEvent(native_event), |
| offset_(GetMouseWheelOffset(native_event)) { |
| + latency()->set_source_event_type(ui::SourceEventType::WHEEL); |
| } |
| MouseWheelEvent::MouseWheelEvent(const ScrollEvent& scroll_event) |
| : MouseEvent(scroll_event), |
| offset_(gfx::ToRoundedInt(scroll_event.x_offset()), |
| gfx::ToRoundedInt(scroll_event.y_offset())) { |
| + latency()->set_source_event_type(ui::SourceEventType::WHEEL); |
| SetType(ET_MOUSEWHEEL); |
| } |
| @@ -674,12 +679,14 @@ MouseWheelEvent::MouseWheelEvent(const MouseEvent& mouse_event, |
| int x_offset, |
| int y_offset) |
| : MouseEvent(mouse_event), offset_(x_offset, y_offset) { |
| + latency()->set_source_event_type(ui::SourceEventType::WHEEL); |
| SetType(ET_MOUSEWHEEL); |
| } |
| MouseWheelEvent::MouseWheelEvent(const MouseWheelEvent& mouse_wheel_event) |
| : MouseEvent(mouse_wheel_event), |
| offset_(mouse_wheel_event.offset()) { |
| + latency()->set_source_event_type(ui::SourceEventType::WHEEL); |
| DCHECK_EQ(ET_MOUSEWHEEL, type()); |
| } |
| @@ -700,6 +707,7 @@ MouseWheelEvent::MouseWheelEvent(const gfx::Vector2d& offset, |
| // DCHECK for type to enforce that we use MouseWheelEvent() to create |
| // a MouseWheelEvent. |
| SetType(ui::ET_MOUSEWHEEL); |
| + latency()->set_source_event_type(ui::SourceEventType::WHEEL); |
| } |
| #if defined(OS_WIN) |
| @@ -722,6 +730,7 @@ TouchEvent::TouchEvent(const base::NativeEvent& native_event) |
| may_cause_scrolling_(false), |
| should_remove_native_touch_id_mapping_(false), |
| pointer_details_(GetTouchPointerDetailsFromNative(native_event)) { |
| + latency()->set_source_event_type(ui::SourceEventType::TOUCH); |
| latency()->AddLatencyNumberWithTimestamp( |
| INPUT_EVENT_LATENCY_ORIGINAL_COMPONENT, 0, 0, |
| base::TimeTicks::FromInternalValue(time_stamp().ToInternalValue()), 1); |
| @@ -740,6 +749,7 @@ TouchEvent::TouchEvent(const PointerEvent& pointer_event) |
| may_cause_scrolling_(false), |
| should_remove_native_touch_id_mapping_(false), |
| pointer_details_(pointer_event.pointer_details()) { |
| + latency()->set_source_event_type(ui::SourceEventType::TOUCH); |
| DCHECK(pointer_event.IsTouchPointerEvent()); |
| switch (pointer_event.type()) { |
| case ET_POINTER_DOWN: |
| @@ -778,6 +788,7 @@ TouchEvent::TouchEvent(EventType type, |
| may_cause_scrolling_(false), |
| should_remove_native_touch_id_mapping_(false), |
| pointer_details_(PointerDetails(EventPointerType::POINTER_TYPE_TOUCH)) { |
| + latency()->set_source_event_type(ui::SourceEventType::TOUCH); |
| latency()->AddLatencyNumber(INPUT_EVENT_LATENCY_UI_COMPONENT, 0, 0); |
| } |
| @@ -806,6 +817,7 @@ TouchEvent::TouchEvent(EventType type, |
| force, |
| /* tilt_x */ 0.0f, |
| /* tilt_y */ 0.0f)) { |
| + latency()->set_source_event_type(ui::SourceEventType::TOUCH); |
| latency()->AddLatencyNumber(INPUT_EVENT_LATENCY_UI_COMPONENT, 0, 0); |
| FixRotationAngle(); |
| } |
| @@ -886,7 +898,10 @@ PointerEvent::PointerEvent(const PointerEvent& pointer_event) |
| : LocatedEvent(pointer_event), |
| pointer_id_(pointer_event.pointer_id()), |
| changed_button_flags_(pointer_event.changed_button_flags()), |
| - details_(pointer_event.pointer_details()) {} |
| + details_(pointer_event.pointer_details()) { |
| + if (IsTouchPointerEvent()) |
| + latency()->set_source_event_type(ui::SourceEventType::TOUCH); |
|
tdresser
2016/09/12 14:23:08
Should it be set to "OTHER" if it isn't touch?
sahel
2016/09/12 17:02:26
We decided to check the source and set it only in
tdresser
2016/09/12 18:03:44
Don't we only make pointer events for mouse and to
|
| +} |
| PointerEvent::PointerEvent(const MouseEvent& mouse_event) |
| : LocatedEvent(mouse_event), |
| @@ -957,6 +972,7 @@ PointerEvent::PointerEvent(const TouchEvent& touch_event) |
| default: |
| NOTREACHED(); |
| } |
| + latency()->set_source_event_type(ui::SourceEventType::TOUCH); |
| } |
| PointerEvent::PointerEvent(EventType type, |
| @@ -974,7 +990,10 @@ PointerEvent::PointerEvent(EventType type, |
| flags), |
| pointer_id_(pointer_id), |
| changed_button_flags_(changed_button_flags), |
| - details_(pointer_details) {} |
| + details_(pointer_details) { |
| + if (IsTouchPointerEvent()) |
| + latency()->set_source_event_type(ui::SourceEventType::TOUCH); |
| +} |
| const int PointerEvent::kMousePointerId = std::numeric_limits<int32_t>::max(); |
| @@ -1023,13 +1042,16 @@ bool KeyEvent::IsRepeated(const KeyEvent& event) { |
| } |
| KeyEvent::KeyEvent(const base::NativeEvent& native_event) |
| - : KeyEvent(native_event, EventFlagsFromNative(native_event)) {} |
| + : KeyEvent(native_event, EventFlagsFromNative(native_event)) { |
| + latency()->set_source_event_type(ui::SourceEventType::OTHER); |
| +} |
| KeyEvent::KeyEvent(const base::NativeEvent& native_event, int event_flags) |
| : Event(native_event, EventTypeFromNative(native_event), event_flags), |
| key_code_(KeyboardCodeFromNative(native_event)), |
| code_(CodeFromNative(native_event)), |
| is_char_(IsCharFromNative(native_event)) { |
| + latency()->set_source_event_type(ui::SourceEventType::OTHER); |
| if (IsRepeated(*this)) |
| set_flags(flags() | ui::EF_IS_REPEAT); |
| @@ -1051,6 +1073,7 @@ KeyEvent::KeyEvent(EventType type, |
| : Event(type, EventTimeForNow(), flags), |
| key_code_(key_code), |
| code_(UsLayoutKeyboardCodeToDomCode(key_code)) { |
| + latency()->set_source_event_type(ui::SourceEventType::OTHER); |
| } |
| KeyEvent::KeyEvent(EventType type, |
| @@ -1060,6 +1083,7 @@ KeyEvent::KeyEvent(EventType type, |
| : Event(type, EventTimeForNow(), flags), |
| key_code_(key_code), |
| code_(code) { |
| + latency()->set_source_event_type(ui::SourceEventType::OTHER); |
| } |
| KeyEvent::KeyEvent(EventType type, |
| @@ -1071,7 +1095,9 @@ KeyEvent::KeyEvent(EventType type, |
| : Event(type, time_stamp, flags), |
| key_code_(key_code), |
| code_(code), |
| - key_(key) {} |
| + key_(key) { |
| + latency()->set_source_event_type(ui::SourceEventType::OTHER); |
| +} |
| KeyEvent::KeyEvent(base::char16 character, KeyboardCode key_code, int flags) |
| : Event(ET_KEY_PRESSED, EventTimeForNow(), flags), |
| @@ -1079,6 +1105,7 @@ KeyEvent::KeyEvent(base::char16 character, KeyboardCode key_code, int flags) |
| code_(DomCode::NONE), |
| is_char_(true), |
| key_(DomKey::FromCharacter(character)) { |
| + latency()->set_source_event_type(ui::SourceEventType::OTHER); |
| } |
| KeyEvent::KeyEvent(const KeyEvent& rhs) |
| @@ -1087,6 +1114,7 @@ KeyEvent::KeyEvent(const KeyEvent& rhs) |
| code_(rhs.code_), |
| is_char_(rhs.is_char_), |
| key_(rhs.key_) { |
| + latency()->set_source_event_type(ui::SourceEventType::OTHER); |
| } |
| KeyEvent& KeyEvent::operator=(const KeyEvent& rhs) { |
| @@ -1097,6 +1125,7 @@ KeyEvent& KeyEvent::operator=(const KeyEvent& rhs) { |
| key_ = rhs.key_; |
| is_char_ = rhs.is_char_; |
| } |
| + latency()->set_source_event_type(ui::SourceEventType::OTHER); |
| return *this; |
| } |
| @@ -1273,6 +1302,7 @@ ScrollEvent::ScrollEvent(const base::NativeEvent& native_event) |
| NOTREACHED() << "Unexpected event type " << type() |
| << " when constructing a ScrollEvent."; |
| } |
| + latency()->set_source_event_type(ui::SourceEventType::WHEEL); |
| } |
| ScrollEvent::ScrollEvent(EventType type, |
| @@ -1291,6 +1321,7 @@ ScrollEvent::ScrollEvent(EventType type, |
| y_offset_ordinal_(y_offset_ordinal), |
| finger_count_(finger_count) { |
| CHECK(IsScrollEvent()); |
| + latency()->set_source_event_type(ui::SourceEventType::WHEEL); |
| } |
| void ScrollEvent::Scale(const float factor) { |
| @@ -1315,7 +1346,9 @@ GestureEvent::GestureEvent(float x, |
| time_stamp, |
| flags | EF_FROM_TOUCH), |
| details_(details), |
| - unique_touch_event_id_(unique_touch_event_id) {} |
| + unique_touch_event_id_(unique_touch_event_id) { |
| + latency()->set_source_event_type(ui::SourceEventType::TOUCH); |
| +} |
| GestureEvent::~GestureEvent() { |
| } |