| Index: app/keyboard_code_conversion_x.cc
|
| ===================================================================
|
| --- app/keyboard_code_conversion_x.cc (revision 71220)
|
| +++ app/keyboard_code_conversion_x.cc (working copy)
|
| @@ -1,281 +0,0 @@
|
| -// Copyright (c) 2010 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#include "app/keyboard_code_conversion_x.h"
|
| -
|
| -#include <X11/keysym.h>
|
| -#include <X11/Xlib.h>
|
| -
|
| -#include "base/logging.h"
|
| -
|
| -namespace app {
|
| -
|
| -// Get an app::KeyboardCode from an X keyevent
|
| -KeyboardCode KeyboardCodeFromXKeyEvent(XEvent* xev) {
|
| - KeySym keysym = XLookupKeysym(&xev->xkey, 0);
|
| -
|
| - // Consult GDK key translation (in WindowsKeyCodeForGdkKeyCode) for details
|
| - // about the following translations.
|
| -
|
| - // TODO(sad): Have |keysym| go through the X map list?
|
| -
|
| - switch (keysym) {
|
| - case XK_BackSpace:
|
| - return VKEY_BACK;
|
| - case XK_Delete:
|
| - case XK_KP_Delete:
|
| - return VKEY_DELETE;
|
| - case XK_Tab:
|
| - case XK_KP_Tab:
|
| - return VKEY_TAB;
|
| - case XK_Linefeed:
|
| - case XK_Return:
|
| - case XK_KP_Enter:
|
| - return VKEY_RETURN;
|
| - case XK_Clear:
|
| - return VKEY_CLEAR;
|
| - case XK_KP_Space:
|
| - case XK_space:
|
| - return VKEY_SPACE;
|
| - case XK_Home:
|
| - case XK_KP_Home:
|
| - return VKEY_HOME;
|
| - case XK_End:
|
| - case XK_KP_End:
|
| - return VKEY_END;
|
| - case XK_Page_Up:
|
| - case XK_KP_Page_Up:
|
| - return VKEY_PRIOR;
|
| - case XK_Page_Down:
|
| - case XK_KP_Page_Down:
|
| - return VKEY_NEXT;
|
| - case XK_Left:
|
| - case XK_KP_Left:
|
| - return VKEY_LEFT;
|
| - case XK_Right:
|
| - case XK_KP_Right:
|
| - return VKEY_RIGHT;
|
| - case XK_Down:
|
| - case XK_KP_Down:
|
| - return VKEY_DOWN;
|
| - case XK_Up:
|
| - case XK_KP_Up:
|
| - return VKEY_UP;
|
| - case XK_Escape:
|
| - return VKEY_ESCAPE;
|
| - case XK_A:
|
| - case XK_a:
|
| - return VKEY_A;
|
| - case XK_B:
|
| - case XK_b:
|
| - return VKEY_B;
|
| - case XK_C:
|
| - case XK_c:
|
| - return VKEY_C;
|
| - case XK_D:
|
| - case XK_d:
|
| - return VKEY_D;
|
| - case XK_E:
|
| - case XK_e:
|
| - return VKEY_E;
|
| - case XK_F:
|
| - case XK_f:
|
| - return VKEY_F;
|
| - case XK_G:
|
| - case XK_g:
|
| - return VKEY_G;
|
| - case XK_H:
|
| - case XK_h:
|
| - return VKEY_H;
|
| - case XK_I:
|
| - case XK_i:
|
| - return VKEY_I;
|
| - case XK_J:
|
| - case XK_j:
|
| - return VKEY_J;
|
| - case XK_K:
|
| - case XK_k:
|
| - return VKEY_K;
|
| - case XK_L:
|
| - case XK_l:
|
| - return VKEY_L;
|
| - case XK_M:
|
| - case XK_m:
|
| - return VKEY_M;
|
| - case XK_N:
|
| - case XK_n:
|
| - return VKEY_N;
|
| - case XK_O:
|
| - case XK_o:
|
| - return VKEY_O;
|
| - case XK_P:
|
| - case XK_p:
|
| - return VKEY_P;
|
| - case XK_Q:
|
| - case XK_q:
|
| - return VKEY_Q;
|
| - case XK_R:
|
| - case XK_r:
|
| - return VKEY_R;
|
| - case XK_S:
|
| - case XK_s:
|
| - return VKEY_S;
|
| - case XK_T:
|
| - case XK_t:
|
| - return VKEY_T;
|
| - case XK_U:
|
| - case XK_u:
|
| - return VKEY_U;
|
| - case XK_V:
|
| - case XK_v:
|
| - return VKEY_V;
|
| - case XK_W:
|
| - case XK_w:
|
| - return VKEY_W;
|
| - case XK_X:
|
| - case XK_x:
|
| - return VKEY_X;
|
| - case XK_Y:
|
| - case XK_y:
|
| - return VKEY_Y;
|
| - case XK_Z:
|
| - case XK_z:
|
| - return VKEY_Z;
|
| - case XK_0:
|
| - return VKEY_0;
|
| - case XK_1:
|
| - return VKEY_1;
|
| - case XK_2:
|
| - return VKEY_2;
|
| - case XK_3:
|
| - return VKEY_3;
|
| - case XK_4:
|
| - return VKEY_4;
|
| - case XK_5:
|
| - return VKEY_5;
|
| - case XK_6:
|
| - return VKEY_6;
|
| - case XK_7:
|
| - return VKEY_7;
|
| - case XK_8:
|
| - return VKEY_8;
|
| - case XK_9:
|
| - return VKEY_9;
|
| -
|
| - case XK_multiply:
|
| - case XK_KP_Multiply:
|
| - return VKEY_MULTIPLY;
|
| - case XK_KP_Add:
|
| - return VKEY_ADD;
|
| - case XK_KP_Separator:
|
| - return VKEY_SEPARATOR;
|
| - case XK_KP_Subtract:
|
| - return VKEY_SUBTRACT;
|
| - case XK_KP_Decimal:
|
| - return VKEY_DECIMAL;
|
| - case XK_KP_Divide:
|
| - return VKEY_DIVIDE;
|
| - case XK_equal:
|
| - case XK_plus:
|
| - return VKEY_OEM_PLUS;
|
| - case XK_comma:
|
| - case XK_less:
|
| - return VKEY_OEM_COMMA;
|
| - case XK_minus:
|
| - case XK_underscore:
|
| - return VKEY_OEM_MINUS;
|
| - case XK_greater:
|
| - case XK_period:
|
| - return VKEY_OEM_PERIOD;
|
| - case XK_colon:
|
| - case XK_semicolon:
|
| - return VKEY_OEM_1;
|
| - case XK_question:
|
| - case XK_slash:
|
| - return VKEY_OEM_2;
|
| - case XK_asciitilde:
|
| - case XK_quoteleft:
|
| - return VKEY_OEM_3;
|
| - case XK_bracketleft:
|
| - case XK_braceleft:
|
| - return VKEY_OEM_4;
|
| - case XK_backslash:
|
| - case XK_bar:
|
| - return VKEY_OEM_5;
|
| - case XK_bracketright:
|
| - case XK_braceright:
|
| - return VKEY_OEM_6;
|
| - case XK_quoteright:
|
| - case XK_quotedbl:
|
| - return VKEY_OEM_7;
|
| - case XK_Shift_L:
|
| - case XK_Shift_R:
|
| - return VKEY_SHIFT;
|
| - case XK_Control_L:
|
| - case XK_Control_R:
|
| - return VKEY_CONTROL;
|
| - case XK_Alt_L:
|
| - case XK_Alt_R:
|
| - return VKEY_MENU;
|
| - case XK_Pause:
|
| - return VKEY_PAUSE;
|
| - case XK_Caps_Lock:
|
| - return VKEY_CAPITAL;
|
| - case XK_Num_Lock:
|
| - return VKEY_NUMLOCK;
|
| - case XK_Scroll_Lock:
|
| - return VKEY_SCROLL;
|
| - case XK_Select:
|
| - return VKEY_SELECT;
|
| - case XK_Print:
|
| - return VKEY_PRINT;
|
| - case XK_Execute:
|
| - return VKEY_EXECUTE;
|
| - case XK_Insert:
|
| - case XK_KP_Insert:
|
| - return VKEY_INSERT;
|
| - case XK_Help:
|
| - return VKEY_HELP;
|
| - case XK_Meta_L:
|
| - case XK_Super_L:
|
| - return VKEY_LWIN;
|
| - case XK_Meta_R:
|
| - case XK_Super_R:
|
| - return VKEY_RWIN;
|
| - case XK_Menu:
|
| - return VKEY_APPS;
|
| - case XK_F1:
|
| - case XK_F2:
|
| - case XK_F3:
|
| - case XK_F4:
|
| - case XK_F5:
|
| - case XK_F6:
|
| - case XK_F7:
|
| - case XK_F8:
|
| - case XK_F9:
|
| - case XK_F10:
|
| - case XK_F11:
|
| - case XK_F12:
|
| - case XK_F13:
|
| - case XK_F14:
|
| - case XK_F15:
|
| - case XK_F16:
|
| - case XK_F17:
|
| - case XK_F18:
|
| - case XK_F19:
|
| - case XK_F20:
|
| - case XK_F21:
|
| - case XK_F22:
|
| - case XK_F23:
|
| - case XK_F24:
|
| - return static_cast<app::KeyboardCode>(VKEY_F1 + (keysym - XK_F1));
|
| -
|
| - // TODO(sad): some keycodes are still missing.
|
| - }
|
| -
|
| - DLOG(WARNING) << "Unknown keycode: " << keysym;
|
| - return VKEY_UNKNOWN;
|
| -}
|
| -
|
| -} // namespace app
|
|
|