1f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)// Copyright (c) 2013 The Chromium Authors. All rights reserved.
2f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
3f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)// found in the LICENSE file.
4f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
5f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "base/logging.h"
6f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "base/time/time.h"
7a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)#include "build/build_config.h"
8f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "ui/events/event_utils.h"
9f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "ui/gfx/point.h"
10f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "ui/gfx/vector2d.h"
11f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
12f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)namespace ui {
13f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
14f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)// Stub implementations of platform-specific methods in events_util.h, built
155f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)// on platforms that currently do not have a complete implementation of events.
16f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
17f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)void UpdateDeviceList() {
18f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
19f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
20f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
21f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)EventType EventTypeFromNative(const base::NativeEvent& native_event) {
22f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
23f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return ET_UNKNOWN;
24f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
25f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
26f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)int EventFlagsFromNative(const base::NativeEvent& native_event) {
27f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
28f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return 0;
29f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
30f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
31f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)base::TimeDelta EventTimeFromNative(const base::NativeEvent& native_event) {
32f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
33f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return base::TimeDelta();
34f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
35f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
36f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)gfx::Point EventLocationFromNative(const base::NativeEvent& native_event) {
37f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
38f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return gfx::Point();
39f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
40f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
41f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)gfx::Point EventSystemLocationFromNative(
42f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    const base::NativeEvent& native_event) {
43f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
44f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return gfx::Point();
45f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
46f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
47f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)int EventButtonFromNative(const base::NativeEvent& native_event) {
48f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
49f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return 0;
50f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
51f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
52f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)int GetChangedMouseButtonFlagsFromNative(
53f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    const base::NativeEvent& native_event) {
54f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
55f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return 0;
56f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
57f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
58f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)gfx::Vector2d GetMouseWheelOffset(const base::NativeEvent& native_event) {
59f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
60f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return gfx::Vector2d();
61f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
62f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
635c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liubase::NativeEvent CopyNativeEvent(const base::NativeEvent& event) {
645c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu  NOTIMPLEMENTED() <<
655c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu      "Don't know how to copy base::NativeEvent for this platform";
665c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu  return NULL;
675c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu}
685c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu
695c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liuvoid ReleaseCopiedNativeEvent(const base::NativeEvent& event) {
705c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu}
715c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu
725f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)void IncrementTouchIdRefCount(const base::NativeEvent& native_event) {
735f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  NOTIMPLEMENTED();
745f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)}
755f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
76f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)void ClearTouchIdIfReleased(const base::NativeEvent& native_event) {
77f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
78f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
79f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
80f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)int GetTouchId(const base::NativeEvent& native_event) {
81f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
82f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return 0;
83f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
84f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
85f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)float GetTouchRadiusX(const base::NativeEvent& native_event) {
86f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
87f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return 0.f;
88f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
89f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
90f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)float GetTouchRadiusY(const base::NativeEvent& native_event) {
91f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
92f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return 0.f;
93f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
94f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
95f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)float GetTouchAngle(const base::NativeEvent& native_event) {
96f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
97f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return 0.f;
98f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
99f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
100f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)float GetTouchForce(const base::NativeEvent& native_event) {
101f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
102f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return 0.f;
103f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
104f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
105f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)bool GetScrollOffsets(const base::NativeEvent& native_event,
106f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                      float* x_offset,
107f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                      float* y_offset,
108f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                      float* x_offset_ordinal,
109f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                      float* y_offset_ordinal,
110f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                      int* finger_count) {
111f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
112f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return false;
113f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
114f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
115f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)bool GetFlingData(const base::NativeEvent& native_event,
116f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                  float* vx,
117f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                  float* vy,
118f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                  float* vx_ordinal,
119f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                  float* vy_ordinal,
120f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                  bool* is_cancel) {
121f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
122f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return false;
123f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
124f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
125f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)KeyboardCode KeyboardCodeFromNative(const base::NativeEvent& native_event) {
126f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  NOTIMPLEMENTED();
127f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  return static_cast<KeyboardCode>(0);
128f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}
129f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
130a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)const char* CodeFromNative(const base::NativeEvent& native_event) {
131a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  NOTIMPLEMENTED();
132a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  return "";
133a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)}
134a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
135f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)uint32 PlatformKeycodeFromNative(const base::NativeEvent& native_event) {
136f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  NOTIMPLEMENTED();
137f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  return 0;
138f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)}
139f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
1405f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)bool IsCharFromNative(const base::NativeEvent& native_event) {
1415f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  NOTIMPLEMENTED();
1425f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)  return false;
1435f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)}
1445f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)
14503b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)uint32 WindowsKeycodeFromNative(const base::NativeEvent& native_event) {
14603b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)  NOTIMPLEMENTED();
14703b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)  return 0;
14803b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)}
14903b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)
15003b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)uint16 TextFromNative(const base::NativeEvent& native_event) {
15103b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)  NOTIMPLEMENTED();
15203b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)  return 0;
15303b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)}
15403b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)
15503b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)uint16 UnmodifiedTextFromNative(const base::NativeEvent& native_event) {
15603b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)  NOTIMPLEMENTED();
15703b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)  return 0;
15803b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)}
15903b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)
16003b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)
161f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}  // namespace ui
162