Index: athena/virtual_keyboard/virtual_keyboard_manager_impl.cc |
diff --git a/athena/virtual_keyboard/virtual_keyboard_manager_impl.cc b/athena/virtual_keyboard/virtual_keyboard_manager_impl.cc |
index 1de68ee1cb2f0c5e8b70d4bccb1c17ab21cc2a93..68c666fe301c08ad6bdc7d0344109bf48569923a 100644 |
--- a/athena/virtual_keyboard/virtual_keyboard_manager_impl.cc |
+++ b/athena/virtual_keyboard/virtual_keyboard_manager_impl.cc |
@@ -83,18 +83,18 @@ class VirtualKeyboardManagerImpl : public VirtualKeyboardManager { |
container_ = athena::ScreenManager::Get()->CreateContainer(params); |
container_->SetLayoutManager(new FillLayoutManager(container_)); |
- keyboard_controller_.reset(new keyboard::KeyboardController( |
+ keyboard::KeyboardController* controller = new keyboard::KeyboardController( |
new BasicKeyboardControllerProxy(browser_context_, |
- container_->GetRootWindow()))); |
- keyboard::KeyboardController::ResetInstance(keyboard_controller_.get()); |
- aura::Window* kb_container = keyboard_controller_->GetContainerWindow(); |
+ container_->GetRootWindow())); |
+ // ResetInstance takes ownership. |
+ keyboard::KeyboardController::ResetInstance(controller); |
+ aura::Window* kb_container = controller->GetContainerWindow(); |
container_->AddChild(kb_container); |
kb_container->Show(); |
} |
content::BrowserContext* browser_context_; |
aura::Window* container_; |
- scoped_ptr<keyboard::KeyboardController> keyboard_controller_; |
DISALLOW_COPY_AND_ASSIGN(VirtualKeyboardManagerImpl); |
}; |