Index: apps/shell/browser/shell_desktop_controller.cc |
diff --git a/apps/shell/browser/shell_desktop_controller.cc b/apps/shell/browser/shell_desktop_controller.cc |
index 752b198a9d02867297f6eb6ca8c56751657f313c..26760407207364d1df1eaf7dfffe31a4363413ca 100644 |
--- a/apps/shell/browser/shell_desktop_controller.cc |
+++ b/apps/shell/browser/shell_desktop_controller.cc |
@@ -253,8 +253,11 @@ void ShellDesktopController::CreateRootWindow() { |
} |
void ShellDesktopController::InitWindowManager() { |
- focus_client_.reset(new wm::FocusController(new AppsFocusRules())); |
- aura::client::SetFocusClient(host_->window(), focus_client_.get()); |
+ wm::FocusController* focus_controller = |
+ new wm::FocusController(new AppsFocusRules()); |
+ aura::client::SetFocusClient(host_->window(), focus_controller); |
+ host_->window()->AddPreTargetHandler(focus_controller); |
+ focus_client_.reset(focus_controller); |
input_method_filter_.reset( |
new wm::InputMethodEventFilter(host_->GetAcceleratedWidget())); |