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

Unified Diff: ash/desktop_background/desktop_background_view.cc

Issue 10810039: 2nd display should show the same background as login/lock screen: (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Created 8 years, 5 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: ash/desktop_background/desktop_background_view.cc
diff --git a/ash/desktop_background/desktop_background_view.cc b/ash/desktop_background/desktop_background_view.cc
index 1448a21525ef3a0dcef7d8faae23a1c1cf367e79..65a5b601e2d158d763de5f70d9f3dd9fbb5b118b 100644
--- a/ash/desktop_background/desktop_background_view.cc
+++ b/ash/desktop_background/desktop_background_view.cc
@@ -31,8 +31,10 @@ namespace {
class ShowWallpaperAnimationObserver : public ui::ImplicitAnimationObserver {
public:
ShowWallpaperAnimationObserver(aura::RootWindow* root_window,
+ int container_id,
views::Widget* desktop_widget)
: root_window_(root_window),
+ container_id_(container_id),
desktop_widget_(desktop_widget) {
}
@@ -45,7 +47,7 @@ class ShowWallpaperAnimationObserver : public ui::ImplicitAnimationObserver {
internal::RootWindowLayoutManager* root_window_layout =
static_cast<internal::RootWindowLayoutManager*>(
root_window_->layout_manager());
- root_window_layout->SetBackgroundWidget(desktop_widget_);
+ root_window_layout->SetBackgroundWidget(desktop_widget_, container_id_);
ash::Shell::GetInstance()->
user_wallpaper_delegate()->OnWallpaperAnimationFinished();
@@ -54,6 +56,7 @@ class ShowWallpaperAnimationObserver : public ui::ImplicitAnimationObserver {
}
aura::RootWindow* root_window_;
+ int container_id_;
views::Widget* desktop_widget_;
DISALLOW_COPY_AND_ASSIGN(ShowWallpaperAnimationObserver);
@@ -138,7 +141,7 @@ void DesktopBackgroundView::ShowContextMenuForView(views::View* source,
Shell::GetInstance()->ShowBackgroundMenu(GetWidget(), point);
}
-void CreateDesktopBackground(aura::RootWindow* root_window) {
+void CreateDesktopBackground(aura::RootWindow* root_window, int container_id) {
DesktopBackgroundController* controller = ash::Shell::GetInstance()->
desktop_background_controller();
views::Widget* desktop_widget = new views::Widget;
@@ -148,8 +151,7 @@ void CreateDesktopBackground(aura::RootWindow* root_window) {
params.delegate = view;
if (controller->GetWallpaper().empty())
params.transparent = true;
- params.parent = root_window->GetChildById(
- ash::internal::kShellWindowId_DesktopBackgroundContainer);
+ params.parent = root_window->GetChildById(container_id);
desktop_widget->Init(params);
desktop_widget->SetContentsView(view);
ash::SetWindowVisibilityAnimationType(
@@ -163,6 +165,7 @@ void CreateDesktopBackground(aura::RootWindow* root_window) {
layer()->GetAnimator());
settings.SetPreemptionStrategy(ui::LayerAnimator::ENQUEUE_NEW_ANIMATION);
settings.AddObserver(new ShowWallpaperAnimationObserver(root_window,
+ container_id,
desktop_widget));
desktop_widget->Show();
desktop_widget->GetNativeView()->SetName("DesktopBackgroundView");

Powered by Google App Engine
This is Rietveld 408576698