Index: ash/shell.cc |
diff --git a/ash/shell.cc b/ash/shell.cc |
index f297ca2c1d9eafc8b1bb7137c62e3f43d25a9096..bdc9c579838b31d0a8fed881bff8cd495347c391 100644 |
--- a/ash/shell.cc |
+++ b/ash/shell.cc |
@@ -410,22 +410,22 @@ void Shell::CreateKeyboard() { |
InitKeyboard(); |
if (keyboard::IsKeyboardUsabilityExperimentEnabled()) { |
display_controller()->virtual_keyboard_window_controller()-> |
- ActivateKeyboard(keyboard_controller_.get()); |
+ ActivateKeyboard(keyboard::KeyboardController::GetInstance()); |
} else { |
GetPrimaryRootWindowController()-> |
- ActivateKeyboard(keyboard_controller_.get()); |
+ ActivateKeyboard(keyboard::KeyboardController::GetInstance()); |
} |
} |
void Shell::DeactivateKeyboard() { |
- if (keyboard_controller_.get()) { |
+ if (keyboard::KeyboardController::GetInstance()) { |
RootWindowControllerList controllers = GetAllRootWindowControllers(); |
for (RootWindowControllerList::iterator iter = controllers.begin(); |
iter != controllers.end(); ++iter) { |
- (*iter)->DeactivateKeyboard(keyboard_controller_.get()); |
+ (*iter)->DeactivateKeyboard(keyboard::KeyboardController::GetInstance()); |
} |
} |
- keyboard_controller_.reset(); |
+ keyboard::KeyboardController::ResetInstance(NULL); |
} |
void Shell::ShowShelf() { |
@@ -753,12 +753,12 @@ Shell::~Shell() { |
display_controller_->Shutdown(); |
display_controller_.reset(); |
screen_position_controller_.reset(); |
- |
- keyboard_controller_.reset(); |
accessibility_delegate_.reset(); |
new_window_delegate_.reset(); |
media_delegate_.reset(); |
+ keyboard::KeyboardController::ResetInstance(NULL); |
+ |
#if defined(OS_CHROMEOS) |
if (display_change_observer_) |
output_configurator_->RemoveObserver(display_change_observer_.get()); |
@@ -1023,16 +1023,17 @@ void Shell::Init() { |
void Shell::InitKeyboard() { |
if (keyboard::IsKeyboardEnabled()) { |
- if (keyboard_controller_.get()) { |
+ if (keyboard::KeyboardController::GetInstance()) { |
RootWindowControllerList controllers = GetAllRootWindowControllers(); |
for (RootWindowControllerList::iterator iter = controllers.begin(); |
iter != controllers.end(); ++iter) { |
- (*iter)->DeactivateKeyboard(keyboard_controller_.get()); |
+ (*iter)->DeactivateKeyboard( |
+ keyboard::KeyboardController::GetInstance()); |
} |
} |
keyboard::KeyboardControllerProxy* proxy = |
delegate_->CreateKeyboardControllerProxy(); |
- keyboard_controller_.reset( |
+ keyboard::KeyboardController::ResetInstance( |
new keyboard::KeyboardController(proxy)); |
} |
} |