OLD | NEW |
---|---|
(Empty) | |
1 // Copyright (c) 2012 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. | |
4 | |
5 #include "webkit/plugins/ppapi/usb_key_code_conversion.h" | |
6 | |
7 #include "base/basictypes.h" | |
8 #include "third_party/WebKit/Source/WebKit/chromium/public/WebInputEvent.h" | |
9 | |
10 using WebKit::WebKeyboardEvent; | |
11 | |
12 namespace webkit { | |
13 namespace ppapi { | |
14 | |
15 namespace { | |
16 | |
17 #define USB_KEYMAP(usb, xkb, win, mac) {usb, mac} | |
18 #include "webkit/plugins/ppapi/usb_keycode_map.h" | |
19 | |
20 } // anonymous namespace | |
21 | |
22 uint32_t UsbKeyCodeForKeyboardEvent(const WebKeyboardEvent& key_event) { | |
23 if (key_event.nativeKeyCode < 0 || key_event.nativeKeyCode > 0x7f) | |
24 return 0; | |
25 | |
26 for (uint i = 0; i < arraysize(usb_keycode_map); i++) { | |
tony
2012/03/15 16:46:28
Nit: If we keep usb_keycode_map sorted (looks like
dmichael (off chromium)
2012/03/15 17:03:08
If we were to use binary search, I would recommend
Wez
2012/03/15 17:10:52
Agreed. We can optimize the lookup later if it pr
| |
27 if (usb_keycode_map[i].native_keycode == key_event.nativeKeyCode) | |
28 return usb_keycode_map[i].usb_keycode; | |
29 } | |
30 | |
31 return 0; | |
32 } | |
33 | |
34 } // namespace ppapi | |
35 } // namespace webkit | |
OLD | NEW |