Chromium Code Reviews| Index: ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.cc |
| diff --git a/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.cc b/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.cc |
| index 2d47cafe2368ca7aa6bf46321379ea8fc879a958..aca6a8731339b05eb94f5217bb3555a6eedeaca5 100644 |
| --- a/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.cc |
| +++ b/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.cc |
| @@ -788,12 +788,10 @@ bool XkbKeyboardLayoutEngine::Lookup(DomCode dom_code, |
| if (*key_code == VKEY_UNKNOWN) |
| *key_code = DomCodeToUsLayoutKeyboardCode(dom_code); |
| } |
| - |
| - if ((flags & EF_CONTROL_DOWN) == EF_CONTROL_DOWN) { |
| - // Use GetCharacterFromKeyCode() to set |character| to 0x0 for keys that |
| - // are not part of the accepted set of Control+Key combinations. |
| - *character = GetCharacterFromKeyCode(*key_code, flags); |
| - } |
| + // If the Control key is down, only allow C0 characters to be returned, |
|
Wez
2015/04/21 22:08:46
C0 characters..?
kpschoedel
2015/04/21 22:36:38
Standardese for ASCII control characters. Changed
|
| + // regardless of the key layout. crbug.com/450849 |
| + if ((flags & EF_CONTROL_DOWN) && (*character >= 0x20)) |
| + *character = 0; |
| } else if (*dom_key == DomKey::DEAD) { |
| *character = DeadXkbKeySymToCombiningCharacter(xkb_keysym); |
| *key_code = DomCodeToUsLayoutKeyboardCode(dom_code); |