Index: ash/shell.cc |
diff --git a/ash/shell.cc b/ash/shell.cc |
index 1220f5e686d7d2774802a452dd6e979e67d6de0c..12432078b7a2a08c7a1ddb82e4aedd792e5e38d2 100644 |
--- a/ash/shell.cc |
+++ b/ash/shell.cc |
@@ -8,6 +8,9 @@ |
#include "ash/app_list/app_list.h" |
#include "ash/ash_switches.h" |
+#include "ash/desktop_background/desktop_background_controller.h" |
+#include "ash/desktop_background/desktop_background_resources.h" |
+#include "ash/desktop_background/desktop_background_view.h" |
#include "ash/drag_drop/drag_drop_controller.h" |
#include "ash/focus_cycler.h" |
#include "ash/ime/input_method_event_filter.h" |
@@ -474,6 +477,7 @@ void Shell::Init() { |
AddRootWindowEventFilter(tooltip_controller_.get()); |
drag_drop_controller_.reset(new internal::DragDropController); |
+ desktop_background_controller_.reset(new DesktopBackgroundController); |
power_button_controller_.reset(new PowerButtonController); |
video_detector_.reset(new VideoDetector); |
window_cycle_controller_.reset(new WindowCycleController); |
@@ -539,6 +543,15 @@ void Shell::ToggleAppList() { |
app_list_->SetVisible(!app_list_->IsVisible()); |
} |
+void Shell::SetDesktopBackgroundWallpaper(const SkBitmap& wallpaper) { |
+ if (desktop_background_mode_ == BACKGROUND_SOLID_COLOR) |
+ return; |
+ DCHECK(root_window_layout_->background_widget()); |
+ static_cast<internal::DesktopBackgroundView*>( |
+ root_window_layout_->background_widget()->widget_delegate())-> |
+ SetWallpaper(wallpaper); |
+} |
+ |
void Shell::SetDesktopBackgroundMode(BackgroundMode mode) { |
flackr
2012/03/06 17:16:49
I think this function should become SetDesktopBack
bshe
2012/03/06 19:56:16
Just to confirm, your intention here is to enable
flackr
2012/03/06 20:25:28
This is probably important, I think if we start su
bshe
2012/03/07 19:50:44
It seems the ToT build can't switch the color mode
|
if (mode == BACKGROUND_SOLID_COLOR) { |
// Set a solid black background. |