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

Side by Side Diff: ash/wm/common/workspace/phantom_window_controller.cc

Issue 1994993003: Moves resources used by ash/wm/common to ash/wm/common/resources (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: repack chrome Created 4 years, 7 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 unified diff | Download patch
OLDNEW
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/wm/common/workspace/phantom_window_controller.h" 5 #include "ash/wm/common/workspace/phantom_window_controller.h"
6 6
7 #include <math.h> 7 #include <math.h>
8 8
9 #include "ash/wm/common/root_window_finder.h" 9 #include "ash/wm/common/root_window_finder.h"
10 #include "ash/wm/common/wm_lookup.h" 10 #include "ash/wm/common/wm_lookup.h"
11 #include "ash/wm/common/wm_root_window_controller.h" 11 #include "ash/wm/common/wm_root_window_controller.h"
12 #include "ash/wm/common/wm_shell_window_ids.h" 12 #include "ash/wm/common/wm_shell_window_ids.h"
13 #include "ash/wm/common/wm_window.h" 13 #include "ash/wm/common/wm_window.h"
14 #include "grit/ash_resources.h" 14 #include "grit/ash_wm_common_resources.h"
15 #include "ui/compositor/layer.h" 15 #include "ui/compositor/layer.h"
16 #include "ui/compositor/scoped_layer_animation_settings.h" 16 #include "ui/compositor/scoped_layer_animation_settings.h"
17 #include "ui/views/background.h" 17 #include "ui/views/background.h"
18 #include "ui/views/painter.h" 18 #include "ui/views/painter.h"
19 #include "ui/views/view.h" 19 #include "ui/views/view.h"
20 #include "ui/views/widget/widget.h" 20 #include "ui/views/widget/widget.h"
21 21
22 namespace ash { 22 namespace ash {
23 namespace { 23 namespace {
24 24
25 // The duration of the show animation. 25 // The duration of the show animation.
26 const int kAnimationDurationMs = 200; 26 const int kAnimationDurationMs = 200;
27 27
28 // The size of the phantom window at the beginning of the show animation in 28 // The size of the phantom window at the beginning of the show animation in
29 // relation to the size of the phantom window at the end of the animation. 29 // relation to the size of the phantom window at the end of the animation.
30 const float kStartBoundsRatio = 0.85f; 30 const float kStartBoundsRatio = 0.85f;
31 31
32 // The amount of pixels that the phantom window's shadow should extend past 32 // The amount of pixels that the phantom window's shadow should extend past
33 // the bounds passed into Show(). 33 // the bounds passed into Show().
34 const int kShadowThickness = 15; 34 const int kShadowThickness = 15;
35 35
36 // The minimum size of a phantom window including the shadow. The minimum size 36 // The minimum size of a phantom window including the shadow. The minimum size
37 // is derived from the size of the IDR_AURA_PHANTOM_WINDOW image assets. 37 // is derived from the size of the IDR_ASH_WM_COMMON_PHANTOM_WINDOW image
38 // assets.
38 const int kMinSizeWithShadow = 100; 39 const int kMinSizeWithShadow = 100;
39 40
40 // Adjusts the phantom window's bounds so that the bounds: 41 // Adjusts the phantom window's bounds so that the bounds:
41 // - Include the size of the shadow. 42 // - Include the size of the shadow.
42 // - Have a size equal to or larger than the minimum phantom window size. 43 // - Have a size equal to or larger than the minimum phantom window size.
43 gfx::Rect GetAdjustedBounds(const gfx::Rect& bounds) { 44 gfx::Rect GetAdjustedBounds(const gfx::Rect& bounds) {
44 int x_inset = std::max( 45 int x_inset = std::max(
45 static_cast<int>(ceil((kMinSizeWithShadow - bounds.width()) / 2.0f)), 46 static_cast<int>(ceil((kMinSizeWithShadow - bounds.width()) / 2.0f)),
46 kShadowThickness); 47 kShadowThickness);
47 int y_inset = std::max( 48 int y_inset = std::max(
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
125 wm::WmWindow* phantom_widget_window = 126 wm::WmWindow* phantom_widget_window =
126 wm::WmLookup::Get()->GetWindowForWidget(phantom_widget.get()); 127 wm::WmLookup::Get()->GetWindowForWidget(phantom_widget.get());
127 phantom_widget_window->SetShellWindowId(kShellWindowId_PhantomWindow); 128 phantom_widget_window->SetShellWindowId(kShellWindowId_PhantomWindow);
128 phantom_widget->SetBounds(bounds_in_screen); 129 phantom_widget->SetBounds(bounds_in_screen);
129 // TODO(sky): I suspect this is never true, verify that. 130 // TODO(sky): I suspect this is never true, verify that.
130 if (phantom_widget_window->GetParent() == window_->GetParent()) { 131 if (phantom_widget_window->GetParent() == window_->GetParent()) {
131 phantom_widget_window->GetParent()->StackChildAbove(phantom_widget_window, 132 phantom_widget_window->GetParent()->StackChildAbove(phantom_widget_window,
132 window_); 133 window_);
133 } 134 }
134 135
135 const int kImages[] = IMAGE_GRID(IDR_AURA_PHANTOM_WINDOW); 136 const int kImages[] = IMAGE_GRID(IDR_ASH_WM_COMMON_PHANTOM_WINDOW);
136 views::Painter* background_painter = 137 views::Painter* background_painter =
137 views::Painter::CreateImageGridPainter(kImages); 138 views::Painter::CreateImageGridPainter(kImages);
138 views::View* content_view = new views::View; 139 views::View* content_view = new views::View;
139 content_view->set_background( 140 content_view->set_background(
140 views::Background::CreateBackgroundPainter(true, background_painter)); 141 views::Background::CreateBackgroundPainter(true, background_painter));
141 phantom_widget->SetContentsView(content_view); 142 phantom_widget->SetContentsView(content_view);
142 143
143 // Show the widget after all the setups. 144 // Show the widget after all the setups.
144 phantom_widget->Show(); 145 phantom_widget->Show();
145 146
146 // Fade the window in. 147 // Fade the window in.
147 ui::Layer* widget_layer = phantom_widget_window->GetLayer(); 148 ui::Layer* widget_layer = phantom_widget_window->GetLayer();
148 widget_layer->SetOpacity(0); 149 widget_layer->SetOpacity(0);
149 ui::ScopedLayerAnimationSettings scoped_setter(widget_layer->GetAnimator()); 150 ui::ScopedLayerAnimationSettings scoped_setter(widget_layer->GetAnimator());
150 scoped_setter.SetTransitionDuration( 151 scoped_setter.SetTransitionDuration(
151 base::TimeDelta::FromMilliseconds(kAnimationDurationMs)); 152 base::TimeDelta::FromMilliseconds(kAnimationDurationMs));
152 widget_layer->SetOpacity(1); 153 widget_layer->SetOpacity(1);
153 154
154 return phantom_widget; 155 return phantom_widget;
155 } 156 }
156 157
157 } // namespace ash 158 } // namespace ash
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698