| Index: chrome/browser/chromeos/input_method/input_method_engine.cc
|
| diff --git a/chrome/browser/chromeos/input_method/input_method_engine.cc b/chrome/browser/chromeos/input_method/input_method_engine.cc
|
| index 43ab99efb1cd2a40d89f407e0f5811aed170d059..2d6a7ca8df2719506b085f67a3a2d23b594a433e 100644
|
| --- a/chrome/browser/chromeos/input_method/input_method_engine.cc
|
| +++ b/chrome/browser/chromeos/input_method/input_method_engine.cc
|
| @@ -29,6 +29,7 @@
|
| #include "ui/base/ime/chromeos/ime_keymap.h"
|
| #include "ui/events/event.h"
|
| #include "ui/events/event_processor.h"
|
| +#include "ui/events/keycodes/dom4/keycode_converter.h"
|
| #include "ui/keyboard/keyboard_controller.h"
|
| #include "ui/keyboard/keyboard_util.h"
|
|
|
| @@ -99,7 +100,11 @@ void GetExtensionKeyboardEventFromKeyEvent(
|
| DCHECK(ext_event);
|
| ext_event->type = (event.type() == ui::ET_KEY_RELEASED) ? "keyup" : "keydown";
|
|
|
| - ext_event->code = event.code();
|
| + std::string dom_code = event.code();
|
| + if (dom_code ==
|
| + ui::KeycodeConverter::GetInstance()->InvalidKeyboardEventCode())
|
| + dom_code = ui::KeyboardCodeToDomKeycode(event.key_code());
|
| + ext_event->code = dom_code;
|
| ext_event->key_code = static_cast<int>(event.key_code());
|
| ext_event->alt_key = event.IsAltDown();
|
| ext_event->ctrl_key = event.IsControlDown();
|
|
|