OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "remoting/host/event_executor_win.h" | 5 #include "remoting/host/event_executor_win.h" |
6 | 6 |
7 #include <windows.h> | 7 #include <windows.h> |
8 #include "base/keyboard_codes.h" | 8 #include "app/keyboard_codes.h" |
9 #include "base/stl_util-inl.h" | 9 #include "base/stl_util-inl.h" |
10 | 10 |
11 namespace remoting { | 11 namespace remoting { |
12 | 12 |
13 // TODO(hclam): Move this method to base. | 13 // TODO(hclam): Move this method to base. |
14 // TODO(hclam): Using values look ugly, change it to something else. | 14 // TODO(hclam): Using values look ugly, change it to something else. |
15 static base::KeyboardCode WindowsKeyCodeForPosixKeyCode(int keycode) { | 15 static app::KeyboardCode WindowsKeyCodeForPosixKeyCode(int keycode) { |
16 switch (keycode) { | 16 switch (keycode) { |
17 case 0x08: | 17 case 0x08: |
18 return base::VKEY_BACK; | 18 return app::VKEY_BACK; |
19 case 0x09: | 19 case 0x09: |
20 return base::VKEY_TAB; | 20 return app::VKEY_TAB; |
21 case 0x0C: | 21 case 0x0C: |
22 return base::VKEY_CLEAR; | 22 return app::VKEY_CLEAR; |
23 case 0x0D: | 23 case 0x0D: |
24 return base::VKEY_RETURN; | 24 return app::VKEY_RETURN; |
25 case 0x10: | 25 case 0x10: |
26 return base::VKEY_SHIFT; | 26 return app::VKEY_SHIFT; |
27 case 0x11: | 27 case 0x11: |
28 return base::VKEY_CONTROL; | 28 return app::VKEY_CONTROL; |
29 case 0x12: | 29 case 0x12: |
30 return base::VKEY_MENU; | 30 return app::VKEY_MENU; |
31 case 0x13: | 31 case 0x13: |
32 return base::VKEY_PAUSE; | 32 return app::VKEY_PAUSE; |
33 case 0x14: | 33 case 0x14: |
34 return base::VKEY_CAPITAL; | 34 return app::VKEY_CAPITAL; |
35 case 0x15: | 35 case 0x15: |
36 return base::VKEY_KANA; | 36 return app::VKEY_KANA; |
37 case 0x17: | 37 case 0x17: |
38 return base::VKEY_JUNJA; | 38 return app::VKEY_JUNJA; |
39 case 0x18: | 39 case 0x18: |
40 return base::VKEY_FINAL; | 40 return app::VKEY_FINAL; |
41 case 0x19: | 41 case 0x19: |
42 return base::VKEY_KANJI; | 42 return app::VKEY_KANJI; |
43 case 0x1B: | 43 case 0x1B: |
44 return base::VKEY_ESCAPE; | 44 return app::VKEY_ESCAPE; |
45 case 0x1C: | 45 case 0x1C: |
46 return base::VKEY_CONVERT; | 46 return app::VKEY_CONVERT; |
47 case 0x1D: | 47 case 0x1D: |
48 return base::VKEY_NONCONVERT; | 48 return app::VKEY_NONCONVERT; |
49 case 0x1E: | 49 case 0x1E: |
50 return base::VKEY_ACCEPT; | 50 return app::VKEY_ACCEPT; |
51 case 0x1F: | 51 case 0x1F: |
52 return base::VKEY_MODECHANGE; | 52 return app::VKEY_MODECHANGE; |
53 case 0x20: | 53 case 0x20: |
54 return base::VKEY_SPACE; | 54 return app::VKEY_SPACE; |
55 case 0x21: | 55 case 0x21: |
56 return base::VKEY_PRIOR; | 56 return app::VKEY_PRIOR; |
57 case 0x22: | 57 case 0x22: |
58 return base::VKEY_NEXT; | 58 return app::VKEY_NEXT; |
59 case 0x23: | 59 case 0x23: |
60 return base::VKEY_END; | 60 return app::VKEY_END; |
61 case 0x24: | 61 case 0x24: |
62 return base::VKEY_HOME; | 62 return app::VKEY_HOME; |
63 case 0x25: | 63 case 0x25: |
64 return base::VKEY_LEFT; | 64 return app::VKEY_LEFT; |
65 case 0x26: | 65 case 0x26: |
66 return base::VKEY_UP; | 66 return app::VKEY_UP; |
67 case 0x27: | 67 case 0x27: |
68 return base::VKEY_RIGHT; | 68 return app::VKEY_RIGHT; |
69 case 0x28: | 69 case 0x28: |
70 return base::VKEY_DOWN; | 70 return app::VKEY_DOWN; |
71 case 0x29: | 71 case 0x29: |
72 return base::VKEY_SELECT; | 72 return app::VKEY_SELECT; |
73 case 0x2A: | 73 case 0x2A: |
74 return base::VKEY_PRINT; | 74 return app::VKEY_PRINT; |
75 case 0x2B: | 75 case 0x2B: |
76 return base::VKEY_EXECUTE; | 76 return app::VKEY_EXECUTE; |
77 case 0x2C: | 77 case 0x2C: |
78 return base::VKEY_SNAPSHOT; | 78 return app::VKEY_SNAPSHOT; |
79 case 0x2D: | 79 case 0x2D: |
80 return base::VKEY_INSERT; | 80 return app::VKEY_INSERT; |
81 case 0x2E: | 81 case 0x2E: |
82 return base::VKEY_DELETE; | 82 return app::VKEY_DELETE; |
83 case 0x2F: | 83 case 0x2F: |
84 return base::VKEY_HELP; | 84 return app::VKEY_HELP; |
85 case 0x30: | 85 case 0x30: |
86 return base::VKEY_0; | 86 return app::VKEY_0; |
87 case 0x31: | 87 case 0x31: |
88 return base::VKEY_1; | 88 return app::VKEY_1; |
89 case 0x32: | 89 case 0x32: |
90 return base::VKEY_2; | 90 return app::VKEY_2; |
91 case 0x33: | 91 case 0x33: |
92 return base::VKEY_3; | 92 return app::VKEY_3; |
93 case 0x34: | 93 case 0x34: |
94 return base::VKEY_4; | 94 return app::VKEY_4; |
95 case 0x35: | 95 case 0x35: |
96 return base::VKEY_5; | 96 return app::VKEY_5; |
97 case 0x36: | 97 case 0x36: |
98 return base::VKEY_6; | 98 return app::VKEY_6; |
99 case 0x37: | 99 case 0x37: |
100 return base::VKEY_7; | 100 return app::VKEY_7; |
101 case 0x38: | 101 case 0x38: |
102 return base::VKEY_8; | 102 return app::VKEY_8; |
103 case 0x39: | 103 case 0x39: |
104 return base::VKEY_9; | 104 return app::VKEY_9; |
105 case 0x41: | 105 case 0x41: |
106 return base::VKEY_A; | 106 return app::VKEY_A; |
107 case 0x42: | 107 case 0x42: |
108 return base::VKEY_B; | 108 return app::VKEY_B; |
109 case 0x43: | 109 case 0x43: |
110 return base::VKEY_C; | 110 return app::VKEY_C; |
111 case 0x44: | 111 case 0x44: |
112 return base::VKEY_D; | 112 return app::VKEY_D; |
113 case 0x45: | 113 case 0x45: |
114 return base::VKEY_E; | 114 return app::VKEY_E; |
115 case 0x46: | 115 case 0x46: |
116 return base::VKEY_F; | 116 return app::VKEY_F; |
117 case 0x47: | 117 case 0x47: |
118 return base::VKEY_G; | 118 return app::VKEY_G; |
119 case 0x48: | 119 case 0x48: |
120 return base::VKEY_H; | 120 return app::VKEY_H; |
121 case 0x49: | 121 case 0x49: |
122 return base::VKEY_I; | 122 return app::VKEY_I; |
123 case 0x4A: | 123 case 0x4A: |
124 return base::VKEY_J; | 124 return app::VKEY_J; |
125 case 0x4B: | 125 case 0x4B: |
126 return base::VKEY_K; | 126 return app::VKEY_K; |
127 case 0x4C: | 127 case 0x4C: |
128 return base::VKEY_L; | 128 return app::VKEY_L; |
129 case 0x4D: | 129 case 0x4D: |
130 return base::VKEY_M; | 130 return app::VKEY_M; |
131 case 0x4E: | 131 case 0x4E: |
132 return base::VKEY_N; | 132 return app::VKEY_N; |
133 case 0x4F: | 133 case 0x4F: |
134 return base::VKEY_O; | 134 return app::VKEY_O; |
135 case 0x50: | 135 case 0x50: |
136 return base::VKEY_P; | 136 return app::VKEY_P; |
137 case 0x51: | 137 case 0x51: |
138 return base::VKEY_Q; | 138 return app::VKEY_Q; |
139 case 0x52: | 139 case 0x52: |
140 return base::VKEY_R; | 140 return app::VKEY_R; |
141 case 0x53: | 141 case 0x53: |
142 return base::VKEY_S; | 142 return app::VKEY_S; |
143 case 0x54: | 143 case 0x54: |
144 return base::VKEY_T; | 144 return app::VKEY_T; |
145 case 0x55: | 145 case 0x55: |
146 return base::VKEY_U; | 146 return app::VKEY_U; |
147 case 0x56: | 147 case 0x56: |
148 return base::VKEY_V; | 148 return app::VKEY_V; |
149 case 0x57: | 149 case 0x57: |
150 return base::VKEY_W; | 150 return app::VKEY_W; |
151 case 0x58: | 151 case 0x58: |
152 return base::VKEY_X; | 152 return app::VKEY_X; |
153 case 0x59: | 153 case 0x59: |
154 return base::VKEY_Y; | 154 return app::VKEY_Y; |
155 case 0x5A: | 155 case 0x5A: |
156 return base::VKEY_Z; | 156 return app::VKEY_Z; |
157 case 0x5B: | 157 case 0x5B: |
158 return base::VKEY_LWIN; | 158 return app::VKEY_LWIN; |
159 case 0x5C: | 159 case 0x5C: |
160 return base::VKEY_RWIN; | 160 return app::VKEY_RWIN; |
161 case 0x5D: | 161 case 0x5D: |
162 return base::VKEY_APPS; | 162 return app::VKEY_APPS; |
163 case 0x5F: | 163 case 0x5F: |
164 return base::VKEY_SLEEP; | 164 return app::VKEY_SLEEP; |
165 case 0x60: | 165 case 0x60: |
166 return base::VKEY_NUMPAD0; | 166 return app::VKEY_NUMPAD0; |
167 case 0x61: | 167 case 0x61: |
168 return base::VKEY_NUMPAD1; | 168 return app::VKEY_NUMPAD1; |
169 case 0x62: | 169 case 0x62: |
170 return base::VKEY_NUMPAD2; | 170 return app::VKEY_NUMPAD2; |
171 case 0x63: | 171 case 0x63: |
172 return base::VKEY_NUMPAD3; | 172 return app::VKEY_NUMPAD3; |
173 case 0x64: | 173 case 0x64: |
174 return base::VKEY_NUMPAD4; | 174 return app::VKEY_NUMPAD4; |
175 case 0x65: | 175 case 0x65: |
176 return base::VKEY_NUMPAD5; | 176 return app::VKEY_NUMPAD5; |
177 case 0x66: | 177 case 0x66: |
178 return base::VKEY_NUMPAD6; | 178 return app::VKEY_NUMPAD6; |
179 case 0x67: | 179 case 0x67: |
180 return base::VKEY_NUMPAD7; | 180 return app::VKEY_NUMPAD7; |
181 case 0x68: | 181 case 0x68: |
182 return base::VKEY_NUMPAD8; | 182 return app::VKEY_NUMPAD8; |
183 case 0x69: | 183 case 0x69: |
184 return base::VKEY_NUMPAD9; | 184 return app::VKEY_NUMPAD9; |
185 case 0x6A: | 185 case 0x6A: |
186 return base::VKEY_MULTIPLY; | 186 return app::VKEY_MULTIPLY; |
187 case 0x6B: | 187 case 0x6B: |
188 return base::VKEY_ADD; | 188 return app::VKEY_ADD; |
189 case 0x6C: | 189 case 0x6C: |
190 return base::VKEY_SEPARATOR; | 190 return app::VKEY_SEPARATOR; |
191 case 0x6D: | 191 case 0x6D: |
192 return base::VKEY_SUBTRACT; | 192 return app::VKEY_SUBTRACT; |
193 case 0x6E: | 193 case 0x6E: |
194 return base::VKEY_DECIMAL; | 194 return app::VKEY_DECIMAL; |
195 case 0x6F: | 195 case 0x6F: |
196 return base::VKEY_DIVIDE; | 196 return app::VKEY_DIVIDE; |
197 case 0x70: | 197 case 0x70: |
198 return base::VKEY_F1; | 198 return app::VKEY_F1; |
199 case 0x71: | 199 case 0x71: |
200 return base::VKEY_F2; | 200 return app::VKEY_F2; |
201 case 0x72: | 201 case 0x72: |
202 return base::VKEY_F3; | 202 return app::VKEY_F3; |
203 case 0x73: | 203 case 0x73: |
204 return base::VKEY_F4; | 204 return app::VKEY_F4; |
205 case 0x74: | 205 case 0x74: |
206 return base::VKEY_F5; | 206 return app::VKEY_F5; |
207 case 0x75: | 207 case 0x75: |
208 return base::VKEY_F6; | 208 return app::VKEY_F6; |
209 case 0x76: | 209 case 0x76: |
210 return base::VKEY_F7; | 210 return app::VKEY_F7; |
211 case 0x77: | 211 case 0x77: |
212 return base::VKEY_F8; | 212 return app::VKEY_F8; |
213 case 0x78: | 213 case 0x78: |
214 return base::VKEY_F9; | 214 return app::VKEY_F9; |
215 case 0x79: | 215 case 0x79: |
216 return base::VKEY_F10; | 216 return app::VKEY_F10; |
217 case 0x7A: | 217 case 0x7A: |
218 return base::VKEY_F11; | 218 return app::VKEY_F11; |
219 case 0x7B: | 219 case 0x7B: |
220 return base::VKEY_F12; | 220 return app::VKEY_F12; |
221 case 0x7C: | 221 case 0x7C: |
222 return base::VKEY_F13; | 222 return app::VKEY_F13; |
223 case 0x7D: | 223 case 0x7D: |
224 return base::VKEY_F14; | 224 return app::VKEY_F14; |
225 case 0x7E: | 225 case 0x7E: |
226 return base::VKEY_F15; | 226 return app::VKEY_F15; |
227 case 0x7F: | 227 case 0x7F: |
228 return base::VKEY_F16; | 228 return app::VKEY_F16; |
229 case 0x80: | 229 case 0x80: |
230 return base::VKEY_F17; | 230 return app::VKEY_F17; |
231 case 0x81: | 231 case 0x81: |
232 return base::VKEY_F18; | 232 return app::VKEY_F18; |
233 case 0x82: | 233 case 0x82: |
234 return base::VKEY_F19; | 234 return app::VKEY_F19; |
235 case 0x83: | 235 case 0x83: |
236 return base::VKEY_F20; | 236 return app::VKEY_F20; |
237 case 0x84: | 237 case 0x84: |
238 return base::VKEY_F21; | 238 return app::VKEY_F21; |
239 case 0x85: | 239 case 0x85: |
240 return base::VKEY_F22; | 240 return app::VKEY_F22; |
241 case 0x86: | 241 case 0x86: |
242 return base::VKEY_F23; | 242 return app::VKEY_F23; |
243 case 0x87: | 243 case 0x87: |
244 return base::VKEY_F24; | 244 return app::VKEY_F24; |
245 case 0x90: | 245 case 0x90: |
246 return base::VKEY_NUMLOCK; | 246 return app::VKEY_NUMLOCK; |
247 case 0x91: | 247 case 0x91: |
248 return base::VKEY_SCROLL; | 248 return app::VKEY_SCROLL; |
249 case 0xA0: | 249 case 0xA0: |
250 return base::VKEY_LSHIFT; | 250 return app::VKEY_LSHIFT; |
251 case 0xA1: | 251 case 0xA1: |
252 return base::VKEY_RSHIFT; | 252 return app::VKEY_RSHIFT; |
253 case 0xA2: | 253 case 0xA2: |
254 return base::VKEY_LCONTROL; | 254 return app::VKEY_LCONTROL; |
255 case 0xA3: | 255 case 0xA3: |
256 return base::VKEY_RCONTROL; | 256 return app::VKEY_RCONTROL; |
257 case 0xA4: | 257 case 0xA4: |
258 return base::VKEY_LMENU; | 258 return app::VKEY_LMENU; |
259 case 0xA5: | 259 case 0xA5: |
260 return base::VKEY_RMENU; | 260 return app::VKEY_RMENU; |
261 case 0xA6: | 261 case 0xA6: |
262 return base::VKEY_BROWSER_BACK; | 262 return app::VKEY_BROWSER_BACK; |
263 case 0xA7: | 263 case 0xA7: |
264 return base::VKEY_BROWSER_FORWARD; | 264 return app::VKEY_BROWSER_FORWARD; |
265 case 0xA8: | 265 case 0xA8: |
266 return base::VKEY_BROWSER_REFRESH; | 266 return app::VKEY_BROWSER_REFRESH; |
267 case 0xA9: | 267 case 0xA9: |
268 return base::VKEY_BROWSER_STOP; | 268 return app::VKEY_BROWSER_STOP; |
269 case 0xAA: | 269 case 0xAA: |
270 return base::VKEY_BROWSER_SEARCH; | 270 return app::VKEY_BROWSER_SEARCH; |
271 case 0xAB: | 271 case 0xAB: |
272 return base::VKEY_BROWSER_FAVORITES; | 272 return app::VKEY_BROWSER_FAVORITES; |
273 case 0xAC: | 273 case 0xAC: |
274 return base::VKEY_BROWSER_HOME; | 274 return app::VKEY_BROWSER_HOME; |
275 case 0xAD: | 275 case 0xAD: |
276 return base::VKEY_VOLUME_MUTE; | 276 return app::VKEY_VOLUME_MUTE; |
277 case 0xAE: | 277 case 0xAE: |
278 return base::VKEY_VOLUME_DOWN; | 278 return app::VKEY_VOLUME_DOWN; |
279 case 0xAF: | 279 case 0xAF: |
280 return base::VKEY_VOLUME_UP; | 280 return app::VKEY_VOLUME_UP; |
281 case 0xB0: | 281 case 0xB0: |
282 return base::VKEY_MEDIA_NEXT_TRACK; | 282 return app::VKEY_MEDIA_NEXT_TRACK; |
283 case 0xB1: | 283 case 0xB1: |
284 return base::VKEY_MEDIA_PREV_TRACK; | 284 return app::VKEY_MEDIA_PREV_TRACK; |
285 case 0xB2: | 285 case 0xB2: |
286 return base::VKEY_MEDIA_STOP; | 286 return app::VKEY_MEDIA_STOP; |
287 case 0xB3: | 287 case 0xB3: |
288 return base::VKEY_MEDIA_PLAY_PAUSE; | 288 return app::VKEY_MEDIA_PLAY_PAUSE; |
289 case 0xB4: | 289 case 0xB4: |
290 return base::VKEY_MEDIA_LAUNCH_MAIL; | 290 return app::VKEY_MEDIA_LAUNCH_MAIL; |
291 case 0xB5: | 291 case 0xB5: |
292 return base::VKEY_MEDIA_LAUNCH_MEDIA_SELECT; | 292 return app::VKEY_MEDIA_LAUNCH_MEDIA_SELECT; |
293 case 0xB6: | 293 case 0xB6: |
294 return base::VKEY_MEDIA_LAUNCH_APP1; | 294 return app::VKEY_MEDIA_LAUNCH_APP1; |
295 case 0xB7: | 295 case 0xB7: |
296 return base::VKEY_MEDIA_LAUNCH_APP2; | 296 return app::VKEY_MEDIA_LAUNCH_APP2; |
297 case 0xBA: | 297 case 0xBA: |
298 return base::VKEY_OEM_1; | 298 return app::VKEY_OEM_1; |
299 case 0xBB: | 299 case 0xBB: |
300 return base::VKEY_OEM_PLUS; | 300 return app::VKEY_OEM_PLUS; |
301 case 0xBC: | 301 case 0xBC: |
302 return base::VKEY_OEM_COMMA; | 302 return app::VKEY_OEM_COMMA; |
303 case 0xBD: | 303 case 0xBD: |
304 return base::VKEY_OEM_MINUS; | 304 return app::VKEY_OEM_MINUS; |
305 case 0xBE: | 305 case 0xBE: |
306 return base::VKEY_OEM_PERIOD; | 306 return app::VKEY_OEM_PERIOD; |
307 case 0xBF: | 307 case 0xBF: |
308 return base::VKEY_OEM_2; | 308 return app::VKEY_OEM_2; |
309 case 0xC0: | 309 case 0xC0: |
310 return base::VKEY_OEM_3; | 310 return app::VKEY_OEM_3; |
311 case 0xDB: | 311 case 0xDB: |
312 return base::VKEY_OEM_4; | 312 return app::VKEY_OEM_4; |
313 case 0xDC: | 313 case 0xDC: |
314 return base::VKEY_OEM_5; | 314 return app::VKEY_OEM_5; |
315 case 0xDD: | 315 case 0xDD: |
316 return base::VKEY_OEM_6; | 316 return app::VKEY_OEM_6; |
317 case 0xDE: | 317 case 0xDE: |
318 return base::VKEY_OEM_7; | 318 return app::VKEY_OEM_7; |
319 case 0xDF: | 319 case 0xDF: |
320 return base::VKEY_OEM_8; | 320 return app::VKEY_OEM_8; |
321 case 0xE2: | 321 case 0xE2: |
322 return base::VKEY_OEM_102; | 322 return app::VKEY_OEM_102; |
323 case 0xE5: | 323 case 0xE5: |
324 return base::VKEY_PROCESSKEY; | 324 return app::VKEY_PROCESSKEY; |
325 case 0xE7: | 325 case 0xE7: |
326 return base::VKEY_PACKET; | 326 return app::VKEY_PACKET; |
327 case 0xF6: | 327 case 0xF6: |
328 return base::VKEY_ATTN; | 328 return app::VKEY_ATTN; |
329 case 0xF7: | 329 case 0xF7: |
330 return base::VKEY_CRSEL; | 330 return app::VKEY_CRSEL; |
331 case 0xF8: | 331 case 0xF8: |
332 return base::VKEY_EXSEL; | 332 return app::VKEY_EXSEL; |
333 case 0xF9: | 333 case 0xF9: |
334 return base::VKEY_EREOF; | 334 return app::VKEY_EREOF; |
335 case 0xFA: | 335 case 0xFA: |
336 return base::VKEY_PLAY; | 336 return app::VKEY_PLAY; |
337 case 0xFB: | 337 case 0xFB: |
338 return base::VKEY_ZOOM; | 338 return app::VKEY_ZOOM; |
339 case 0xFC: | 339 case 0xFC: |
340 return base::VKEY_NONAME; | 340 return app::VKEY_NONAME; |
341 case 0xFD: | 341 case 0xFD: |
342 return base::VKEY_PA1; | 342 return app::VKEY_PA1; |
343 case 0xFE: | 343 case 0xFE: |
344 return base::VKEY_OEM_CLEAR; | 344 return app::VKEY_OEM_CLEAR; |
345 default: | 345 default: |
346 return base::VKEY_UNKNOWN; | 346 return app::VKEY_UNKNOWN; |
347 } | 347 } |
348 } | 348 } |
349 | 349 |
350 EventExecutorWin::EventExecutorWin() { | 350 EventExecutorWin::EventExecutorWin() { |
351 } | 351 } |
352 | 352 |
353 EventExecutorWin::~EventExecutorWin() { | 353 EventExecutorWin::~EventExecutorWin() { |
354 } | 354 } |
355 | 355 |
356 void EventExecutorWin::HandleInputEvents(ClientMessageList* messages) { | 356 void EventExecutorWin::HandleInputEvents(ClientMessageList* messages) { |
(...skipping 24 matching lines...) Expand all Loading... |
381 if (msg->mouse_up_event().button() == | 381 if (msg->mouse_up_event().button() == |
382 MouseUpEvent::LEFT) { | 382 MouseUpEvent::LEFT) { |
383 mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0); | 383 mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0); |
384 } else if (msg->mouse_up_event().button() == | 384 } else if (msg->mouse_up_event().button() == |
385 MouseUpEvent::RIGHT) { | 385 MouseUpEvent::RIGHT) { |
386 mouse_event(MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0); | 386 mouse_event(MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0); |
387 } else { | 387 } else { |
388 // TODO(hclam): Handle other buttons. | 388 // TODO(hclam): Handle other buttons. |
389 } | 389 } |
390 } else if (msg->has_key_event()) { | 390 } else if (msg->has_key_event()) { |
391 base::KeyboardCode key_code = | 391 app::KeyboardCode key_code = |
392 WindowsKeyCodeForPosixKeyCode(msg->key_event().key()); | 392 WindowsKeyCodeForPosixKeyCode(msg->key_event().key()); |
393 if (key_code != base::VKEY_UNKNOWN) { | 393 if (key_code != app::VKEY_UNKNOWN) { |
394 keybd_event(key_code, MapVirtualKey(key_code, 0), | 394 keybd_event(key_code, MapVirtualKey(key_code, 0), |
395 msg->key_event().pressed() ? 0 : KEYEVENTF_KEYUP, | 395 msg->key_event().pressed() ? 0 : KEYEVENTF_KEYUP, |
396 NULL); | 396 NULL); |
397 } | 397 } |
398 } | 398 } |
399 } | 399 } |
400 // We simply delete all messages. | 400 // We simply delete all messages. |
401 // TODO(hclam): Delete messages processed. | 401 // TODO(hclam): Delete messages processed. |
402 STLDeleteElements<ClientMessageList>(messages); | 402 STLDeleteElements<ClientMessageList>(messages); |
403 } | 403 } |
404 | 404 |
405 } // namespace remoting | 405 } // namespace remoting |
OLD | NEW |