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

Unified Diff: views/layout/grid_layout_unittest.cc

Issue 8588064: views: Move bubble, events, focus and layout to ui/views/. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 1 month 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « views/layout/grid_layout.cc ('k') | views/layout/layout_constants.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: views/layout/grid_layout_unittest.cc
diff --git a/views/layout/grid_layout_unittest.cc b/views/layout/grid_layout_unittest.cc
deleted file mode 100644
index 542d7c5ec15c5d596d43a716df3fdc5929bdc414..0000000000000000000000000000000000000000
--- a/views/layout/grid_layout_unittest.cc
+++ /dev/null
@@ -1,606 +0,0 @@
-// Copyright (c) 2011 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.
-
-#include "testing/gtest/include/gtest/gtest.h"
-#include "views/layout/grid_layout.h"
-#include "views/view.h"
-
-using views::ColumnSet;
-using views::GridLayout;
-using views::View;
-
-static void ExpectViewBoundsEquals(int x, int y, int w, int h,
- const View* view) {
- EXPECT_EQ(x, view->x());
- EXPECT_EQ(y, view->y());
- EXPECT_EQ(w, view->width());
- EXPECT_EQ(h, view->height());
-}
-
-class SettableSizeView : public View {
- public:
- explicit SettableSizeView(const gfx::Size& pref) {
- pref_ = pref;
- }
-
- virtual gfx::Size GetPreferredSize() {
- return pref_;
- }
-
- private:
- gfx::Size pref_;
-};
-
-// A view with fixed circumference that trades height for width.
-class FlexibleView : public View {
- public:
- explicit FlexibleView(int circumference) {
- circumference_ = circumference;
- }
-
- virtual gfx::Size GetPreferredSize() {
- return gfx::Size(0, circumference_ / 2);
- }
-
- virtual int GetHeightForWidth(int width) {
- return std::max(0, circumference_ / 2 - width);
- }
-
- private:
- int circumference_;
-};
-
-class GridLayoutTest : public testing::Test {
- public:
- virtual void SetUp() {
- layout = new GridLayout(&host);
- }
-
- virtual void TearDown() {
- delete layout;
- }
-
- virtual void RemoveAll() {
- for (int i = host.child_count() - 1; i >= 0; i--)
- host.RemoveChildView(host.child_at(i));
- }
-
- void GetPreferredSize() {
- pref = layout->GetPreferredSize(&host);
- }
-
- gfx::Size pref;
- gfx::Rect bounds;
- View host;
- GridLayout* layout;
-};
-
-class GridLayoutAlignmentTest : public testing::Test {
- public:
- GridLayoutAlignmentTest() :
- host(),
- v1(gfx::Size(10, 20)),
- layout(new GridLayout(&host)) {}
-
- virtual void SetUp() {
- }
-
- virtual void TearDown() {
- delete layout;
- }
-
- virtual void RemoveAll() {
- for (int i = host.child_count() - 1; i >= 0; i--)
- host.RemoveChildView(host.child_at(i));
- }
-
- void TestAlignment(GridLayout::Alignment alignment, gfx::Rect* bounds) {
- ColumnSet* c1 = layout->AddColumnSet(0);
- c1->AddColumn(alignment, alignment, 1, GridLayout::USE_PREF, 0, 0);
- layout->StartRow(1, 0);
- layout->AddView(&v1);
- gfx::Size pref = layout->GetPreferredSize(&host);
- EXPECT_EQ(gfx::Size(10, 20), pref);
- host.SetBounds(0, 0, 100, 100);
- layout->Layout(&host);
- *bounds = v1.bounds();
- RemoveAll();
- }
-
- View host;
- SettableSizeView v1;
- GridLayout* layout;
-};
-
-TEST_F(GridLayoutAlignmentTest, Fill) {
- gfx::Rect bounds;
- TestAlignment(GridLayout::FILL, &bounds);
- EXPECT_EQ(gfx::Rect(0, 0, 100, 100), bounds);
-}
-
-TEST_F(GridLayoutAlignmentTest, Leading) {
- gfx::Rect bounds;
- TestAlignment(GridLayout::LEADING, &bounds);
- EXPECT_EQ(gfx::Rect(0, 0, 10, 20), bounds);
-}
-
-TEST_F(GridLayoutAlignmentTest, Center) {
- gfx::Rect bounds;
- TestAlignment(GridLayout::CENTER, &bounds);
- EXPECT_EQ(gfx::Rect(45, 40, 10, 20), bounds);
-}
-
-TEST_F(GridLayoutAlignmentTest, Trailing) {
- gfx::Rect bounds;
- TestAlignment(GridLayout::TRAILING, &bounds);
- EXPECT_EQ(gfx::Rect(90, 80, 10, 20), bounds);
-}
-
-TEST_F(GridLayoutTest, TwoColumns) {
- SettableSizeView v1(gfx::Size(10, 20));
- SettableSizeView v2(gfx::Size(20, 20));
- ColumnSet* c1 = layout->AddColumnSet(0);
- c1->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 0, GridLayout::USE_PREF, 0, 0);
- c1->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 0, GridLayout::USE_PREF, 0, 0);
- layout->StartRow(0, 0);
- layout->AddView(&v1);
- layout->AddView(&v2);
-
- GetPreferredSize();
- EXPECT_EQ(gfx::Size(30, 20), pref);
-
- host.SetBounds(0, 0, pref.width(), pref.height());
- layout->Layout(&host);
- ExpectViewBoundsEquals(0, 0, 10, 20, &v1);
- ExpectViewBoundsEquals(10, 0, 20, 20, &v2);
-
- RemoveAll();
-}
-
-TEST_F(GridLayoutTest, ColSpan1) {
- SettableSizeView v1(gfx::Size(100, 20));
- SettableSizeView v2(gfx::Size(10, 40));
- ColumnSet* c1 = layout->AddColumnSet(0);
- c1->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 0, GridLayout::USE_PREF, 0, 0);
- c1->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 1, GridLayout::USE_PREF, 0, 0);
- layout->StartRow(0, 0);
- layout->AddView(&v1, 2, 1);
- layout->StartRow(0, 0);
- layout->AddView(&v2);
-
- GetPreferredSize();
- EXPECT_EQ(gfx::Size(100, 60), pref);
-
- host.SetBounds(0, 0, pref.width(), pref.height());
- layout->Layout(&host);
- ExpectViewBoundsEquals(0, 0, 100, 20, &v1);
- ExpectViewBoundsEquals(0, 20, 10, 40, &v2);
-
- RemoveAll();
-}
-
-TEST_F(GridLayoutTest, ColSpan2) {
- SettableSizeView v1(gfx::Size(100, 20));
- SettableSizeView v2(gfx::Size(10, 20));
- ColumnSet* c1 = layout->AddColumnSet(0);
- c1->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 1, GridLayout::USE_PREF, 0, 0);
- c1->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 0, GridLayout::USE_PREF, 0, 0);
- layout->StartRow(0, 0);
- layout->AddView(&v1, 2, 1);
- layout->StartRow(0, 0);
- layout->SkipColumns(1);
- layout->AddView(&v2);
-
- GetPreferredSize();
- EXPECT_EQ(gfx::Size(100, 40), pref);
-
- host.SetBounds(0, 0, pref.width(), pref.height());
- layout->Layout(&host);
- ExpectViewBoundsEquals(0, 0, 100, 20, &v1);
- ExpectViewBoundsEquals(90, 20, 10, 20, &v2);
-
- RemoveAll();
-}
-
-TEST_F(GridLayoutTest, ColSpan3) {
- SettableSizeView v1(gfx::Size(100, 20));
- SettableSizeView v2(gfx::Size(10, 20));
- SettableSizeView v3(gfx::Size(10, 20));
- ColumnSet* c1 = layout->AddColumnSet(0);
- c1->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 0, GridLayout::USE_PREF, 0, 0);
- c1->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 0, GridLayout::USE_PREF, 0, 0);
- layout->StartRow(0, 0);
- layout->AddView(&v1, 2, 1);
- layout->StartRow(0, 0);
- layout->AddView(&v2);
- layout->AddView(&v3);
-
- GetPreferredSize();
- EXPECT_EQ(gfx::Size(100, 40), pref);
-
- host.SetBounds(0, 0, pref.width(), pref.height());
- layout->Layout(&host);
- ExpectViewBoundsEquals(0, 0, 100, 20, &v1);
- ExpectViewBoundsEquals(0, 20, 10, 20, &v2);
- ExpectViewBoundsEquals(50, 20, 10, 20, &v3);
-
- RemoveAll();
-}
-
-
-TEST_F(GridLayoutTest, ColSpan4) {
- views::ColumnSet* set = layout->AddColumnSet(0);
-
- set->AddColumn(GridLayout::LEADING, GridLayout::LEADING, 0,
- GridLayout::USE_PREF, 0, 0);
- set->AddColumn(GridLayout::LEADING, GridLayout::LEADING, 0,
- GridLayout::USE_PREF, 0, 0);
-
- SettableSizeView v1(gfx::Size(10, 10));
- SettableSizeView v2(gfx::Size(10, 10));
- SettableSizeView v3(gfx::Size(25, 20));
- layout->StartRow(0, 0);
- layout->AddView(&v1);
- layout->AddView(&v2);
- layout->StartRow(0, 0);
- layout->AddView(&v3, 2, 1);
-
- GetPreferredSize();
- EXPECT_EQ(gfx::Size(25, 30), pref);
-
- host.SetBounds(0, 0, pref.width(), pref.height());
- layout->Layout(&host);
- ExpectViewBoundsEquals(0, 0, 10, 10, &v1);
- ExpectViewBoundsEquals(12, 0, 10, 10, &v2);
- ExpectViewBoundsEquals(0, 10, 25, 20, &v3);
-
- RemoveAll();
-}
-
-TEST_F(GridLayoutTest, SameSizeColumns) {
- SettableSizeView v1(gfx::Size(50, 20));
- SettableSizeView v2(gfx::Size(10, 10));
- ColumnSet* c1 = layout->AddColumnSet(0);
- c1->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 0, GridLayout::USE_PREF, 0, 0);
- c1->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 0, GridLayout::USE_PREF, 0, 0);
- c1->LinkColumnSizes(0, 1, -1);
- layout->StartRow(0, 0);
- layout->AddView(&v1);
- layout->AddView(&v2);
-
- gfx::Size pref = layout->GetPreferredSize(&host);
- EXPECT_EQ(gfx::Size(100, 20), pref);
-
- host.SetBounds(0, 0, pref.width(), pref.height());
- layout->Layout(&host);
- ExpectViewBoundsEquals(0, 0, 50, 20, &v1);
- ExpectViewBoundsEquals(50, 0, 10, 10, &v2);
-
- RemoveAll();
-}
-
-TEST_F(GridLayoutTest, HorizontalResizeTest1) {
- SettableSizeView v1(gfx::Size(50, 20));
- SettableSizeView v2(gfx::Size(10, 10));
- ColumnSet* c1 = layout->AddColumnSet(0);
- c1->AddColumn(GridLayout::FILL, GridLayout::LEADING,
- 1, GridLayout::USE_PREF, 0, 0);
- c1->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 0, GridLayout::USE_PREF, 0, 0);
- layout->StartRow(0, 0);
- layout->AddView(&v1);
- layout->AddView(&v2);
-
- host.SetBounds(0, 0, 110, 20);
- layout->Layout(&host);
- ExpectViewBoundsEquals(0, 0, 100, 20, &v1);
- ExpectViewBoundsEquals(100, 0, 10, 10, &v2);
-
- RemoveAll();
-}
-
-TEST_F(GridLayoutTest, HorizontalResizeTest2) {
- SettableSizeView v1(gfx::Size(50, 20));
- SettableSizeView v2(gfx::Size(10, 10));
- ColumnSet* c1 = layout->AddColumnSet(0);
- c1->AddColumn(GridLayout::FILL, GridLayout::LEADING,
- 1, GridLayout::USE_PREF, 0, 0);
- c1->AddColumn(GridLayout::TRAILING, GridLayout::LEADING,
- 1, GridLayout::USE_PREF, 0, 0);
- layout->StartRow(0, 0);
- layout->AddView(&v1);
- layout->AddView(&v2);
-
- host.SetBounds(0, 0, 120, 20);
- layout->Layout(&host);
- ExpectViewBoundsEquals(0, 0, 80, 20, &v1);
- ExpectViewBoundsEquals(110, 0, 10, 10, &v2);
-
- RemoveAll();
-}
-
-TEST_F(GridLayoutTest, TestVerticalResize1) {
- SettableSizeView v1(gfx::Size(50, 20));
- SettableSizeView v2(gfx::Size(10, 10));
- ColumnSet* c1 = layout->AddColumnSet(0);
- c1->AddColumn(GridLayout::FILL, GridLayout::FILL,
- 1, GridLayout::USE_PREF, 0, 0);
- layout->StartRow(1, 0);
- layout->AddView(&v1);
- layout->StartRow(0, 0);
- layout->AddView(&v2);
-
- GetPreferredSize();
- EXPECT_EQ(gfx::Size(50, 30), pref);
-
- host.SetBounds(0, 0, 50, 100);
- layout->Layout(&host);
- ExpectViewBoundsEquals(0, 0, 50, 90, &v1);
- ExpectViewBoundsEquals(0, 90, 50, 10, &v2);
-
- RemoveAll();
-}
-
-TEST_F(GridLayoutTest, Insets) {
- SettableSizeView v1(gfx::Size(10, 20));
- ColumnSet* c1 = layout->AddColumnSet(0);
- layout->SetInsets(1, 2, 3, 4);
- c1->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 0, GridLayout::USE_PREF, 0, 0);
- layout->StartRow(0, 0);
- layout->AddView(&v1);
-
- GetPreferredSize();
- EXPECT_EQ(gfx::Size(16, 24), pref);
-
- host.SetBounds(0, 0, pref.width(), pref.height());
- layout->Layout(&host);
- ExpectViewBoundsEquals(2, 1, 10, 20, &v1);
-
- RemoveAll();
-}
-
-TEST_F(GridLayoutTest, FixedSize) {
- layout->SetInsets(2, 2, 2, 2);
-
- views::ColumnSet* set = layout->AddColumnSet(0);
-
- int column_count = 4;
- int title_width = 100;
- int row_count = 2;
- int pref_width = 10;
- int pref_height = 20;
-
- for (int i = 0; i < column_count; ++i) {
- set->AddColumn(views::GridLayout::CENTER,
- views::GridLayout::CENTER,
- 0,
- views::GridLayout::FIXED,
- title_width,
- title_width);
- }
-
- for (int row = 0; row < row_count; ++row) {
- layout->StartRow(0, 0);
- for (int col = 0; col < column_count; ++col) {
- layout->AddView(new SettableSizeView(gfx::Size(pref_width, pref_height)));
- }
- }
-
- layout->Layout(&host);
-
- for (int i = 0; i < column_count; ++i) {
- for (int row = 0; row < row_count; ++row) {
- View* view = host.child_at(row * column_count + i);
- ExpectViewBoundsEquals(
- 2 + title_width * i + (title_width - pref_width) / 2,
- 2 + pref_height * row,
- pref_width,
- pref_height, view);
- }
- }
-
- GetPreferredSize();
- EXPECT_EQ(gfx::Size(column_count * title_width + 4,
- row_count * pref_height + 4), pref);
-}
-
-TEST_F(GridLayoutTest, RowSpanWithPaddingRow) {
- views::ColumnSet* set = layout->AddColumnSet(0);
-
- set->AddColumn(views::GridLayout::CENTER,
- views::GridLayout::CENTER,
- 0,
- views::GridLayout::FIXED,
- 10,
- 10);
-
- layout->StartRow(0, 0);
- layout->AddView(new SettableSizeView(gfx::Size(10, 10)), 1, 2);
- layout->AddPaddingRow(0, 10);
-}
-
-TEST_F(GridLayoutTest, RowSpan) {
- views::ColumnSet* set = layout->AddColumnSet(0);
-
- set->AddColumn(views::GridLayout::LEADING,
- views::GridLayout::LEADING,
- 0,
- views::GridLayout::USE_PREF,
- 0,
- 0);
- set->AddColumn(views::GridLayout::LEADING,
- views::GridLayout::LEADING,
- 0,
- views::GridLayout::USE_PREF,
- 0,
- 0);
-
- layout->StartRow(0, 0);
- layout->AddView(new SettableSizeView(gfx::Size(20, 10)));
- layout->AddView(new SettableSizeView(gfx::Size(20, 40)), 1, 2);
- layout->StartRow(1, 0);
- views::View* s3 = new SettableSizeView(gfx::Size(20, 10));
- layout->AddView(s3);
-
- GetPreferredSize();
- EXPECT_EQ(gfx::Size(40, 40), pref);
-
- host.SetBounds(0, 0, pref.width(), pref.height());
- layout->Layout(&host);
- ExpectViewBoundsEquals(0, 10, 20, 10, s3);
-}
-
-TEST_F(GridLayoutTest, RowSpan2) {
- views::ColumnSet* set = layout->AddColumnSet(0);
-
- set->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 0, GridLayout::USE_PREF, 0, 0);
- set->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 0,GridLayout::USE_PREF, 0, 0);
-
- layout->StartRow(0, 0);
- layout->AddView(new SettableSizeView(gfx::Size(20, 20)));
- views::View* s3 = new SettableSizeView(gfx::Size(64, 64));
- layout->AddView(s3, 1, 3);
-
- layout->AddPaddingRow(0, 10);
-
- layout->StartRow(0, 0);
- layout->AddView(new SettableSizeView(gfx::Size(10, 20)));
-
- GetPreferredSize();
- EXPECT_EQ(gfx::Size(84, 64), pref);
-
- host.SetBounds(0, 0, pref.width(), pref.height());
- layout->Layout(&host);
- ExpectViewBoundsEquals(20, 0, 64, 64, s3);
-}
-
-TEST_F(GridLayoutTest, FixedViewWidth) {
- views::ColumnSet* set = layout->AddColumnSet(0);
-
- set->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 0, GridLayout::USE_PREF, 0, 0);
- set->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 0,GridLayout::USE_PREF, 0, 0);
-
- layout->StartRow(0, 0);
- View* view = new SettableSizeView(gfx::Size(30, 40));
- layout->AddView(view, 1, 1, GridLayout::LEADING, GridLayout::LEADING, 10, 0);
-
- GetPreferredSize();
- EXPECT_EQ(10, pref.width());
- EXPECT_EQ(40, pref.height());
-
- host.SetBounds(0, 0, pref.width(), pref.height());
- layout->Layout(&host);
- ExpectViewBoundsEquals(0, 0, 10, 40, view);
-}
-
-TEST_F(GridLayoutTest, FixedViewHeight) {
- views::ColumnSet* set = layout->AddColumnSet(0);
-
- set->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 0, GridLayout::USE_PREF, 0, 0);
- set->AddColumn(GridLayout::LEADING, GridLayout::LEADING,
- 0,GridLayout::USE_PREF, 0, 0);
-
- layout->StartRow(0, 0);
- View* view = new SettableSizeView(gfx::Size(30, 40));
- layout->AddView(view, 1, 1, GridLayout::LEADING, GridLayout::LEADING, 0, 10);
-
- GetPreferredSize();
- EXPECT_EQ(30, pref.width());
- EXPECT_EQ(10, pref.height());
-
- host.SetBounds(0, 0, pref.width(), pref.height());
- layout->Layout(&host);
- ExpectViewBoundsEquals(0, 0, 30, 10, view);
-}
-
-// Make sure that for views that span columns the underlying columns are resized
-// based on the resize percent of the column.
-TEST_F(GridLayoutTest, ColumnSpanResizing) {
- views::ColumnSet* set = layout->AddColumnSet(0);
-
- set->AddColumn(views::GridLayout::FILL, views::GridLayout::CENTER,
- 2, views::GridLayout::USE_PREF, 0, 0);
- set->AddColumn(views::GridLayout::FILL, views::GridLayout::CENTER,
- 4, views::GridLayout::USE_PREF, 0, 0);
-
- layout->StartRow(0, 0);
- // span_view spans two columns and is twice as big the views added below.
- View* span_view = new SettableSizeView(gfx::Size(12, 40));
- layout->AddView(span_view, 2, 1, GridLayout::LEADING, GridLayout::LEADING);
-
- layout->StartRow(0, 0);
- View* view1 = new SettableSizeView(gfx::Size(2, 40));
- View* view2 = new SettableSizeView(gfx::Size(4, 40));
- layout->AddView(view1);
- layout->AddView(view2);
-
- host.SetBounds(0, 0, 12, 80);
- layout->Layout(&host);
-
- ExpectViewBoundsEquals(0, 0, 12, 40, span_view);
-
- // view1 should be 4 pixels wide
- // column_pref + (remaining_width * column_resize / total_column_resize) =
- // 2 + (6 * 2 / 6).
- ExpectViewBoundsEquals(0, 40, 4, 40, view1);
-
- // And view2 should be 8 pixels wide:
- // 4 + (6 * 4 / 6).
- ExpectViewBoundsEquals(4, 40, 8, 40, view2);
-}
-
-// Check that GetPreferredSize() takes resizing of columns into account when
-// there is additional space in the case we have column sets of different
-// preferred sizes.
-TEST_F(GridLayoutTest, ColumnResizingOnGetPreferredSize) {
- views::ColumnSet* set = layout->AddColumnSet(0);
- set->AddColumn(views::GridLayout::FILL, views::GridLayout::CENTER,
- 1, views::GridLayout::USE_PREF, 0, 0);
-
- set = layout->AddColumnSet(1);
- set->AddColumn(views::GridLayout::FILL, views::GridLayout::CENTER,
- 1, views::GridLayout::USE_PREF, 0, 0);
-
- set = layout->AddColumnSet(2);
- set->AddColumn(views::GridLayout::FILL, views::GridLayout::CENTER,
- 1, views::GridLayout::USE_PREF, 0, 0);
-
- // Make a row containing a flexible view that trades width for height.
- layout->StartRow(0, 0);
- View* view1 = new FlexibleView(100);
- layout->AddView(view1, 1, 1, GridLayout::FILL, GridLayout::LEADING);
-
- // The second row contains a view of fixed size that will enforce a column
- // width of 20 pixels.
- layout->StartRow(0, 1);
- View* view2 = new SettableSizeView(gfx::Size(20, 20));
- layout->AddView(view2, 1, 1, GridLayout::FILL, GridLayout::LEADING);
-
- // Add another flexible view in row three in order to ensure column set
- // ordering doesn't influence sizing behaviour.
- layout->StartRow(0, 2);
- View* view3 = new FlexibleView(40);
- layout->AddView(view3, 1, 1, GridLayout::FILL, GridLayout::LEADING);
-
- // We expect a height of 50: 30 from the variable width view in the first row
- // plus 20 from the statically sized view in the second row. The flexible
- // view in the third row should contribute no height.
- EXPECT_EQ(gfx::Size(20, 50), layout->GetPreferredSize(&host));
-}
« no previous file with comments | « views/layout/grid_layout.cc ('k') | views/layout/layout_constants.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698