| Index: chrome/browser/ui/virtual_keyboard/virtual_keyboard_manager.cc
|
| diff --git a/chrome/browser/ui/virtual_keyboard/virtual_keyboard_manager.cc b/chrome/browser/ui/virtual_keyboard/virtual_keyboard_manager.cc
|
| index eb3e9afacdefbab30a60c8b6a8739e91439ca346..0bc8a35dc3af88ba58cf64b2ebb181f25e41b62e 100644
|
| --- a/chrome/browser/ui/virtual_keyboard/virtual_keyboard_manager.cc
|
| +++ b/chrome/browser/ui/virtual_keyboard/virtual_keyboard_manager.cc
|
| @@ -37,6 +37,8 @@
|
| #endif
|
|
|
| #if defined(USE_AURA)
|
| +#include "ui/aura/desktop.h"
|
| +#include "ui/aura/desktop_observer.h"
|
| #include "ui/aura_shell/shell.h"
|
| #include "ui/aura_shell/shell_window_ids.h"
|
| #endif
|
| @@ -73,6 +75,9 @@ class KeyboardWidget
|
| #if defined(OS_CHROMEOS)
|
| public chromeos::input_method::InputMethodManager::VirtualKeyboardObserver,
|
| #endif
|
| +#if defined(USE_AURA)
|
| + public aura::DesktopObserver,
|
| +#endif
|
| public NotificationObserver,
|
| public views::Widget::Observer,
|
| public views::TextInputTypeObserver {
|
| @@ -126,6 +131,11 @@ class KeyboardWidget
|
| const std::string& virtual_keyboard_layout);
|
| #endif
|
|
|
| +#if defined(USE_AURA)
|
| + // Overridden from aura::DesktopObserver.
|
| + virtual void OnDesktopResized(const gfx::Size& new_size) OVERRIDE;
|
| +#endif
|
| +
|
| // Overridden from NotificationObserver.
|
| virtual void Observe(int type,
|
| const NotificationSource& source,
|
| @@ -213,6 +223,10 @@ KeyboardWidget::KeyboardWidget()
|
| chromeos::input_method::InputMethodManager::GetInstance();
|
| manager->AddVirtualKeyboardObserver(this);
|
| #endif
|
| +
|
| +#if defined(USE_AURA)
|
| + aura::Desktop::GetInstance()->AddObserver(this);
|
| +#endif
|
| }
|
|
|
| KeyboardWidget::~KeyboardWidget() {
|
| @@ -225,6 +239,9 @@ KeyboardWidget::~KeyboardWidget() {
|
| manager->RemoveVirtualKeyboardObserver(this);
|
| #endif
|
|
|
| +#if defined(USE_AURA)
|
| + aura::Desktop::GetInstance()->RemoveObserver(this);
|
| +#endif
|
| // TODO(sad): Do anything else?
|
| }
|
|
|
| @@ -409,6 +426,12 @@ void KeyboardWidget::VirtualKeyboardChanged(
|
| }
|
| #endif
|
|
|
| +#if defined(USE_AURA)
|
| +void KeyboardWidget::OnDesktopResized(const gfx::Size& new_size) {
|
| + ResetBounds();
|
| +}
|
| +#endif
|
| +
|
| void KeyboardWidget::Observe(int type,
|
| const NotificationSource& source,
|
| const NotificationDetails& details) {
|
|
|