11 #include "ServiceBroker.h" 13 #include "input/keyboard/XBMC_keysym.h" 14 #include "input/keyboard/XBMC_vkeys.h" 15 #include "settings/AdvancedSettings.h" 16 #include "settings/SettingsComponent.h" 27 static std::array<XBMCKey, XBMCK_LAST> VK_keymap;
29 static void DIB_InitOSKeymap()
32 VK_keymap.fill(XBMCK_UNKNOWN);
34 VK_keymap[VK_BACK] = XBMCK_BACKSPACE;
35 VK_keymap[VK_TAB] = XBMCK_TAB;
36 VK_keymap[VK_CLEAR] = XBMCK_CLEAR;
37 VK_keymap[VK_RETURN] = XBMCK_RETURN;
38 VK_keymap[VK_PAUSE] = XBMCK_PAUSE;
39 VK_keymap[VK_ESCAPE] = XBMCK_ESCAPE;
40 VK_keymap[VK_SPACE] = XBMCK_SPACE;
41 VK_keymap[VK_APOSTROPHE] = XBMCK_QUOTE;
42 VK_keymap[VK_COMMA] = XBMCK_COMMA;
43 VK_keymap[VK_MINUS] = XBMCK_MINUS;
44 VK_keymap[VK_PERIOD] = XBMCK_PERIOD;
45 VK_keymap[VK_SLASH] = XBMCK_SLASH;
46 VK_keymap[VK_0] = XBMCK_0;
47 VK_keymap[VK_1] = XBMCK_1;
48 VK_keymap[VK_2] = XBMCK_2;
49 VK_keymap[VK_3] = XBMCK_3;
50 VK_keymap[VK_4] = XBMCK_4;
51 VK_keymap[VK_5] = XBMCK_5;
52 VK_keymap[VK_6] = XBMCK_6;
53 VK_keymap[VK_7] = XBMCK_7;
54 VK_keymap[VK_8] = XBMCK_8;
55 VK_keymap[VK_9] = XBMCK_9;
56 VK_keymap[VK_SEMICOLON] = XBMCK_SEMICOLON;
57 VK_keymap[VK_EQUALS] = XBMCK_EQUALS;
58 VK_keymap[VK_LBRACKET] = XBMCK_LEFTBRACKET;
59 VK_keymap[VK_BACKSLASH] = XBMCK_BACKSLASH;
60 VK_keymap[VK_OEM_102] = XBMCK_BACKSLASH;
61 VK_keymap[VK_RBRACKET] = XBMCK_RIGHTBRACKET;
62 VK_keymap[VK_GRAVE] = XBMCK_BACKQUOTE;
63 VK_keymap[VK_BACKTICK] = XBMCK_BACKQUOTE;
64 VK_keymap[VK_A] = XBMCK_a;
65 VK_keymap[VK_B] = XBMCK_b;
66 VK_keymap[VK_C] = XBMCK_c;
67 VK_keymap[VK_D] = XBMCK_d;
68 VK_keymap[VK_E] = XBMCK_e;
69 VK_keymap[VK_F] = XBMCK_f;
70 VK_keymap[VK_G] = XBMCK_g;
71 VK_keymap[VK_H] = XBMCK_h;
72 VK_keymap[VK_I] = XBMCK_i;
73 VK_keymap[VK_J] = XBMCK_j;
74 VK_keymap[VK_K] = XBMCK_k;
75 VK_keymap[VK_L] = XBMCK_l;
76 VK_keymap[VK_M] = XBMCK_m;
77 VK_keymap[VK_N] = XBMCK_n;
78 VK_keymap[VK_O] = XBMCK_o;
79 VK_keymap[VK_P] = XBMCK_p;
80 VK_keymap[VK_Q] = XBMCK_q;
81 VK_keymap[VK_R] = XBMCK_r;
82 VK_keymap[VK_S] = XBMCK_s;
83 VK_keymap[VK_T] = XBMCK_t;
84 VK_keymap[VK_U] = XBMCK_u;
85 VK_keymap[VK_V] = XBMCK_v;
86 VK_keymap[VK_W] = XBMCK_w;
87 VK_keymap[VK_X] = XBMCK_x;
88 VK_keymap[VK_Y] = XBMCK_y;
89 VK_keymap[VK_Z] = XBMCK_z;
90 VK_keymap[VK_DELETE] = XBMCK_DELETE;
92 VK_keymap[VK_NUMPAD0] = XBMCK_KP0;
93 VK_keymap[VK_NUMPAD1] = XBMCK_KP1;
94 VK_keymap[VK_NUMPAD2] = XBMCK_KP2;
95 VK_keymap[VK_NUMPAD3] = XBMCK_KP3;
96 VK_keymap[VK_NUMPAD4] = XBMCK_KP4;
97 VK_keymap[VK_NUMPAD5] = XBMCK_KP5;
98 VK_keymap[VK_NUMPAD6] = XBMCK_KP6;
99 VK_keymap[VK_NUMPAD7] = XBMCK_KP7;
100 VK_keymap[VK_NUMPAD8] = XBMCK_KP8;
101 VK_keymap[VK_NUMPAD9] = XBMCK_KP9;
102 VK_keymap[VK_DECIMAL] = XBMCK_KP_PERIOD;
103 VK_keymap[VK_DIVIDE] = XBMCK_KP_DIVIDE;
104 VK_keymap[VK_MULTIPLY] = XBMCK_KP_MULTIPLY;
105 VK_keymap[VK_SUBTRACT] = XBMCK_KP_MINUS;
106 VK_keymap[VK_ADD] = XBMCK_KP_PLUS;
108 VK_keymap[VK_UP] = XBMCK_UP;
109 VK_keymap[VK_DOWN] = XBMCK_DOWN;
110 VK_keymap[VK_RIGHT] = XBMCK_RIGHT;
111 VK_keymap[VK_LEFT] = XBMCK_LEFT;
112 VK_keymap[VK_INSERT] = XBMCK_INSERT;
113 VK_keymap[VK_HOME] = XBMCK_HOME;
114 VK_keymap[VK_END] = XBMCK_END;
115 VK_keymap[VK_PRIOR] = XBMCK_PAGEUP;
116 VK_keymap[VK_NEXT] = XBMCK_PAGEDOWN;
118 VK_keymap[VK_F1] = XBMCK_F1;
119 VK_keymap[VK_F2] = XBMCK_F2;
120 VK_keymap[VK_F3] = XBMCK_F3;
121 VK_keymap[VK_F4] = XBMCK_F4;
122 VK_keymap[VK_F5] = XBMCK_F5;
123 VK_keymap[VK_F6] = XBMCK_F6;
124 VK_keymap[VK_F7] = XBMCK_F7;
125 VK_keymap[VK_F8] = XBMCK_F8;
126 VK_keymap[VK_F9] = XBMCK_F9;
127 VK_keymap[VK_F10] = XBMCK_F10;
128 VK_keymap[VK_F11] = XBMCK_F11;
129 VK_keymap[VK_F12] = XBMCK_F12;
130 VK_keymap[VK_F13] = XBMCK_F13;
131 VK_keymap[VK_F14] = XBMCK_F14;
132 VK_keymap[VK_F15] = XBMCK_F15;
134 VK_keymap[VK_NUMLOCK] = XBMCK_NUMLOCK;
135 VK_keymap[VK_CAPITAL] = XBMCK_CAPSLOCK;
136 VK_keymap[VK_SCROLL] = XBMCK_SCROLLOCK;
137 VK_keymap[VK_RSHIFT] = XBMCK_RSHIFT;
138 VK_keymap[VK_LSHIFT] = XBMCK_LSHIFT;
139 VK_keymap[VK_RCONTROL] = XBMCK_RCTRL;
140 VK_keymap[VK_LCONTROL] = XBMCK_LCTRL;
141 VK_keymap[VK_RMENU] = XBMCK_RALT;
142 VK_keymap[VK_LMENU] = XBMCK_LALT;
143 VK_keymap[VK_RWIN] = XBMCK_RSUPER;
144 VK_keymap[VK_LWIN] = XBMCK_LSUPER;
146 VK_keymap[VK_HELP] = XBMCK_HELP;
148 VK_keymap[VK_PRINT] = XBMCK_PRINT;
150 VK_keymap[VK_SNAPSHOT] = XBMCK_PRINT;
151 VK_keymap[VK_CANCEL] = XBMCK_BREAK;
152 VK_keymap[VK_APPS] = XBMCK_MENU;
156 if (CServiceBroker::GetSettingsComponent()->GetAdvancedSettings()->m_enableMultimediaKeys)
158 VK_keymap[VK_BROWSER_BACK] = XBMCK_BROWSER_BACK;
159 VK_keymap[VK_BROWSER_FORWARD] = XBMCK_BROWSER_FORWARD;
160 VK_keymap[VK_BROWSER_REFRESH] = XBMCK_BROWSER_REFRESH;
161 VK_keymap[VK_BROWSER_STOP] = XBMCK_BROWSER_STOP;
162 VK_keymap[VK_BROWSER_SEARCH] = XBMCK_BROWSER_SEARCH;
163 VK_keymap[VK_BROWSER_FAVORITES] = XBMCK_BROWSER_FAVORITES;
164 VK_keymap[VK_BROWSER_HOME] = XBMCK_BROWSER_HOME;
165 VK_keymap[VK_VOLUME_MUTE] = XBMCK_VOLUME_MUTE;
166 VK_keymap[VK_VOLUME_DOWN] = XBMCK_VOLUME_DOWN;
167 VK_keymap[VK_VOLUME_UP] = XBMCK_VOLUME_UP;
168 VK_keymap[VK_MEDIA_NEXT_TRACK] = XBMCK_MEDIA_NEXT_TRACK;
169 VK_keymap[VK_MEDIA_PREV_TRACK] = XBMCK_MEDIA_PREV_TRACK;
170 VK_keymap[VK_MEDIA_STOP] = XBMCK_MEDIA_STOP;
171 VK_keymap[VK_MEDIA_PLAY_PAUSE] = XBMCK_MEDIA_PLAY_PAUSE;
172 VK_keymap[VK_LAUNCH_MAIL] = XBMCK_LAUNCH_MAIL;
173 VK_keymap[VK_LAUNCH_MEDIA_SELECT] = XBMCK_LAUNCH_MEDIA_SELECT;
174 VK_keymap[VK_LAUNCH_APP1] = XBMCK_LAUNCH_APP1;
175 VK_keymap[VK_LAUNCH_APP2] = XBMCK_LAUNCH_APP2;
Definition: AudioDecoder.h:18