summaryrefslogtreecommitdiffstats
path: root/ui/views/view_unittest.cc
diff options
context:
space:
mode:
authorsky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-13 22:42:26 +0000
committersky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-13 22:42:26 +0000
commit89c6202ef61755e8ec6e513096bc7ffb25818997 (patch)
tree547050d8ec838f0a216adbdaf7b501cb8a0ca720 /ui/views/view_unittest.cc
parent5fef89241fe5e0ddaa7bf7b6a5f7e48727fde553 (diff)
downloadchromium_src-89c6202ef61755e8ec6e513096bc7ffb25818997.zip
chromium_src-89c6202ef61755e8ec6e513096bc7ffb25818997.tar.gz
chromium_src-89c6202ef61755e8ec6e513096bc7ffb25818997.tar.bz2
Fix bug where layers weren't getting reordered correctly in a
NativeWidgetAura. BUG=none TEST=none R=ben@chromium.org Review URL: http://codereview.chromium.org/9214003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@117715 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/views/view_unittest.cc')
-rw-r--r--ui/views/view_unittest.cc28
1 files changed, 27 insertions, 1 deletions
diff --git a/ui/views/view_unittest.cc b/ui/views/view_unittest.cc
index 739d393..44d7456 100644
--- a/ui/views/view_unittest.cc
+++ b/ui/views/view_unittest.cc
@@ -1,4 +1,4 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -3075,6 +3075,32 @@ TEST_F(ViewLayerTest, FLAKY_ViewLayerTreesInSync) {
EXPECT_TRUE(ViewAndLayerTreeAreConsistent(content, content->layer()));
}
+#if defined(USE_AURA)
+// Verifies when views are reordered the layer is also reordered. The widget is
+// providing the parent layer.
+TEST_F(ViewLayerTest, ReorderUnderWidget) {
+ View* content = new View;
+ widget()->SetContentsView(content);
+ View* c1 = new View;
+ c1->SetPaintToLayer(true);
+ content->AddChildView(c1);
+ View* c2 = new View;
+ c2->SetPaintToLayer(true);
+ content->AddChildView(c2);
+
+ ui::Layer* parent_layer = c1->layer()->parent();
+ ASSERT_TRUE(parent_layer);
+ ASSERT_EQ(2u, parent_layer->children().size());
+ EXPECT_EQ(c1->layer(), parent_layer->children()[0]);
+ EXPECT_EQ(c2->layer(), parent_layer->children()[1]);
+
+ // Move c1 to the front. The layers should have moved too.
+ content->ReorderChildView(c1, -1);
+ EXPECT_EQ(c1->layer(), parent_layer->children()[1]);
+ EXPECT_EQ(c2->layer(), parent_layer->children()[0]);
+}
+#endif
+
#endif // VIEWS_COMPOSITOR
} // namespace views