summaryrefslogtreecommitdiffstats
path: root/ui/events/ozone/evdev/keyboard_evdev.cc
diff options
context:
space:
mode:
Diffstat (limited to 'ui/events/ozone/evdev/keyboard_evdev.cc')
-rw-r--r--ui/events/ozone/evdev/keyboard_evdev.cc10
1 files changed, 7 insertions, 3 deletions
diff --git a/ui/events/ozone/evdev/keyboard_evdev.cc b/ui/events/ozone/evdev/keyboard_evdev.cc
index 13ef3c1..86ed072 100644
--- a/ui/events/ozone/evdev/keyboard_evdev.cc
+++ b/ui/events/ozone/evdev/keyboard_evdev.cc
@@ -165,14 +165,18 @@ void KeyboardEvdev::DispatchKey(unsigned int key, bool down, bool repeat) {
DomKey dom_key;
KeyboardCode key_code;
uint16 character;
+ uint32 platform_keycode = 0;
if (!keyboard_layout_engine_->Lookup(dom_code, flags, &dom_key, &character,
- &key_code)) {
+ &key_code, &platform_keycode)) {
return;
}
- callback_.Run(make_scoped_ptr(
+ KeyEvent* event =
new KeyEvent(down ? ET_KEY_PRESSED : ET_KEY_RELEASED, key_code, dom_code,
- flags, dom_key, character)));
+ flags, dom_key, character);
+ if (platform_keycode)
+ event->set_platform_keycode(platform_keycode);
+ callback_.Run(make_scoped_ptr(event));
}
// static