Home | History | Annotate | Download | only in keycodes
      1 // Copyright (c) 2011 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 #ifndef UI_EVENTS_KEYCODES_KEYBOARD_CODE_CONVERSION_X_H_
      6 #define UI_EVENTS_KEYCODES_KEYBOARD_CODE_CONVERSION_X_H_
      7 
      8 #include "base/basictypes.h"
      9 #include "ui/events/events_base_export.h"
     10 #include "ui/events/keycodes/keyboard_codes_posix.h"
     11 
     12 typedef union _XEvent XEvent;
     13 
     14 namespace ui {
     15 
     16 EVENTS_BASE_EXPORT KeyboardCode KeyboardCodeFromXKeyEvent(XEvent* xev);
     17 
     18 EVENTS_BASE_EXPORT KeyboardCode KeyboardCodeFromXKeysym(unsigned int keysym);
     19 
     20 EVENTS_BASE_EXPORT const char* CodeFromXEvent(XEvent* xev);
     21 
     22 // Returns a character on a standard US PC keyboard from an XEvent.
     23 EVENTS_BASE_EXPORT uint16 GetCharacterFromXEvent(XEvent* xev);
     24 
     25 // Converts a KeyboardCode into an X KeySym.
     26 EVENTS_BASE_EXPORT int XKeysymForWindowsKeyCode(KeyboardCode keycode,
     27                                                 bool shift);
     28 
     29 // Converts an X keycode into ui::KeyboardCode.
     30 EVENTS_BASE_EXPORT KeyboardCode
     31     DefaultKeyboardCodeFromHardwareKeycode(unsigned int hardware_code);
     32 
     33 }  // namespace ui
     34 
     35 #endif  // UI_EVENTS_KEYCODES_KEYBOARD_CODE_CONVERSION_X_H_
     36