| Index: chrome/browser/chromeos/login/lock/webui_screen_locker.h
|
| diff --git a/chrome/browser/chromeos/login/lock/webui_screen_locker.h b/chrome/browser/chromeos/login/lock/webui_screen_locker.h
|
| index 4fe9dcb7996d3c02998a6814b4f8a9cc930359bc..716612be8070beb3b58911b3251ab4ab8625bc5d 100644
|
| --- a/chrome/browser/chromeos/login/lock/webui_screen_locker.h
|
| +++ b/chrome/browser/chromeos/login/lock/webui_screen_locker.h
|
| @@ -7,6 +7,7 @@
|
|
|
| #include <string>
|
|
|
| +#include "ash/shell_delegate.h"
|
| #include "ash/wm/lock_state_observer.h"
|
| #include "base/compiler_specific.h"
|
| #include "base/memory/scoped_ptr.h"
|
| @@ -19,6 +20,7 @@
|
| #include "chromeos/dbus/power_manager_client.h"
|
| #include "content/public/browser/notification_observer.h"
|
| #include "content/public/browser/notification_registrar.h"
|
| +#include "ui/keyboard/keyboard_controller_observer.h"
|
| #include "ui/views/widget/widget.h"
|
| #include "ui/views/widget/widget_observer.h"
|
|
|
| @@ -28,6 +30,7 @@ class WebUI;
|
|
|
| namespace chromeos {
|
|
|
| +class OobeUI;
|
| class ScreenLocker;
|
| class WebUILoginDisplay;
|
|
|
| @@ -47,7 +50,9 @@ class WebUIScreenLocker : public WebUILoginView,
|
| public LockWindow::Observer,
|
| public ash::LockStateObserver,
|
| public views::WidgetObserver,
|
| - public PowerManagerClient::Observer {
|
| + public PowerManagerClient::Observer,
|
| + public ash::VirtualKeyboardStateObserver,
|
| + public keyboard::KeyboardControllerObserver {
|
| public:
|
| explicit WebUIScreenLocker(ScreenLocker* screen_locker);
|
|
|
| @@ -113,6 +118,15 @@ class WebUIScreenLocker : public WebUILoginView,
|
| // Overridden from content::WebContentsObserver:
|
| virtual void RenderProcessGone(base::TerminationStatus status) OVERRIDE;
|
|
|
| + // Overridden from ash::KeyboardStateObserver:
|
| + virtual void OnVirtualKeyboardStateChanged(bool activated) OVERRIDE;
|
| +
|
| + // Overridden from keyboard::KeyboardControllerObserver:
|
| + virtual void OnKeyboardBoundsChanging(const gfx::Rect& new_bounds) OVERRIDE;
|
| +
|
| + // Returns instance of the OOBE WebUI.
|
| + OobeUI* GetOobeUI();
|
| +
|
| private:
|
| friend class test::WebUIScreenLockerTester;
|
|
|
| @@ -141,6 +155,12 @@ class WebUIScreenLocker : public WebUILoginView,
|
|
|
| scoped_ptr<login::NetworkStateHelper> network_state_helper_;
|
|
|
| + // True is subscribed as keyboard controller observer.
|
| + bool is_observing_keyboard_;
|
| +
|
| + // The bounds of the virtual keyboard.
|
| + gfx::Rect keyboard_bounds_;
|
| +
|
| base::WeakPtrFactory<WebUIScreenLocker> weak_factory_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(WebUIScreenLocker);
|
|
|