| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/chromeos/login/user_manager_impl.h" | 5 #include "chrome/browser/chromeos/login/user_manager_impl.h" |
| 6 | 6 |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "ash/shell.h" | 9 #include "ash/shell.h" |
| 10 #include "ash/desktop_background/desktop_background_controller.h" | 10 #include "ash/desktop_background/desktop_background_controller.h" |
| (...skipping 358 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 369 is_current_user_new_ = true; | 369 is_current_user_new_ = true; |
| 370 is_current_user_ephemeral_ = true; | 370 is_current_user_ephemeral_ = true; |
| 371 logged_in_user_ = CreateUser(email, /* is_ephemeral= */ true); | 371 logged_in_user_ = CreateUser(email, /* is_ephemeral= */ true); |
| 372 SetInitialUserImage(email); | 372 SetInitialUserImage(email); |
| 373 SetInitialUserWallpaper(email); | 373 SetInitialUserWallpaper(email); |
| 374 NotifyOnLogin(); | 374 NotifyOnLogin(); |
| 375 } | 375 } |
| 376 | 376 |
| 377 void UserManagerImpl::InitializeWallpaper() { | 377 void UserManagerImpl::InitializeWallpaper() { |
| 378 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); | 378 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| 379 |
| 380 if (WizardController::IsZeroDelayEnabled()) |
| 381 return; |
| 382 |
| 383 bool disable_new_oobe = CommandLine::ForCurrentProcess()-> |
| 384 HasSwitch(switches::kDisableNewOobe); |
| 385 bool disable_boot_animation = CommandLine::ForCurrentProcess()-> |
| 386 HasSwitch(switches::kDisableBootAnimation); |
| 387 |
| 379 if (!IsUserLoggedIn()) { | 388 if (!IsUserLoggedIn()) { |
| 380 if (!CommandLine::ForCurrentProcess()->HasSwitch( | 389 if (!disable_new_oobe) { |
| 381 switches::kDisableNewOobe)) { | 390 if (!WizardController::IsDeviceRegistered()) { |
| 382 if (!WizardController::IsDeviceRegistered() && | |
| 383 !WizardController::IsZeroDelayEnabled()) { | |
| 384 // TODO(nkostylev): Add switch to disable wallpaper transition on OOBE. | 391 // TODO(nkostylev): Add switch to disable wallpaper transition on OOBE. |
| 385 // Should be used on test images so that they are not slowed down. | 392 // Should be used on test images so that they are not slowed down. |
| 386 ash::Shell::GetInstance()->desktop_background_controller()-> | 393 ash::Shell::GetInstance()->desktop_background_controller()-> |
| 387 SetDefaultWallpaper(kDefaultOOBEWallpaperIndex); | 394 SetDefaultWallpaper(kDefaultOOBEWallpaperIndex); |
| 388 } else { | 395 } else { |
| 389 bool show_users = true; | 396 bool show_users = true; |
| 390 bool result = CrosSettings::Get()->GetBoolean( | 397 bool result = CrosSettings::Get()->GetBoolean( |
| 391 kAccountsPrefShowUserNamesOnSignIn, &show_users); | 398 kAccountsPrefShowUserNamesOnSignIn, &show_users); |
| 392 DCHECK(result) << "Unable to fetch setting " | 399 DCHECK(result) << "Unable to fetch setting " |
| 393 << kAccountsPrefShowUserNamesOnSignIn; | 400 << kAccountsPrefShowUserNamesOnSignIn; |
| 394 if (!show_users) { | 401 if (!show_users) { |
| 402 // Boot into sign in form, preload default wallpaper. |
| 395 ash::Shell::GetInstance()->desktop_background_controller()-> | 403 ash::Shell::GetInstance()->desktop_background_controller()-> |
| 396 SetDefaultWallpaper(ash::GetSolidColorIndex()); | 404 SetDefaultWallpaper(kDefaultOOBEWallpaperIndex); |
| 405 } else if (!disable_boot_animation) { |
| 406 // Normal boot, load user wallpaper. |
| 407 const chromeos::UserList& users = GetUsers(); |
| 408 if (!users.empty()) { |
| 409 UserSelected(users[0]->email()); |
| 410 } else { |
| 411 ash::Shell::GetInstance()->desktop_background_controller()-> |
| 412 SetDefaultWallpaper(kDefaultOOBEWallpaperIndex); |
| 413 } |
| 397 } | 414 } |
| 398 } | 415 } |
| 399 } | 416 } |
| 400 return; | 417 return; |
| 401 } | 418 } |
| 402 UserSelected(GetLoggedInUser().email()); | 419 UserSelected(GetLoggedInUser().email()); |
| 403 } | 420 } |
| 404 | 421 |
| 405 void UserManagerImpl::UserSelected(const std::string& email) { | 422 void UserManagerImpl::UserSelected(const std::string& email) { |
| 406 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); | 423 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| (...skipping 1282 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1689 BrowserThread::PostTask( | 1706 BrowserThread::PostTask( |
| 1690 BrowserThread::FILE, | 1707 BrowserThread::FILE, |
| 1691 FROM_HERE, | 1708 FROM_HERE, |
| 1692 base::Bind(&UserManagerImpl::DeleteUserImage, | 1709 base::Bind(&UserManagerImpl::DeleteUserImage, |
| 1693 base::Unretained(this), | 1710 base::Unretained(this), |
| 1694 image_path)); | 1711 image_path)); |
| 1695 } | 1712 } |
| 1696 } | 1713 } |
| 1697 | 1714 |
| 1698 } // namespace chromeos | 1715 } // namespace chromeos |
| OLD | NEW |