| Index: ui/events/keycodes/keyboard_code_conversion_x.cc
|
| diff --git a/ui/events/keycodes/keyboard_code_conversion_x.cc b/ui/events/keycodes/keyboard_code_conversion_x.cc
|
| index 8e420ab29193b7c769b2e4b703522db0d48c6302..b21164e63385deb322baed849fc9eb807cbe4735 100644
|
| --- a/ui/events/keycodes/keyboard_code_conversion_x.cc
|
| +++ b/ui/events/keycodes/keyboard_code_conversion_x.cc
|
| @@ -442,162 +442,99 @@
|
| }
|
|
|
| unsigned int DefaultXKeysymFromHardwareKeycode(unsigned int hardware_code) {
|
| - // This function assumes that X11 is using evdev-based keycodes.
|
| static const unsigned int kHardwareKeycodeMap[] = {
|
| - // This table covers the core 105-key keyboard.
|
| - 0, // 0x00:
|
| - 0, // 0x01:
|
| - 0, // 0x02:
|
| - 0, // 0x03:
|
| - 0, // 0x04:
|
| - 0, // 0x05:
|
| - 0, // 0x06:
|
| - 0, // XKB evdev (XKB - 8) X KeySym
|
| - 0, // === =============== ======
|
| - XK_Escape, // 0x09: KEY_ESC Escape
|
| - XK_1, // 0x0A: KEY_1 1
|
| - XK_2, // 0x0B: KEY_2 2
|
| - XK_3, // 0x0C: KEY_3 3
|
| - XK_4, // 0x0D: KEY_4 4
|
| - XK_5, // 0x0E: KEY_5 5
|
| - XK_6, // 0x0F: KEY_6 6
|
| - XK_7, // 0x10: KEY_7 7
|
| - XK_8, // 0x11: KEY_8 8
|
| - XK_9, // 0x12: KEY_9 9
|
| - XK_0, // 0x13: KEY_0 0
|
| - XK_minus, // 0x14: KEY_MINUS minus
|
| - XK_equal, // 0x15: KEY_EQUAL equal
|
| - XK_BackSpace, // 0x16: KEY_BACKSPACE BackSpace
|
| - XK_Tab, // 0x17: KEY_TAB Tab
|
| - XK_q, // 0x18: KEY_Q q
|
| - XK_w, // 0x19: KEY_W w
|
| - XK_e, // 0x1A: KEY_E e
|
| - XK_r, // 0x1B: KEY_R r
|
| - XK_t, // 0x1C: KEY_T t
|
| - XK_y, // 0x1D: KEY_Y y
|
| - XK_u, // 0x1E: KEY_U u
|
| - XK_i, // 0x1F: KEY_I i
|
| - XK_o, // 0x20: KEY_O o
|
| - XK_p, // 0x21: KEY_P p
|
| - XK_bracketleft, // 0x22: KEY_LEFTBRACE bracketleft
|
| - XK_bracketright, // 0x23: KEY_RIGHTBRACE bracketright
|
| - XK_Return, // 0x24: KEY_ENTER Return
|
| - XK_Control_L, // 0x25: KEY_LEFTCTRL Control_L
|
| - XK_a, // 0x26: KEY_A a
|
| - XK_s, // 0x27: KEY_S s
|
| - XK_d, // 0x28: KEY_D d
|
| - XK_f, // 0x29: KEY_F f
|
| - XK_g, // 0x2A: KEY_G g
|
| - XK_h, // 0x2B: KEY_H h
|
| - XK_j, // 0x2C: KEY_J j
|
| - XK_k, // 0x2D: KEY_K k
|
| - XK_l, // 0x2E: KEY_L l
|
| - XK_semicolon, // 0x2F: KEY_SEMICOLON semicolon
|
| - XK_apostrophe, // 0x30: KEY_APOSTROPHE apostrophe
|
| - XK_grave, // 0x31: KEY_GRAVE grave
|
| - XK_Shift_L, // 0x32: KEY_LEFTSHIFT Shift_L
|
| - XK_backslash, // 0x33: KEY_BACKSLASH backslash
|
| - XK_z, // 0x34: KEY_Z z
|
| - XK_x, // 0x35: KEY_X x
|
| - XK_c, // 0x36: KEY_C c
|
| - XK_v, // 0x37: KEY_V v
|
| - XK_b, // 0x38: KEY_B b
|
| - XK_n, // 0x39: KEY_N n
|
| - XK_m, // 0x3A: KEY_M m
|
| - XK_comma, // 0x3B: KEY_COMMA comma
|
| - XK_period, // 0x3C: KEY_DOT period
|
| - XK_slash, // 0x3D: KEY_SLASH slash
|
| - XK_Shift_R, // 0x3E: KEY_RIGHTSHIFT Shift_R
|
| - 0, // 0x3F: KEY_KPASTERISK KP_Multiply
|
| - XK_Alt_L, // 0x40: KEY_LEFTALT Alt_L
|
| - XK_space, // 0x41: KEY_SPACE space
|
| - XK_Caps_Lock, // 0x42: KEY_CAPSLOCK Caps_Lock
|
| - XK_F1, // 0x43: KEY_F1 F1
|
| - XK_F2, // 0x44: KEY_F2 F2
|
| - XK_F3, // 0x45: KEY_F3 F3
|
| - XK_F4, // 0x46: KEY_F4 F4
|
| - XK_F5, // 0x47: KEY_F5 F5
|
| - XK_F6, // 0x48: KEY_F6 F6
|
| - XK_F7, // 0x49: KEY_F7 F7
|
| - XK_F8, // 0x4A: KEY_F8 F8
|
| - XK_F9, // 0x4B: KEY_F9 F9
|
| - XK_F10, // 0x4C: KEY_F10 F10
|
| - XK_Num_Lock, // 0x4D: KEY_NUMLOCK Num_Lock
|
| - XK_Scroll_Lock, // 0x4E: KEY_SCROLLLOCK Scroll_Lock
|
| - XK_KP_7, // 0x4F: KEY_KP7 KP_7
|
| - XK_KP_8, // 0x50: KEY_KP8 KP_8
|
| - XK_KP_9, // 0x51: KEY_KP9 KP_9
|
| - XK_KP_Subtract, // 0x52: KEY_KPMINUS KP_Subtract
|
| - XK_KP_4, // 0x53: KEY_KP4 KP_4
|
| - XK_KP_5, // 0x54: KEY_KP5 KP_5
|
| - XK_KP_6, // 0x55: KEY_KP6 KP_6
|
| - XK_KP_Add, // 0x56: KEY_KPPLUS KP_Add
|
| - XK_KP_1, // 0x57: KEY_KP1 KP_1
|
| - XK_KP_2, // 0x58: KEY_KP2 KP_2
|
| - XK_KP_3, // 0x59: KEY_KP3 KP_3
|
| - XK_KP_0, // 0x5A: KEY_KP0 KP_0
|
| - XK_KP_Decimal, // 0x5B: KEY_KPDOT KP_Decimal
|
| - 0, // 0x5C:
|
| - XK_Zenkaku_Hankaku, // 0x5D: KEY_ZENKAKUHANKAKU Zenkaku_Hankaku
|
| - XK_backslash, // 0x5E: KEY_102ND backslash
|
| - XK_F11, // 0x5F: KEY_F11 F11
|
| - XK_F12, // 0x60: KEY_F12 F12
|
| - XK_Romaji, // 0x61: KEY_RO Romaji
|
| - XK_Katakana, // 0x62: KEY_KATAKANA Katakana
|
| - XK_Hiragana, // 0x63: KEY_HIRAGANA Hiragana
|
| - XK_Henkan, // 0x64: KEY_HENKAN Henkan
|
| - XK_Hiragana_Katakana, // 0x65: KEY_KATAKANAHIRAGANA Hiragana_Katakana
|
| - XK_Muhenkan, // 0x66: KEY_MUHENKAN Muhenkan
|
| - XK_KP_Separator, // 0x67: KEY_KPJPCOMMA KP_Separator
|
| - XK_KP_Enter, // 0x68: KEY_KPENTER KP_Enter
|
| - XK_Control_R, // 0x69: KEY_RIGHTCTRL Control_R
|
| - XK_KP_Divide, // 0x6A: KEY_KPSLASH KP_Divide
|
| - XK_Print, // 0x6B: KEY_SYSRQ Print
|
| - XK_Alt_R, // 0x6C: KEY_RIGHTALT Alt_R
|
| - XK_Linefeed, // 0x6D: KEY_LINEFEED Linefeed
|
| - XK_Home, // 0x6E: KEY_HOME Home
|
| - XK_Up, // 0x6F: KEY_UP Up
|
| - XK_Page_Up, // 0x70: KEY_PAGEUP Page_Up
|
| - XK_Left, // 0x71: KEY_LEFT Left
|
| - XK_Right, // 0x72: KEY_RIGHT Right
|
| - XK_End, // 0x73: KEY_END End
|
| - XK_Down, // 0x74: KEY_DOWN Down
|
| - XK_Page_Down, // 0x75: KEY_PAGEDOWN Page_Down
|
| - XK_Insert, // 0x76: KEY_INSERT Insert
|
| - XK_Delete, // 0x77: KEY_DELETE Delete
|
| - 0, // 0x78: KEY_MACRO
|
| - XF86XK_AudioMute, // 0x79: KEY_MUTE XF86AudioMute
|
| - XF86XK_AudioLowerVolume, // 0x7A: KEY_VOLUMEDOWN XF86AudioLowerVolume
|
| - XF86XK_AudioRaiseVolume, // 0x7B: KEY_VOLUMEUP XF86AudioRaiseVolume
|
| - XF86XK_PowerOff, // 0x7C: KEY_POWER XF86PowerOff
|
| - XK_KP_Equal, // 0x7D: KEY_KPEQUAL KP_Equal
|
| - XK_plusminus, // 0x7E: KEY_KPPLUSMINUS plusminus
|
| - XK_Pause, // 0x7F: KEY_PAUSE Pause
|
| - XF86XK_LaunchA, // 0x80: KEY_SCALE XF86LaunchA
|
| - XK_KP_Decimal, // 0x81: KEY_KPCOMMA KP_Decimal
|
| - XK_Hangul, // 0x82: KEY_HANGUEL Hangul
|
| - XK_Hangul_Hanja, // 0x83: KEY_HANJA Hangul_Hanja
|
| - XK_yen, // 0x84: KEY_YEN yen
|
| - XK_Super_L, // 0x85: KEY_LEFTMETA Super_L
|
| - XK_Super_R, // 0x86: KEY_RIGHTMETA Super_R
|
| - XK_Menu, // 0x87: KEY_COMPOSE Menu
|
| + 0, // 0x00:
|
| + 0, // 0x01:
|
| + 0, // 0x02:
|
| + 0, // 0x03:
|
| + 0, // 0x04:
|
| + 0, // 0x05:
|
| + 0, // 0x06:
|
| + 0, // 0x07:
|
| + 0, // 0x08:
|
| + XK_Escape, // 0x09: XK_Escape
|
| + XK_1, // 0x0A: XK_1
|
| + XK_2, // 0x0B: XK_2
|
| + XK_3, // 0x0C: XK_3
|
| + XK_4, // 0x0D: XK_4
|
| + XK_5, // 0x0E: XK_5
|
| + XK_6, // 0x0F: XK_6
|
| + XK_7, // 0x10: XK_7
|
| + XK_8, // 0x11: XK_8
|
| + XK_9, // 0x12: XK_9
|
| + XK_0, // 0x13: XK_0
|
| + XK_minus, // 0x14: XK_minus
|
| + XK_equal, // 0x15: XK_equal
|
| + XK_BackSpace, // 0x16: XK_BackSpace
|
| + XK_Tab, // 0x17: XK_Tab
|
| + XK_q, // 0x18: XK_q
|
| + XK_w, // 0x19: XK_w
|
| + XK_e, // 0x1A: XK_e
|
| + XK_r, // 0x1B: XK_r
|
| + XK_t, // 0x1C: XK_t
|
| + XK_y, // 0x1D: XK_y
|
| + XK_u, // 0x1E: XK_u
|
| + XK_i, // 0x1F: XK_i
|
| + XK_o, // 0x20: XK_o
|
| + XK_p, // 0x21: XK_p
|
| + XK_bracketleft, // 0x22: XK_bracketleft
|
| + XK_bracketright, // 0x23: XK_bracketright
|
| + XK_Return, // 0x24: XK_Return
|
| + XK_Control_L, // 0x25: XK_Control_L
|
| + XK_a, // 0x26: XK_a
|
| + XK_s, // 0x27: XK_s
|
| + XK_d, // 0x28: XK_d
|
| + XK_f, // 0x29: XK_f
|
| + XK_g, // 0x2A: XK_g
|
| + XK_h, // 0x2B: XK_h
|
| + XK_j, // 0x2C: XK_j
|
| + XK_k, // 0x2D: XK_k
|
| + XK_l, // 0x2E: XK_l
|
| + XK_semicolon, // 0x2F: XK_semicolon
|
| + XK_apostrophe, // 0x30: XK_apostrophe
|
| + XK_grave, // 0x31: XK_grave
|
| + XK_Shift_L, // 0x32: XK_Shift_L
|
| + XK_backslash, // 0x33: XK_backslash
|
| + XK_z, // 0x34: XK_z
|
| + XK_x, // 0x35: XK_x
|
| + XK_c, // 0x36: XK_c
|
| + XK_v, // 0x37: XK_v
|
| + XK_b, // 0x38: XK_b
|
| + XK_n, // 0x39: XK_n
|
| + XK_m, // 0x3A: XK_m
|
| + XK_comma, // 0x3B: XK_comma
|
| + XK_period, // 0x3C: XK_period
|
| + XK_slash, // 0x3D: XK_slash
|
| + XK_Shift_R, // 0x3E: XK_Shift_R
|
| + 0, // 0x3F: XK_KP_Multiply
|
| + XK_Alt_L, // 0x40: XK_Alt_L
|
| + XK_space, // 0x41: XK_space
|
| + XK_Caps_Lock, // 0x42: XK_Caps_Lock
|
| + XK_F1, // 0x43: XK_F1
|
| + XK_F2, // 0x44: XK_F2
|
| + XK_F3, // 0x45: XK_F3
|
| + XK_F4, // 0x46: XK_F4
|
| + XK_F5, // 0x47: XK_F5
|
| + XK_F6, // 0x48: XK_F6
|
| + XK_F7, // 0x49: XK_F7
|
| + XK_F8, // 0x4A: XK_F8
|
| + XK_F9, // 0x4B: XK_F9
|
| + XK_F10, // 0x4C: XK_F10
|
| + XK_Num_Lock, // 0x4D: XK_Num_Lock
|
| + XK_Scroll_Lock, // 0x4E: XK_Scroll_Lock
|
| };
|
|
|
| if (hardware_code >= arraysize(kHardwareKeycodeMap)) {
|
| - // Additional keycodes used by the Chrome OS top row special function keys.
|
| + // Checks for arrow keys.
|
| switch (hardware_code) {
|
| - case 0xA6: // KEY_BACK
|
| - return XF86XK_Back;
|
| - case 0xA7: // KEY_FORWARD
|
| - return XF86XK_Forward;
|
| - case 0xB5: // KEY_REFRESH
|
| - return XF86XK_Reload;
|
| - case 0xD4: // KEY_DASHBOARD
|
| - return XF86XK_LaunchB;
|
| - case 0xE8: // KEY_BRIGHTNESSDOWN
|
| - return XF86XK_MonBrightnessDown;
|
| - case 0xE9: // KEY_BRIGHTNESSUP
|
| - return XF86XK_MonBrightnessUp;
|
| + case 0x6f:
|
| + return XK_Up;
|
| + case 0x71:
|
| + return XK_Left;
|
| + case 0x72:
|
| + return XK_Right;
|
| + case 0x74:
|
| + return XK_Down;
|
| }
|
| return 0;
|
| }
|
|
|