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

Unified Diff: ui/events/keycodes/keyboard_code_conversion_x.h

Issue 378503007: Fix some surprising reverse key mappings. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Address review comments (derat) Created 6 years, 5 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 side-by-side diff with in-line comments
Download patch
Index: ui/events/keycodes/keyboard_code_conversion_x.h
diff --git a/ui/events/keycodes/keyboard_code_conversion_x.h b/ui/events/keycodes/keyboard_code_conversion_x.h
index f9186ca0c885701107feb19f746d54bcc88a3993..b7ca7422082c81f1b5d70574ce0a2785b0ad5e7c 100644
--- a/ui/events/keycodes/keyboard_code_conversion_x.h
+++ b/ui/events/keycodes/keyboard_code_conversion_x.h
@@ -10,6 +10,7 @@
#include "ui/events/keycodes/keyboard_codes_posix.h"
typedef union _XEvent XEvent;
+typedef struct _XDisplay XDisplay;
namespace ui {
@@ -26,6 +27,14 @@ EVENTS_BASE_EXPORT uint16 GetCharacterFromXEvent(XEvent* xev);
EVENTS_BASE_EXPORT int XKeysymForWindowsKeyCode(KeyboardCode keycode,
bool shift);
+// Returns a XKeyEvent keycode (scancode) for a KeyboardCode. Keyboard layouts
+// are usually not injective, so inverse mapping should be avoided when
+// practical. A round-trip keycode -> KeyboardCode -> keycode will not
+// necessarily return the original keycode.
+EVENTS_BASE_EXPORT unsigned int XKeysymForWindowsKeyCode(KeyboardCode key_code,
Daniel Erat 2014/07/08 14:49:31 s/XKeysym/XKeyCode/
+ int flags,
+ XDisplay* display);
+
// Converts an X keycode into ui::KeyboardCode.
EVENTS_BASE_EXPORT KeyboardCode
DefaultKeyboardCodeFromHardwareKeycode(unsigned int hardware_code);

Powered by Google App Engine
This is Rietveld 408576698