Index: ash/display/display_controller.h |
diff --git a/ash/display/display_controller.h b/ash/display/display_controller.h |
index 40e3ed291550bf23653a8afbf204b6b3036d2707..8ef6d0577b41895b6dfe0365071584ab0ce25e86 100644 |
--- a/ash/display/display_controller.h |
+++ b/ash/display/display_controller.h |
@@ -19,6 +19,8 @@ |
#include "base/time/time.h" |
#include "ui/aura/window.h" |
#include "ui/aura/window_tree_host_observer.h" |
+#include "ui/base/ime/input_method.h" |
+#include "ui/base/ime/input_method_delegate.h" |
#include "ui/gfx/display_observer.h" |
#include "ui/gfx/geometry/point.h" |
@@ -51,7 +53,8 @@ class RootWindowController; |
// display, keeping them in sync with display configuration changes. |
class ASH_EXPORT DisplayController : public gfx::DisplayObserver, |
public aura::WindowTreeHostObserver, |
- public DisplayManager::Delegate { |
+ public DisplayManager::Delegate, |
+ public ui::internal::InputMethodDelegate { |
public: |
class ASH_EXPORT Observer { |
public: |
@@ -163,6 +166,9 @@ class ASH_EXPORT DisplayController : public gfx::DisplayObserver, |
void PreDisplayConfigurationChange(bool clear_focus) override; |
void PostDisplayConfigurationChange() override; |
+ // ui::internal::InputMethodDelegate overrides: |
+ bool DispatchKeyEventPostIME(const ui::KeyEvent& event) override; |
+ |
private: |
FRIEND_TEST_ALL_PREFIXES(DisplayControllerTest, BoundsUpdated); |
FRIEND_TEST_ALL_PREFIXES(DisplayControllerTest, SecondaryDisplayLayout); |
@@ -218,6 +224,8 @@ class ASH_EXPORT DisplayController : public gfx::DisplayObserver, |
scoped_ptr<CursorWindowController> cursor_window_controller_; |
scoped_ptr<MirrorWindowController> mirror_window_controller_; |
+ scoped_ptr<ui::InputMethod> input_method_; |
+ |
// Stores the current cursor location (in native coordinates and screen |
// coordinates respectively). The locations are used to restore the cursor |
// location when the display configuration changes and to determine whether |