| 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 bf7d1586981a47f30ff5ac6957726762735b3f62..559463f6a55712a9190a70428feb388e517aabb5 100644
|
| --- a/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.cc
|
| +++ b/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.cc
|
| @@ -17,6 +17,7 @@
|
| #include "ui/events/keycodes/dom3/dom_code.h"
|
| #include "ui/events/keycodes/dom3/dom_key.h"
|
| #include "ui/events/keycodes/dom4/keycode_converter.h"
|
| +#include "ui/events/keycodes/keyboard_code_conversion.h"
|
| #include "ui/events/ozone/layout/layout_util.h"
|
| #include "ui/events/ozone/layout/xkb/xkb_keyboard_code_conversion.h"
|
|
|
| @@ -774,6 +775,12 @@ bool XkbKeyboardLayoutEngine::Lookup(DomCode dom_code,
|
| if (*key_code == VKEY_UNKNOWN)
|
| *key_code = DomCodeToNonLocatedKeyboardCode(dom_code);
|
| }
|
| +
|
| + if ((flags & EF_CONTROL_DOWN) == EF_CONTROL_DOWN) {
|
| + // Use GetCharacterFromKeyCode() to set |character| to 0x0 for key codes
|
| + // that we do not care about.
|
| + *character = GetCharacterFromKeyCode(*key_code, flags);
|
| + }
|
| } else if (*dom_key == DomKey::DEAD) {
|
| *character = DeadXkbKeySymToCombiningCharacter(xkb_keysym);
|
| *key_code = DomCodeToNonLocatedKeyboardCode(dom_code);
|
|
|