| Index: ui/aura/window_tree_host_x11.cc
|
| diff --git a/ui/aura/window_tree_host_x11.cc b/ui/aura/window_tree_host_x11.cc
|
| index f2604eb7999dcd31ec3306690011cc2edd237280..9778413427a6cf175415cfc6abf39ca2ae57b36d 100644
|
| --- a/ui/aura/window_tree_host_x11.cc
|
| +++ b/ui/aura/window_tree_host_x11.cc
|
| @@ -372,14 +372,15 @@ uint32_t WindowTreeHostX11::DispatchEvent(const ui::PlatformEvent& event) {
|
| compositor()->ScheduleRedrawRect(damage_rect);
|
| break;
|
| }
|
| - case KeyPress: {
|
| - ui::KeyEvent keydown_event(xev, false);
|
| - SendEventToProcessor(&keydown_event);
|
| - break;
|
| - }
|
| + case KeyPress:
|
| case KeyRelease: {
|
| - ui::KeyEvent keyup_event(xev, false);
|
| - SendEventToProcessor(&keyup_event);
|
| +#if defined(OS_CHROMEOS)
|
| + // Chrome OS uses XI2 key events instead.
|
| + if (base::SysInfo::IsRunningOnChromeOS())
|
| + break;
|
| +#endif
|
| + ui::KeyEvent key_event(xev, false);
|
| + SendEventToProcessor(&key_event);
|
| break;
|
| }
|
| case ButtonPress:
|
| @@ -699,6 +700,16 @@ void WindowTreeHostX11::DispatchXI2Event(const base::NativeEvent& event) {
|
| SendEventToProcessor(&scrollev);
|
| break;
|
| }
|
| + case ui::ET_KEY_PRESSED:
|
| + case ui::ET_KEY_RELEASED: {
|
| +#if defined(OS_CHROMEOS)
|
| + if (base::SysInfo::IsRunningOnChromeOS()) {
|
| + ui::KeyEvent key_event(xev, false);
|
| + SendEventToProcessor(&key_event);
|
| + }
|
| +#endif
|
| + break;
|
| + }
|
| case ui::ET_UMA_DATA:
|
| break;
|
| case ui::ET_UNKNOWN:
|
|
|