Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(146)

Unified Diff: chrome/browser/ui/webui/chromeos/login/signin_screen_handler.cc

Issue 24625003: Delay wallpaper load by 2 * average wallpaper load time. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Move WallpaperLoader to separate object, simplify. Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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();
}

Powered by Google App Engine
This is Rietveld 408576698