| Index: chrome/browser/chromeos/login/lock/webui_screen_locker.cc
|
| diff --git a/chrome/browser/chromeos/login/lock/webui_screen_locker.cc b/chrome/browser/chromeos/login/lock/webui_screen_locker.cc
|
| index da01b7d59ef02b9b3a21bbd19c7d47706938da03..5bf37a08231a264ea7804847731671bc751f9c02 100644
|
| --- a/chrome/browser/chromeos/login/lock/webui_screen_locker.cc
|
| +++ b/chrome/browser/chromeos/login/lock/webui_screen_locker.cc
|
| @@ -68,6 +68,7 @@ WebUIScreenLocker::WebUIScreenLocker(ScreenLocker* screen_locker)
|
| set_should_emit_login_prompt_visible(false);
|
| ash::Shell::GetInstance()->lock_state_controller()->AddObserver(this);
|
| ash::Shell::GetInstance()->delegate()->AddVirtualKeyboardStateObserver(this);
|
| + ash::Shell::GetScreen()->AddObserver(this);
|
| DBusThreadManager::Get()->GetPowerManagerClient()->AddObserver(this);
|
|
|
| if (keyboard::KeyboardController::GetInstance()) {
|
| @@ -155,6 +156,7 @@ void WebUIScreenLocker::FocusUserPod() {
|
|
|
| WebUIScreenLocker::~WebUIScreenLocker() {
|
| DBusThreadManager::Get()->GetPowerManagerClient()->RemoveObserver(this);
|
| + ash::Shell::GetScreen()->RemoveObserver(this);
|
| ash::Shell::GetInstance()->
|
| lock_state_controller()->RemoveObserver(this);
|
|
|
| @@ -368,4 +370,29 @@ void WebUIScreenLocker::OnKeyboardBoundsChanging(
|
| keyboard_bounds_ = new_bounds;
|
| }
|
|
|
| +////////////////////////////////////////////////////////////////////////////////
|
| +// gfx::DisplayObserver implementation:
|
| +
|
| +void WebUIScreenLocker::OnDisplayAdded(const gfx::Display& new_display) {
|
| +}
|
| +
|
| +void WebUIScreenLocker::OnDisplayRemoved(const gfx::Display& old_display) {
|
| +}
|
| +
|
| +void WebUIScreenLocker::OnDisplayMetricsChanged(const gfx::Display& display,
|
| + uint32_t changed_metrics) {
|
| + gfx::Display primary_display =
|
| + gfx::Screen::GetNativeScreen()->GetPrimaryDisplay();
|
| + if (display.id() != primary_display.id() ||
|
| + !(changed_metrics & DISPLAY_METRIC_BOUNDS)) {
|
| + return;
|
| + }
|
| +
|
| + if (GetOobeUI()) {
|
| + const gfx::Size& size = primary_display.size();
|
| + GetOobeUI()->GetCoreOobeActor()->SetClientAreaSize(size.width(),
|
| + size.height());
|
| + }
|
| +}
|
| +
|
| } // namespace chromeos
|
|
|