Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(389)

Side by Side Diff: ui/events/keycodes/keyboard_code_conversion_x.h

Issue 954943003: [KeyboardEvent] Use DOM |code| rather than Windows-based key code (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Added missing VKEY in windows for brightness and power Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 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 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 #ifndef UI_EVENTS_KEYCODES_KEYBOARD_CODE_CONVERSION_X_H_ 5 #ifndef UI_EVENTS_KEYCODES_KEYBOARD_CODE_CONVERSION_X_H_
6 #define UI_EVENTS_KEYCODES_KEYBOARD_CODE_CONVERSION_X_H_ 6 #define UI_EVENTS_KEYCODES_KEYBOARD_CODE_CONVERSION_X_H_
7 7
8 #include "base/basictypes.h" 8 #include "base/basictypes.h"
9 #include "base/strings/string16.h"
9 #include "ui/events/events_base_export.h" 10 #include "ui/events/events_base_export.h"
10 #include "ui/events/keycodes/keyboard_codes_posix.h" 11 #include "ui/events/keycodes/keyboard_codes_posix.h"
11 12
12 typedef union _XEvent XEvent; 13 typedef union _XEvent XEvent;
13 typedef struct _XDisplay XDisplay; 14 typedef struct _XDisplay XDisplay;
14 15
15 namespace ui { 16 namespace ui {
16 17
17 enum class DomCode; 18 enum class DomCode;
19 enum class DomKey;
18 20
19 EVENTS_BASE_EXPORT KeyboardCode KeyboardCodeFromXKeyEvent(const XEvent* xev); 21 EVENTS_BASE_EXPORT KeyboardCode KeyboardCodeFromXKeyEvent(const XEvent* xev);
20 22
21 EVENTS_BASE_EXPORT KeyboardCode KeyboardCodeFromXKeysym(unsigned int keysym); 23 EVENTS_BASE_EXPORT KeyboardCode KeyboardCodeFromXKeysym(unsigned int keysym);
22 24
23 EVENTS_BASE_EXPORT DomCode CodeFromXEvent(const XEvent* xev); 25 EVENTS_BASE_EXPORT DomCode CodeFromXEvent(const XEvent* xev);
24 26
25 // Returns a character on a standard US PC keyboard from an XEvent. 27 // Returns a character on a standard US PC keyboard from an XEvent.
26 EVENTS_BASE_EXPORT uint16 GetCharacterFromXEvent(const XEvent* xev); 28 EVENTS_BASE_EXPORT uint16 GetCharacterFromXEvent(const XEvent* xev);
27 29
30 // Returns a DomKey and character from an XEvent.
31 EVENTS_BASE_EXPORT void GetMeaningFromXEvent(const XEvent* xev,
32 DomKey* key,
33 base::char16* character);
34
28 // Converts a KeyboardCode into an X KeySym. 35 // Converts a KeyboardCode into an X KeySym.
29 EVENTS_BASE_EXPORT int XKeysymForWindowsKeyCode(KeyboardCode keycode, 36 EVENTS_BASE_EXPORT int XKeysymForWindowsKeyCode(KeyboardCode keycode,
30 bool shift); 37 bool shift);
31 38
32 // Returns a XKeyEvent keycode (scancode) for a KeyboardCode. Keyboard layouts 39 // Returns a XKeyEvent keycode (scancode) for a KeyboardCode. Keyboard layouts
33 // are usually not injective, so inverse mapping should be avoided when 40 // are usually not injective, so inverse mapping should be avoided when
34 // practical. A round-trip keycode -> KeyboardCode -> keycode will not 41 // practical. A round-trip keycode -> KeyboardCode -> keycode will not
35 // necessarily return the original keycode. 42 // necessarily return the original keycode.
36 EVENTS_BASE_EXPORT unsigned int XKeyCodeForWindowsKeyCode(KeyboardCode key_code, 43 EVENTS_BASE_EXPORT unsigned int XKeyCodeForWindowsKeyCode(KeyboardCode key_code,
37 int flags, 44 int flags,
38 XDisplay* display); 45 XDisplay* display);
39 46
40 // Converts an X keycode into ui::KeyboardCode. 47 // Converts an X keycode into ui::KeyboardCode.
41 EVENTS_BASE_EXPORT KeyboardCode 48 EVENTS_BASE_EXPORT KeyboardCode
42 DefaultKeyboardCodeFromHardwareKeycode(unsigned int hardware_code); 49 DefaultKeyboardCodeFromHardwareKeycode(unsigned int hardware_code);
43 50
44 // Initializes a core XKeyEvent from an XI2 key event. 51 // Initializes a core XKeyEvent from an XI2 key event.
45 EVENTS_BASE_EXPORT void InitXKeyEventFromXIDeviceEvent(const XEvent& src, 52 EVENTS_BASE_EXPORT void InitXKeyEventFromXIDeviceEvent(const XEvent& src,
46 XEvent* dst); 53 XEvent* dst);
47 54
48 } // namespace ui 55 } // namespace ui
49 56
50 #endif // UI_EVENTS_KEYCODES_KEYBOARD_CODE_CONVERSION_X_H_ 57 #endif // UI_EVENTS_KEYCODES_KEYBOARD_CODE_CONVERSION_X_H_
OLDNEW
« no previous file with comments | « ui/events/keycodes/keyboard_code_conversion.cc ('k') | ui/events/keycodes/keyboard_code_conversion_x.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698