Index: chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc |
diff --git a/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc b/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc |
index 9a85f0a86ff62e4d7d46430e5866aa4d8c56766d..add7fd253b17ee1686b429863c4b89452cfd6311 100644 |
--- a/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc |
+++ b/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc |
@@ -423,6 +423,7 @@ SigninScreenHandler::SigninScreenHandler( |
} |
SigninScreenHandler::~SigninScreenHandler() { |
+ WallpaperManager::Get()->RemoveObserver(this); |
weak_factory_.InvalidateWeakPtrs(); |
SystemKeyEventListener* key_event_listener = |
SystemKeyEventListener::GetInstance(); |
@@ -553,8 +554,10 @@ void SigninScreenHandler::ShowRetailModeLoginSpinner() { |
void SigninScreenHandler::SetDelegate(SigninScreenHandlerDelegate* delegate) { |
delegate_ = delegate; |
- if (delegate_) |
+ if (delegate_) { |
delegate_->SetWebUIHandler(this); |
+ WallpaperManager::Get()->AddObserver(this); |
dzhioev (left Google)
2013/10/17 12:47:49
Why do you add observer here? I see that |this| ad
Alexander Alekseev
2013/10/18 17:01:52
Hmmm... I don't reember why, but there was a reaso
|
+ } |
} |
void SigninScreenHandler::SetNativeWindowDelegate( |
@@ -1284,6 +1287,11 @@ void SigninScreenHandler::HandleLoadWallpaper(const std::string& email) { |
delegate_->LoadWallpaper(email); |
} |
+void SigninScreenHandler::OnWallpaperAnimationFinished( |
+ const std::string& email) { |
+ CallJS("login.AccountPickerScreen.onWallpaperLoaded", email); |
+} |
+ |
void SigninScreenHandler::HandleRebootSystem() { |
chromeos::DBusThreadManager::Get()->GetPowerManagerClient()->RequestRestart(); |
} |