1
#include "base/NativeApp.h"
2
#include "input/input_state.h"
3
#include "input/keycodes.h"
4
#include "util/const_map.h"
6
#include "KeyboardDevice.h"
7
#include "../Common/CommonTypes.h"
11
// TODO: More keys need to be added, but this is more than
13
std::map<int, int> windowsTransTable = InitConstMap<int, int>
50
(VK_OEM_PERIOD, NKCODE_PERIOD)
51
(VK_OEM_COMMA, NKCODE_COMMA)
52
(VK_NUMPAD0, NKCODE_NUMPAD_0)
53
(VK_NUMPAD1, NKCODE_NUMPAD_1)
54
(VK_NUMPAD2, NKCODE_NUMPAD_2)
55
(VK_NUMPAD3, NKCODE_NUMPAD_3)
56
(VK_NUMPAD4, NKCODE_NUMPAD_4)
57
(VK_NUMPAD5, NKCODE_NUMPAD_5)
58
(VK_NUMPAD6, NKCODE_NUMPAD_6)
59
(VK_NUMPAD7, NKCODE_NUMPAD_7)
60
(VK_NUMPAD8, NKCODE_NUMPAD_8)
61
(VK_NUMPAD9, NKCODE_NUMPAD_9)
62
(VK_DECIMAL, NKCODE_NUMPAD_DOT)
63
(VK_DIVIDE, NKCODE_NUMPAD_DIVIDE)
64
(VK_MULTIPLY, NKCODE_NUMPAD_MULTIPLY)
65
(VK_SUBTRACT, NKCODE_NUMPAD_SUBTRACT)
66
(VK_ADD, NKCODE_NUMPAD_ADD)
67
(VK_SEPARATOR, NKCODE_NUMPAD_COMMA)
68
(VK_OEM_MINUS, NKCODE_MINUS)
69
(VK_OEM_PLUS, NKCODE_PLUS)
70
(VK_LCONTROL, NKCODE_CTRL_LEFT)
71
(VK_RCONTROL, NKCODE_CTRL_RIGHT)
72
(VK_LSHIFT, NKCODE_SHIFT_LEFT)
73
(VK_RSHIFT, NKCODE_SHIFT_RIGHT)
74
(VK_LMENU, NKCODE_ALT_LEFT)
75
(VK_RMENU, NKCODE_ALT_RIGHT)
76
(VK_BACK, NKCODE_DEL) // yes! http://stackoverflow.com/questions/4886858/android-edittext-deletebackspace-key-event
77
(VK_SPACE, NKCODE_SPACE)
78
(VK_ESCAPE, NKCODE_ESCAPE)
79
(VK_UP, NKCODE_DPAD_UP)
80
(VK_INSERT, NKCODE_INSERT)
81
(VK_HOME, NKCODE_MOVE_HOME)
82
(VK_PRIOR, NKCODE_PAGE_UP)
83
(VK_NEXT, NKCODE_PAGE_DOWN)
84
(VK_DELETE, NKCODE_FORWARD_DEL)
85
(VK_END, NKCODE_MOVE_END)
87
(VK_DOWN, NKCODE_DPAD_DOWN)
88
(VK_LEFT, NKCODE_DPAD_LEFT)
89
(VK_RIGHT, NKCODE_DPAD_RIGHT)
90
(VK_CAPITAL, NKCODE_CAPS_LOCK)
91
(VK_CLEAR, NKCODE_CLEAR)
92
(VK_SNAPSHOT, NKCODE_SYSRQ)
93
(VK_SCROLL, NKCODE_SCROLL_LOCK)
94
(VK_OEM_1, NKCODE_SEMICOLON)
95
(VK_OEM_2, NKCODE_SLASH)
96
(VK_OEM_3, NKCODE_GRAVE)
97
(VK_OEM_4, NKCODE_LEFT_BRACKET)
98
(VK_OEM_5, NKCODE_BACKSLASH)
99
(VK_OEM_6, NKCODE_RIGHT_BRACKET)
100
(VK_OEM_7, NKCODE_APOSTROPHE)
101
(VK_RETURN, NKCODE_ENTER)
102
(VK_APPS, NKCODE_MENU) // Context menu key, let's call this "menu".
103
(VK_PAUSE, NKCODE_BREAK)
116
(VK_OEM_102, NKCODE_EXT_PIPE)
117
(VK_LBUTTON, NKCODE_EXT_MOUSEBUTTON_1)
118
(VK_RBUTTON, NKCODE_EXT_MOUSEBUTTON_2);
120
int KeyboardDevice::UpdateState(InputState &input_state) {
121
// Nothing to do, all done in WM_INPUT