| Index: ash/desktop_background/desktop_background_controller.cc
|
| diff --git a/ash/desktop_background/desktop_background_controller.cc b/ash/desktop_background/desktop_background_controller.cc
|
| index 9014754e5f9043981f968a4b60b06c4e7eecb158..e4cdf279f363bcfed07d1f5c029322df0e9e35dc 100644
|
| --- a/ash/desktop_background/desktop_background_controller.cc
|
| +++ b/ash/desktop_background/desktop_background_controller.cc
|
| @@ -104,6 +104,9 @@ void DesktopBackgroundController::SetDefaultWallpaper(int index) {
|
| if (index == ash::GetInvalidWallpaperIndex()) {
|
| CreateEmptyWallpaper();
|
| return;
|
| + } else if (index == ash::GetSolidColorIndex()) {
|
| + SetDesktopBackgroundSolidColorMode(SK_ColorWallpaperLogin);
|
| + return;
|
| }
|
|
|
| if (previous_index_ == index)
|
| @@ -138,13 +141,14 @@ void DesktopBackgroundController::CancelPendingWallpaperOperation() {
|
| weak_ptr_factory_.InvalidateWeakPtrs();
|
| }
|
|
|
| -void DesktopBackgroundController::SetDesktopBackgroundSolidColorMode() {
|
| +void DesktopBackgroundController::SetDesktopBackgroundSolidColorMode(
|
| + SkColor color) {
|
| // Set a solid black background.
|
| // TODO(derat): Remove this in favor of having the compositor only clear the
|
| // viewport when there are regions not covered by a layer:
|
| // http://crbug.com/113445
|
| ui::Layer* background_layer = new ui::Layer(ui::LAYER_SOLID_COLOR);
|
| - background_layer->SetColor(SK_ColorBLACK);
|
| + background_layer->SetColor(color);
|
| root_window_->GetChildById(
|
| internal::kShellWindowId_DesktopBackgroundContainer)->
|
| layer()->Add(background_layer);
|
|
|