| 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");
|
|
|