1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "ui/events/event.h"
6 #include "ui/events/event_constants.h"
7 #include "ui/events/event_utils.h"
11 void UpdateDeviceList() { NOTIMPLEMENTED(); }
13 base::TimeDelta EventTimeFromNative(const base::NativeEvent& native_event) {
14 const ui::Event* event = static_cast<const ui::Event*>(native_event);
15 return event->time_stamp();
18 int EventFlagsFromNative(const base::NativeEvent& native_event) {
19 const ui::Event* event = static_cast<const ui::Event*>(native_event);
20 return event->flags();
23 EventType EventTypeFromNative(const base::NativeEvent& native_event) {
24 const ui::Event* event = static_cast<const ui::Event*>(native_event);
28 gfx::Point EventSystemLocationFromNative(
29 const base::NativeEvent& native_event) {
30 const ui::LocatedEvent* e =
31 static_cast<const ui::LocatedEvent*>(native_event);
32 DCHECK(e->IsMouseEvent() || e->IsTouchEvent() || e->IsGestureEvent() ||
37 gfx::Point EventLocationFromNative(const base::NativeEvent& native_event) {
38 return EventSystemLocationFromNative(native_event);
41 int GetChangedMouseButtonFlagsFromNative(
42 const base::NativeEvent& native_event) {
43 const ui::MouseEvent* event =
44 static_cast<const ui::MouseEvent*>(native_event);
45 DCHECK(event->IsMouseEvent());
46 return event->changed_button_flags();
49 KeyboardCode KeyboardCodeFromNative(const base::NativeEvent& native_event) {
50 const ui::KeyEvent* event = static_cast<const ui::KeyEvent*>(native_event);
51 DCHECK(event->IsKeyEvent());
52 return event->key_code();
55 const char* CodeFromNative(const base::NativeEvent& native_event) {
56 const ui::KeyEvent* event = static_cast<const ui::KeyEvent*>(native_event);
57 DCHECK(event->IsKeyEvent());
58 return event->code().c_str();
61 gfx::Vector2d GetMouseWheelOffset(const base::NativeEvent& native_event) {
62 const ui::MouseWheelEvent* event =
63 static_cast<const ui::MouseWheelEvent*>(native_event);
64 DCHECK(event->type() == ET_MOUSEWHEEL);
65 return event->offset();
68 base::NativeEvent CopyNativeEvent(const base::NativeEvent& event) {
72 void ReleaseCopiedNativeEvent(const base::NativeEvent& event) {
75 void ClearTouchIdIfReleased(const base::NativeEvent& xev) {
78 int GetTouchId(const base::NativeEvent& native_event) {
79 const ui::TouchEvent* event =
80 static_cast<const ui::TouchEvent*>(native_event);
81 DCHECK(event->IsTouchEvent());
82 return event->touch_id();
85 float GetTouchRadiusX(const base::NativeEvent& native_event) {
86 const ui::TouchEvent* event =
87 static_cast<const ui::TouchEvent*>(native_event);
88 DCHECK(event->IsTouchEvent());
89 return event->radius_x();
92 float GetTouchRadiusY(const base::NativeEvent& native_event) {
93 const ui::TouchEvent* event =
94 static_cast<const ui::TouchEvent*>(native_event);
95 DCHECK(event->IsTouchEvent());
96 return event->radius_y();
99 float GetTouchAngle(const base::NativeEvent& native_event) {
100 const ui::TouchEvent* event =
101 static_cast<const ui::TouchEvent*>(native_event);
102 DCHECK(event->IsTouchEvent());
103 return event->rotation_angle();
106 float GetTouchForce(const base::NativeEvent& native_event) {
107 const ui::TouchEvent* event =
108 static_cast<const ui::TouchEvent*>(native_event);
109 DCHECK(event->IsTouchEvent());
110 return event->force();
113 bool GetScrollOffsets(const base::NativeEvent& native_event,
116 float* x_offset_ordinal,
117 float* y_offset_ordinal,
123 bool GetFlingData(const base::NativeEvent& native_event,
133 bool GetGestureTimes(const base::NativeEvent& native_event,
141 void SetNaturalScroll(bool /* enabled */) { NOTIMPLEMENTED(); }
143 bool IsNaturalScrollEnabled() { return false; }
145 bool IsTouchpadEvent(const base::NativeEvent& event) {
150 int GetModifiersFromKeyState() {