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

Side by Side Diff: ui/views/widget/window_reorderer_unittest.cc

Issue 2639203007: Update SetPaintToLayer to accept LayerType (Closed)
Patch Set: Refactor Created 3 years, 11 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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 <memory> 5 #include <memory>
6 6
7 #include "ui/aura/test/aura_test_base.h" 7 #include "ui/aura/test/aura_test_base.h"
8 #include "ui/aura/test/test_windows.h" 8 #include "ui/aura/test/test_windows.h"
9 #include "ui/aura/window.h" 9 #include "ui/aura/window.h"
10 #include "ui/aura/window_event_dispatcher.h" 10 #include "ui/aura/window_event_dispatcher.h"
11 #include "ui/compositor/layer.h" 11 #include "ui/compositor/layer.h"
12 #include "ui/compositor/layer_type.h"
12 #include "ui/compositor/test/test_layers.h" 13 #include "ui/compositor/test/test_layers.h"
13 #include "ui/views/view.h" 14 #include "ui/views/view.h"
14 #include "ui/views/view_constants_aura.h" 15 #include "ui/views/view_constants_aura.h"
15 #include "ui/views/widget/widget.h" 16 #include "ui/views/widget/widget.h"
16 17
17 namespace views { 18 namespace views {
18 namespace { 19 namespace {
19 20
20 // Creates a control widget with the passed in parameters. 21 // Creates a control widget with the passed in parameters.
21 // The caller takes ownership of the returned widget. 22 // The caller takes ownership of the returned widget.
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
59 parent->Show(); 60 parent->Show();
60 aura::Window* parent_window = parent->GetNativeWindow(); 61 aura::Window* parent_window = parent->GetNativeWindow();
61 62
62 View* contents_view = new View(); 63 View* contents_view = new View();
63 parent->SetContentsView(contents_view); 64 parent->SetContentsView(contents_view);
64 65
65 // 1) Test that layers for views and layers for windows associated to a host 66 // 1) Test that layers for views and layers for windows associated to a host
66 // view are stacked below the layers for any windows not associated to a host 67 // view are stacked below the layers for any windows not associated to a host
67 // view. 68 // view.
68 View* v = new View(); 69 View* v = new View();
69 v->SetPaintToLayer(true); 70 v->SetPaintToLayer(ui::LAYER_TEXTURED);
70 v->layer()->set_name("v"); 71 v->layer()->set_name("v");
71 contents_view->AddChildView(v); 72 contents_view->AddChildView(v);
72 73
73 std::unique_ptr<Widget> w1( 74 std::unique_ptr<Widget> w1(
74 CreateControlWidget(parent_window, gfx::Rect(0, 1, 100, 101))); 75 CreateControlWidget(parent_window, gfx::Rect(0, 1, 100, 101)));
75 SetWindowAndLayerName(w1->GetNativeView(), "w1"); 76 SetWindowAndLayerName(w1->GetNativeView(), "w1");
76 w1->Show(); 77 w1->Show();
77 std::unique_ptr<Widget> w2( 78 std::unique_ptr<Widget> w2(
78 CreateControlWidget(parent_window, gfx::Rect(0, 2, 100, 102))); 79 CreateControlWidget(parent_window, gfx::Rect(0, 2, 100, 102)));
79 SetWindowAndLayerName(w2->GetNativeView(), "w2"); 80 SetWindowAndLayerName(w2->GetNativeView(), "w2");
(...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after
208 // +-- v1 209 // +-- v1
209 // +-- v11* 210 // +-- v11*
210 // +-- v12 (attached window) 211 // +-- v12 (attached window)
211 // +-- v13* 212 // +-- v13*
212 // +--v2* 213 // +--v2*
213 214
214 View* v1 = new View(); 215 View* v1 = new View();
215 contents_view->AddChildView(v1); 216 contents_view->AddChildView(v1);
216 217
217 View* v11 = new View(); 218 View* v11 = new View();
218 v11->SetPaintToLayer(true); 219 v11->SetPaintToLayer(ui::LAYER_TEXTURED);
219 v11->layer()->set_name("v11"); 220 v11->layer()->set_name("v11");
220 v1->AddChildView(v11); 221 v1->AddChildView(v11);
221 222
222 std::unique_ptr<Widget> w( 223 std::unique_ptr<Widget> w(
223 CreateControlWidget(parent_window, gfx::Rect(0, 1, 100, 101))); 224 CreateControlWidget(parent_window, gfx::Rect(0, 1, 100, 101)));
224 SetWindowAndLayerName(w->GetNativeView(), "w"); 225 SetWindowAndLayerName(w->GetNativeView(), "w");
225 w->Show(); 226 w->Show();
226 227
227 View* v12 = new View(); 228 View* v12 = new View();
228 v1->AddChildView(v12); 229 v1->AddChildView(v12);
229 w->GetNativeView()->SetProperty(kHostViewKey, v12); 230 w->GetNativeView()->SetProperty(kHostViewKey, v12);
230 231
231 View* v13 = new View(); 232 View* v13 = new View();
232 v13->SetPaintToLayer(true); 233 v13->SetPaintToLayer(ui::LAYER_TEXTURED);
233 v13->layer()->set_name("v13"); 234 v13->layer()->set_name("v13");
234 v1->AddChildView(v13); 235 v1->AddChildView(v13);
235 236
236 View* v2 = new View(); 237 View* v2 = new View();
237 v2->SetPaintToLayer(true); 238 v2->SetPaintToLayer(ui::LAYER_TEXTURED);
238 v2->layer()->set_name("v2"); 239 v2->layer()->set_name("v2");
239 contents_view->AddChildView(v2); 240 contents_view->AddChildView(v2);
240 241
241 // Test intial state. 242 // Test intial state.
242 EXPECT_EQ("w", ChildWindowNamesAsString(*parent_window)); 243 EXPECT_EQ("w", ChildWindowNamesAsString(*parent_window));
243 EXPECT_EQ("v11 w v13 v2", 244 EXPECT_EQ("v11 w v13 v2",
244 ui::test::ChildLayerNamesAsString(*parent_window->layer())); 245 ui::test::ChildLayerNamesAsString(*parent_window->layer()));
245 246
246 // |w|'s layer should be stacked above |v1|'s layer. 247 // |w|'s layer should be stacked above |v1|'s layer.
247 v1->SetPaintToLayer(true); 248 v1->SetPaintToLayer(ui::LAYER_TEXTURED);
248 v1->layer()->set_name("v1"); 249 v1->layer()->set_name("v1");
249 EXPECT_EQ("w", ChildWindowNamesAsString(*parent_window)); 250 EXPECT_EQ("w", ChildWindowNamesAsString(*parent_window));
250 EXPECT_EQ("v1 w v2", 251 EXPECT_EQ("v1 w v2",
251 ui::test::ChildLayerNamesAsString(*parent_window->layer())); 252 ui::test::ChildLayerNamesAsString(*parent_window->layer()));
252 253
253 // Test moving the host view from one view with a layer to another. 254 // Test moving the host view from one view with a layer to another.
254 v2->AddChildView(v12); 255 v2->AddChildView(v12);
255 EXPECT_EQ("w", ChildWindowNamesAsString(*parent_window)); 256 EXPECT_EQ("w", ChildWindowNamesAsString(*parent_window));
256 EXPECT_EQ("v1 v2 w", 257 EXPECT_EQ("v1 v2 w",
257 ui::test::ChildLayerNamesAsString(*parent_window->layer())); 258 ui::test::ChildLayerNamesAsString(*parent_window->layer()));
258 259
259 // Work around for bug in NativeWidgetAura. 260 // Work around for bug in NativeWidgetAura.
260 // TODO: fix bug and remove this. 261 // TODO: fix bug and remove this.
261 parent->Close(); 262 parent->Close();
262 } 263 }
263 264
264 } // namespace 265 } // namespace
265 } // namespace views 266 } // namespace views
OLDNEW
« ui/views/view.cc ('K') | « ui/views/widget/native_widget_aura_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698