| 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 "ash/desktop_background/desktop_background_view.h" | 5 #include "ash/desktop_background/desktop_background_view.h" | 
| 6 | 6 | 
| 7 #include <limits> | 7 #include <limits> | 
| 8 | 8 | 
| 9 #include "ash/ash_export.h" | 9 #include "ash/ash_export.h" | 
| 10 #include "ash/desktop_background/desktop_background_controller.h" | 10 #include "ash/desktop_background/desktop_background_controller.h" | 
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 50     view->SetPaintToLayer(true); | 50     view->SetPaintToLayer(true); | 
| 51   } | 51   } | 
| 52 | 52 | 
| 53   // Overrides views::View. | 53   // Overrides views::View. | 
| 54   void Layout() override { | 54   void Layout() override { | 
| 55     gfx::Display display = Shell::GetScreen()->GetDisplayNearestWindow( | 55     gfx::Display display = Shell::GetScreen()->GetDisplayNearestWindow( | 
| 56         GetWidget()->GetNativeView()); | 56         GetWidget()->GetNativeView()); | 
| 57     DisplayManager* display_manager = Shell::GetInstance()->display_manager(); | 57     DisplayManager* display_manager = Shell::GetInstance()->display_manager(); | 
| 58     DisplayInfo info = display_manager->GetDisplayInfo(display.id()); | 58     DisplayInfo info = display_manager->GetDisplayInfo(display.id()); | 
| 59     float ui_scale = info.GetEffectiveUIScale(); | 59     float ui_scale = info.GetEffectiveUIScale(); | 
| 60     gfx::SizeF pixel_size = display.size(); | 60     gfx::Size rounded_size = | 
| 61     pixel_size.Scale(1.0f / ui_scale); | 61         gfx::ScaleToFlooredSize(display.size(), 1.f / ui_scale); | 
| 62     gfx::Size rounded_size = gfx::ToFlooredSize(pixel_size); |  | 
| 63     DCHECK_EQ(1, child_count()); | 62     DCHECK_EQ(1, child_count()); | 
| 64     views::View* child = child_at(0); | 63     views::View* child = child_at(0); | 
| 65     child->SetBounds(0, 0, rounded_size.width(), rounded_size.height()); | 64     child->SetBounds(0, 0, rounded_size.width(), rounded_size.height()); | 
| 66     gfx::Transform transform; | 65     gfx::Transform transform; | 
| 67     // Apply RTL transform explicitly becacuse Views layer code | 66     // Apply RTL transform explicitly becacuse Views layer code | 
| 68     // doesn't handle RTL.  crbug.com/458753. | 67     // doesn't handle RTL.  crbug.com/458753. | 
| 69     transform.Translate(-child->GetMirroredX(), 0); | 68     transform.Translate(-child->GetMirroredX(), 0); | 
| 70     transform.Scale(ui_scale, ui_scale); | 69     transform.Scale(ui_scale, ui_scale); | 
| 71     child->SetTransform(transform); | 70     child->SetTransform(transform); | 
| 72   } | 71   } | 
| (...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 247     // Disable animation if transition to login screen from an empty background. | 246     // Disable animation if transition to login screen from an empty background. | 
| 248     wm::SetWindowVisibilityAnimationTransition( | 247     wm::SetWindowVisibilityAnimationTransition( | 
| 249         desktop_widget->GetNativeView(), wm::ANIMATE_NONE); | 248         desktop_widget->GetNativeView(), wm::ANIMATE_NONE); | 
| 250   } | 249   } | 
| 251 | 250 | 
| 252   desktop_widget->SetBounds(params.parent->bounds()); | 251   desktop_widget->SetBounds(params.parent->bounds()); | 
| 253   return desktop_widget; | 252   return desktop_widget; | 
| 254 } | 253 } | 
| 255 | 254 | 
| 256 }  // namespace ash | 255 }  // namespace ash | 
| OLD | NEW | 
|---|