Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(207)

Unified Diff: extensions/shell/browser/shell_desktop_controller_aura.h

Issue 2580733002: AppShell: Create input method and handle key events (Closed)
Patch Set: Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: extensions/shell/browser/shell_desktop_controller_aura.h
diff --git a/extensions/shell/browser/shell_desktop_controller_aura.h b/extensions/shell/browser/shell_desktop_controller_aura.h
index 8a83179fe28e9e551cd0577989eef591df8e9d42..cfa6c996c3332efd15dccae83ca4a0772235e986 100644
--- a/extensions/shell/browser/shell_desktop_controller_aura.h
+++ b/extensions/shell/browser/shell_desktop_controller_aura.h
@@ -14,6 +14,7 @@
#include "extensions/shell/browser/desktop_controller.h"
#include "ui/aura/client/window_parenting_client.h"
#include "ui/aura/window_tree_host_observer.h"
+#include "ui/base/ime/input_method_delegate.h"
#if defined(OS_CHROMEOS)
#include "chromeos/dbus/power_manager_client.h"
@@ -38,6 +39,7 @@ class Size;
}
namespace ui {
+class InputMethod;
class UserActivityDetector;
#if defined(OS_CHROMEOS)
class UserActivityPowerManagerNotifier;
@@ -52,6 +54,7 @@ class CursorManager;
namespace extensions {
class AppWindowClient;
class Extension;
+class InputMethodEventHandler;
class ShellScreen;
// Handles desktop-related tasks for app_shell.
@@ -62,7 +65,8 @@ class ShellDesktopControllerAura
public chromeos::PowerManagerClient::Observer,
public ui::DisplayConfigurator::Observer,
#endif
- public aura::WindowTreeHostObserver {
+ public aura::WindowTreeHostObserver,
+ public ui::internal::InputMethodDelegate {
public:
ShellDesktopControllerAura();
~ShellDesktopControllerAura() override;
@@ -93,6 +97,10 @@ class ShellDesktopControllerAura
// aura::WindowTreeHostObserver overrides:
void OnHostCloseRequested(const aura::WindowTreeHost* host) override;
+ // ui::internal::InputMethodDelegate overrides:
+ ui::EventDispatchDetails DispatchKeyEventPostIME(
+ ui::KeyEvent* key_event) override;
+
protected:
// Creates and sets the aura clients and window manager stuff. Subclass may
// initialize different sets of the clients.
@@ -119,6 +127,10 @@ class ShellDesktopControllerAura
std::unique_ptr<wm::CompoundEventFilter> root_window_event_filter_;
Rahul Chaturvedi 2016/12/15 22:42:46 nit: Add a comment here that input_method_ needs t
michaelpg 2016/12/15 23:55:52 Removed input_method_.
+ std::unique_ptr<ui::InputMethod> input_method_;
+
Rahul Chaturvedi 2016/12/15 22:42:46 nit: remove line, so these two are grouped togethe
michaelpg 2016/12/15 23:55:52 Acknowledged.
+ std::unique_ptr<InputMethodEventHandler> input_method_event_handler_;
+
std::unique_ptr<aura::client::DefaultCaptureClient> capture_client_;
std::unique_ptr<aura::client::FocusClient> focus_client_;

Powered by Google App Engine
This is Rietveld 408576698