Index: ash/host/ash_window_tree_host_x11.cc |
diff --git a/ash/host/ash_window_tree_host_x11.cc b/ash/host/ash_window_tree_host_x11.cc |
index 9e3cdc0a0108fc22e870ce865f30ded3cbd772ed..979db19261d8f28c66f464acb82592d91796416a 100644 |
--- a/ash/host/ash_window_tree_host_x11.cc |
+++ b/ash/host/ash_window_tree_host_x11.cc |
@@ -15,6 +15,7 @@ |
#include "ash/host/ash_window_tree_host_init_params.h" |
#include "ash/host/ash_window_tree_host_unified.h" |
#include "ash/host/root_window_transformer.h" |
+#include "ash/ime/input_method_event_handler.h" |
#include "base/basictypes.h" |
#include "base/sys_info.h" |
#include "ui/aura/env.h" |
@@ -235,6 +236,19 @@ void AshWindowTreeHostX11::TranslateAndDispatchLocatedEvent( |
SendEventToProcessor(event); |
} |
+bool AshWindowTreeHostX11::DispatchKeyEventPostIME(const ui::KeyEvent& event) { |
+ ui::KeyEvent event_copy(event); |
+ input_method_handler()->SetPostIME(true); |
+ ui::EventSource::DeliverEventToProcessor(&event_copy); |
+ input_method_handler()->SetPostIME(false); |
+ return event_copy.handled(); |
+} |
+ |
+ui::EventDispatchDetails AshWindowTreeHostX11::DeliverEventToProcessor( |
+ ui::Event* event) { |
+ return ui::EventSource::DeliverEventToProcessor(event); |
+} |
+ |
#if defined(OS_CHROMEOS) |
void AshWindowTreeHostX11::SetCrOSTapPaused(bool state) { |
if (!ui::IsXInput2Available()) |