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

Side by Side Diff: views/view_unittest.cc

Issue 7044062: Use SkMatrix44 for the underlying implementation of ui::Transform (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Gardening patch Created 9 years, 5 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 | Annotate | Revision Log
« no previous file with comments | « views/view.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 <map> 5 #include <map>
6 6
7 #include "base/memory/scoped_ptr.h" 7 #include "base/memory/scoped_ptr.h"
8 #include "base/string_util.h" 8 #include "base/string_util.h"
9 #include "base/utf_string_conversions.h" 9 #include "base/utf_string_conversions.h"
10 #include "testing/gmock/include/gmock/gmock.h" 10 #include "testing/gmock/include/gmock/gmock.h"
(...skipping 595 matching lines...) Expand 10 before | Expand all | Expand 10 after
606 606
607 DISALLOW_COPY_AND_ASSIGN(HitTestView); 607 DISALLOW_COPY_AND_ASSIGN(HitTestView);
608 }; 608 };
609 609
610 gfx::Point ConvertPointToView(View* view, const gfx::Point& p) { 610 gfx::Point ConvertPointToView(View* view, const gfx::Point& p) {
611 gfx::Point tmp(p); 611 gfx::Point tmp(p);
612 View::ConvertPointToView(view->GetWidget()->GetRootView(), view, &tmp); 612 View::ConvertPointToView(view->GetWidget()->GetRootView(), view, &tmp);
613 return tmp; 613 return tmp;
614 } 614 }
615 615
616 void RotateCounterclockwise(ui::Transform& transform) {
617 transform.matrix().set3x3(0, -1, 0,
618 1, 0, 0,
619 0, 0, 1);
620 }
621
622 void RotateClockwise(ui::Transform& transform) {
623 transform.matrix().set3x3( 0, 1, 0,
624 -1, 0, 0,
625 0, 0, 1);
626 }
627
616 } // namespace 628 } // namespace
617 629
618 TEST_F(ViewTest, HitTestMasks) { 630 TEST_F(ViewTest, HitTestMasks) {
619 Widget* widget = new Widget; 631 Widget* widget = new Widget;
620 widget->Init(Widget::InitParams(Widget::InitParams::TYPE_POPUP)); 632 widget->Init(Widget::InitParams(Widget::InitParams::TYPE_POPUP));
621 View* root_view = widget->GetRootView(); 633 View* root_view = widget->GetRootView();
622 root_view->SetBounds(0, 0, 500, 500); 634 root_view->SetBounds(0, 0, 500, 500);
623 635
624 gfx::Rect v1_bounds = gfx::Rect(0, 0, 100, 100); 636 gfx::Rect v1_bounds = gfx::Rect(0, 0, 100, 100);
625 HitTestView* v1 = new HitTestView(false); 637 HitTestView* v1 = new HitTestView(false);
(...skipping 888 matching lines...) Expand 10 before | Expand all | Expand 10 after
1514 v1->AddChildView(v2); 1526 v1->AddChildView(v2);
1515 1527
1516 // At this moment, |v2| occupies (100, 100) to (300, 200) in |root|. 1528 // At this moment, |v2| occupies (100, 100) to (300, 200) in |root|.
1517 v1->ClearScheduledPaintRect(); 1529 v1->ClearScheduledPaintRect();
1518 v2->SchedulePaint(); 1530 v2->SchedulePaint();
1519 1531
1520 EXPECT_EQ(gfx::Rect(100, 100, 200, 100), v1->scheduled_paint_rect()); 1532 EXPECT_EQ(gfx::Rect(100, 100, 200, 100), v1->scheduled_paint_rect());
1521 1533
1522 // Rotate |v1| counter-clockwise. 1534 // Rotate |v1| counter-clockwise.
1523 ui::Transform transform; 1535 ui::Transform transform;
1524 transform.SetRotate(-90.0f); 1536 RotateCounterclockwise(transform);
1525 transform.SetTranslateY(500.0f); 1537 transform.SetTranslateY(500.0f);
1526 v1->SetTransform(transform); 1538 v1->SetTransform(transform);
1527 1539
1528 // |v2| now occupies (100, 200) to (200, 400) in |root|. 1540 // |v2| now occupies (100, 200) to (200, 400) in |root|.
1529 1541
1530 v1->ClearScheduledPaintRect(); 1542 v1->ClearScheduledPaintRect();
1531 v2->SchedulePaint(); 1543 v2->SchedulePaint();
1532 1544
1533 EXPECT_EQ(gfx::Rect(100, 200, 100, 200), v1->scheduled_paint_rect()); 1545 EXPECT_EQ(gfx::Rect(100, 200, 100, 200), v1->scheduled_paint_rect());
1534 1546
(...skipping 13 matching lines...) Expand all
1548 widget->Init(params); 1560 widget->Init(params);
1549 View* root = widget->GetRootView(); 1561 View* root = widget->GetRootView();
1550 1562
1551 root->AddChildView(v1); 1563 root->AddChildView(v1);
1552 v1->AddChildView(v2); 1564 v1->AddChildView(v2);
1553 1565
1554 // At this moment, |v2| occupies (100, 100) to (300, 200) in |root|. 1566 // At this moment, |v2| occupies (100, 100) to (300, 200) in |root|.
1555 1567
1556 // Rotate |v1| counter-clockwise. 1568 // Rotate |v1| counter-clockwise.
1557 ui::Transform transform(v1->GetTransform()); 1569 ui::Transform transform(v1->GetTransform());
1558 transform.SetRotate(-90.0f); 1570 RotateCounterclockwise(transform);
1559 transform.SetTranslateY(500.0f); 1571 transform.SetTranslateY(500.0f);
1560 v1->SetTransform(transform); 1572 v1->SetTransform(transform);
1561 1573
1562 // |v2| now occupies (100, 200) to (200, 400) in |root|. 1574 // |v2| now occupies (100, 200) to (200, 400) in |root|.
1563 v1->Reset(); 1575 v1->Reset();
1564 v2->Reset(); 1576 v2->Reset();
1565 1577
1566 MouseEvent pressed(ui::ET_MOUSE_PRESSED, 1578 MouseEvent pressed(ui::ET_MOUSE_PRESSED,
1567 110, 210, 1579 110, 210,
1568 ui::EF_LEFT_BUTTON_DOWN); 1580 ui::EF_LEFT_BUTTON_DOWN);
1569 root->OnMousePressed(pressed); 1581 root->OnMousePressed(pressed);
1570 EXPECT_EQ(0, v1->last_mouse_event_type_); 1582 EXPECT_EQ(0, v1->last_mouse_event_type_);
1571 EXPECT_EQ(ui::ET_MOUSE_PRESSED, v2->last_mouse_event_type_); 1583 EXPECT_EQ(ui::ET_MOUSE_PRESSED, v2->last_mouse_event_type_);
1572 EXPECT_EQ(190, v2->location_.x()); 1584 EXPECT_EQ(190, v2->location_.x());
1573 EXPECT_EQ(10, v2->location_.y()); 1585 EXPECT_EQ(10, v2->location_.y());
1574 1586
1575 MouseEvent released(ui::ET_MOUSE_RELEASED, 0, 0, 0); 1587 MouseEvent released(ui::ET_MOUSE_RELEASED, 0, 0, 0);
1576 root->OnMouseReleased(released); 1588 root->OnMouseReleased(released);
1577 1589
1578 // Now rotate |v2| inside |v1| clockwise. 1590 // Now rotate |v2| inside |v1| clockwise.
1579 transform = v2->GetTransform(); 1591 transform = v2->GetTransform();
1580 transform.SetRotate(90.0f); 1592 RotateClockwise(transform);
1581 transform.SetTranslateX(100.0f); 1593 transform.SetTranslateX(100.0f);
1582 v2->SetTransform(transform); 1594 v2->SetTransform(transform);
1583 1595
1584 // Now, |v2| occupies (100, 100) to (200, 300) in |v1|, and (100, 300) to 1596 // Now, |v2| occupies (100, 100) to (200, 300) in |v1|, and (100, 300) to
1585 // (300, 400) in |root|. 1597 // (300, 400) in |root|.
1586 1598
1587 v1->Reset(); 1599 v1->Reset();
1588 v2->Reset(); 1600 v2->Reset();
1589 1601
1590 MouseEvent p2(ui::ET_MOUSE_PRESSED, 1602 MouseEvent p2(ui::ET_MOUSE_PRESSED,
1591 110, 320, 1603 110, 320,
1592 ui::EF_LEFT_BUTTON_DOWN); 1604 ui::EF_LEFT_BUTTON_DOWN);
1593 root->OnMousePressed(p2); 1605 root->OnMousePressed(p2);
1594 EXPECT_EQ(0, v1->last_mouse_event_type_); 1606 EXPECT_EQ(0, v1->last_mouse_event_type_);
1595 EXPECT_EQ(ui::ET_MOUSE_PRESSED, v2->last_mouse_event_type_); 1607 EXPECT_EQ(ui::ET_MOUSE_PRESSED, v2->last_mouse_event_type_);
1596 EXPECT_EQ(10, v2->location_.x()); 1608 EXPECT_EQ(10, v2->location_.x());
1597 EXPECT_EQ(20, v2->location_.y()); 1609 EXPECT_EQ(20, v2->location_.y());
1598 1610
1599 root->OnMouseReleased(released); 1611 root->OnMouseReleased(released);
1600 1612
1601 v1->SetTransform(ui::Transform()); 1613 v1->SetTransform(ui::Transform());
1602 v2->SetTransform(ui::Transform()); 1614 v2->SetTransform(ui::Transform());
1603 1615
1604 TestView* v3 = new TestView(); 1616 TestView* v3 = new TestView();
1605 v3->SetBounds(10, 10, 20, 30); 1617 v3->SetBounds(10, 10, 20, 30);
1606 v2->AddChildView(v3); 1618 v2->AddChildView(v3);
1607 1619
1608 // Rotate |v3| clockwise with respect to |v2|. 1620 // Rotate |v3| clockwise with respect to |v2|.
1609 transform = v1->GetTransform(); 1621 transform = v1->GetTransform();
1610 transform.SetRotate(90.0f); 1622 RotateClockwise(transform);
1611 transform.SetTranslateX(30.0f); 1623 transform.SetTranslateX(30.0f);
1612 v3->SetTransform(transform); 1624 v3->SetTransform(transform);
1613 1625
1614 // Scale |v2| with respect to |v1| along both axis. 1626 // Scale |v2| with respect to |v1| along both axis.
1615 transform = v2->GetTransform(); 1627 transform = v2->GetTransform();
1616 transform.SetScale(0.8f, 0.5f); 1628 transform.SetScale(0.8f, 0.5f);
1617 v2->SetTransform(transform); 1629 v2->SetTransform(transform);
1618 1630
1619 // |v3| occupies (108, 105) to (132, 115) in |root|. 1631 // |v3| occupies (108, 105) to (132, 115) in |root|.
1620 1632
(...skipping 15 matching lines...) Expand all
1636 v1->SetTransform(ui::Transform()); 1648 v1->SetTransform(ui::Transform());
1637 v2->SetTransform(ui::Transform()); 1649 v2->SetTransform(ui::Transform());
1638 v3->SetTransform(ui::Transform()); 1650 v3->SetTransform(ui::Transform());
1639 1651
1640 v1->Reset(); 1652 v1->Reset();
1641 v2->Reset(); 1653 v2->Reset();
1642 v3->Reset(); 1654 v3->Reset();
1643 1655
1644 // Rotate |v3| clockwise with respect to |v2|, and scale it along both axis. 1656 // Rotate |v3| clockwise with respect to |v2|, and scale it along both axis.
1645 transform = v3->GetTransform(); 1657 transform = v3->GetTransform();
1646 transform.SetRotate(90.0f); 1658 RotateClockwise(transform);
1647 transform.SetTranslateX(30.0f); 1659 transform.SetTranslateX(30.0f);
1648 // Rotation sets some scaling transformation. Using SetScale would overwrite 1660 // Rotation sets some scaling transformation. Using SetScale would overwrite
1649 // that and pollute the rotation. So combine the scaling with the existing 1661 // that and pollute the rotation. So combine the scaling with the existing
1650 // transforamtion. 1662 // transforamtion.
1651 transform.ConcatScale(0.8f, 0.5f); 1663 transform.ConcatScale(0.8f, 0.5f);
1652 v3->SetTransform(transform); 1664 v3->SetTransform(transform);
1653 1665
1654 // Translate |v2| with respect to |v1|. 1666 // Translate |v2| with respect to |v1|.
1655 transform = v2->GetTransform(); 1667 transform = v2->GetTransform();
1656 transform.SetTranslate(10, 10); 1668 transform.SetTranslate(10, 10);
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
1689 viewport->SetBoundsRect(viewport_bounds); 1701 viewport->SetBoundsRect(viewport_bounds);
1690 contents->SetBounds(0, 0, 100, 200); 1702 contents->SetBounds(0, 0, 100, 200);
1691 1703
1692 View* child = new View; 1704 View* child = new View;
1693 contents->AddChildView(child); 1705 contents->AddChildView(child);
1694 child->SetBounds(10, 90, 50, 50); 1706 child->SetBounds(10, 90, 50, 50);
1695 EXPECT_EQ(gfx::Rect(0, 0, 50, 10), child->GetVisibleBounds()); 1707 EXPECT_EQ(gfx::Rect(0, 0, 50, 10), child->GetVisibleBounds());
1696 1708
1697 // Rotate |child| counter-clockwise 1709 // Rotate |child| counter-clockwise
1698 ui::Transform transform; 1710 ui::Transform transform;
1699 transform.SetRotate(-90.0f); 1711 RotateCounterclockwise(transform);
1700 transform.SetTranslateY(50.0f); 1712 transform.SetTranslateY(50.0f);
1701 child->SetTransform(transform); 1713 child->SetTransform(transform);
1702 EXPECT_EQ(gfx::Rect(40, 0, 10, 50), child->GetVisibleBounds()); 1714 EXPECT_EQ(gfx::Rect(40, 0, 10, 50), child->GetVisibleBounds());
1703 1715
1704 widget->CloseNow(); 1716 widget->CloseNow();
1705 } 1717 }
1706 1718
1707 //////////////////////////////////////////////////////////////////////////////// 1719 ////////////////////////////////////////////////////////////////////////////////
1708 // OnVisibleBoundsChanged() 1720 // OnVisibleBoundsChanged()
1709 1721
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
1820 transform.SetScale(5.0f, 7.0f); 1832 transform.SetScale(5.0f, 7.0f);
1821 child_child->SetTransform(transform); 1833 child_child->SetTransform(transform);
1822 1834
1823 // Sanity check to make sure basic transforms act as expected. 1835 // Sanity check to make sure basic transforms act as expected.
1824 { 1836 {
1825 ui::Transform transform; 1837 ui::Transform transform;
1826 transform.ConcatTranslate(1, 1); 1838 transform.ConcatTranslate(1, 1);
1827 transform.ConcatScale(100, 55); 1839 transform.ConcatScale(100, 55);
1828 transform.ConcatTranslate(110, -110); 1840 transform.ConcatTranslate(110, -110);
1829 1841
1830 EXPECT_EQ(210, transform.matrix().getTranslateX()); 1842 // convert to a 3x3 matrix.
1831 EXPECT_EQ(-55, transform.matrix().getTranslateY()); 1843 const SkMatrix& matrix = transform.matrix();
1832 EXPECT_EQ(100, transform.matrix().getScaleX()); 1844
1833 EXPECT_EQ(55, transform.matrix().getScaleY()); 1845 EXPECT_EQ(210, matrix.getTranslateX());
1834 EXPECT_EQ(0, transform.matrix().getSkewX()); 1846 EXPECT_EQ(-55, matrix.getTranslateY());
1835 EXPECT_EQ(0, transform.matrix().getSkewY()); 1847 EXPECT_EQ(100, matrix.getScaleX());
1848 EXPECT_EQ(55, matrix.getScaleY());
1849 EXPECT_EQ(0, matrix.getSkewX());
1850 EXPECT_EQ(0, matrix.getSkewY());
1836 } 1851 }
1837 1852
1838 { 1853 {
1839 ui::Transform transform; 1854 ui::Transform transform;
1840 transform.SetTranslate(1, 1); 1855 transform.SetTranslate(1, 1);
1841 ui::Transform t2; 1856 ui::Transform t2;
1842 t2.SetScale(100, 55); 1857 t2.SetScale(100, 55);
1843 ui::Transform t3; 1858 ui::Transform t3;
1844 t3.SetTranslate(110, -110); 1859 t3.SetTranslate(110, -110);
1845 transform.ConcatTransform(t2); 1860 transform.ConcatTransform(t2);
1846 transform.ConcatTransform(t3); 1861 transform.ConcatTransform(t3);
1847 1862
1848 EXPECT_EQ(210, transform.matrix().getTranslateX()); 1863 // convert to a 3x3 matrix
1849 EXPECT_EQ(-55, transform.matrix().getTranslateY()); 1864 const SkMatrix& matrix = transform.matrix();
1850 EXPECT_EQ(100, transform.matrix().getScaleX()); 1865
1851 EXPECT_EQ(55, transform.matrix().getScaleY()); 1866 EXPECT_EQ(210, matrix.getTranslateX());
1852 EXPECT_EQ(0, transform.matrix().getSkewX()); 1867 EXPECT_EQ(-55, matrix.getTranslateY());
1853 EXPECT_EQ(0, transform.matrix().getSkewY()); 1868 EXPECT_EQ(100, matrix.getScaleX());
1869 EXPECT_EQ(55, matrix.getScaleY());
1870 EXPECT_EQ(0, matrix.getSkewX());
1871 EXPECT_EQ(0, matrix.getSkewY());
1854 } 1872 }
1855 1873
1856 // Conversions from child->top and top->child. 1874 // Conversions from child->top and top->child.
1857 { 1875 {
1858 gfx::Point point(5, 5); 1876 gfx::Point point(5, 5);
1859 View::ConvertPointToView(child, &top_view, &point); 1877 View::ConvertPointToView(child, &top_view, &point);
1860 EXPECT_EQ(22, point.x()); 1878 EXPECT_EQ(22, point.x());
1861 EXPECT_EQ(39, point.y()); 1879 EXPECT_EQ(39, point.y());
1862 1880
1863 point.SetPoint(22, 39); 1881 point.SetPoint(22, 39);
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
1919 v1->SetBounds(10, 10, 500, 500); 1937 v1->SetBounds(10, 10, 500, 500);
1920 v2->SetBounds(20, 20, 100, 200); 1938 v2->SetBounds(20, 20, 100, 200);
1921 1939
1922 // |v2| now occupies (30, 30) to (130, 230) in |widget| 1940 // |v2| now occupies (30, 30) to (130, 230) in |widget|
1923 gfx::Rect rect(5, 5, 15, 40); 1941 gfx::Rect rect(5, 5, 15, 40);
1924 EXPECT_EQ(gfx::Rect(25, 25, 15, 40), v2->ConvertRectToParent(rect)); 1942 EXPECT_EQ(gfx::Rect(25, 25, 15, 40), v2->ConvertRectToParent(rect));
1925 EXPECT_EQ(gfx::Rect(35, 35, 15, 40), v2->ConvertRectToWidget(rect)); 1943 EXPECT_EQ(gfx::Rect(35, 35, 15, 40), v2->ConvertRectToWidget(rect));
1926 1944
1927 // Rotate |v2| 1945 // Rotate |v2|
1928 ui::Transform t2; 1946 ui::Transform t2;
1929 t2.SetRotate(-90.0f); 1947 RotateCounterclockwise(t2);
1930 t2.SetTranslateY(100.0f); 1948 t2.SetTranslateY(100.0f);
1931 v2->SetTransform(t2); 1949 v2->SetTransform(t2);
1932 1950
1933 // |v2| now occupies (30, 30) to (230, 130) in |widget| 1951 // |v2| now occupies (30, 30) to (230, 130) in |widget|
1934 EXPECT_EQ(gfx::Rect(25, 100, 40, 15), v2->ConvertRectToParent(rect)); 1952 EXPECT_EQ(gfx::Rect(25, 100, 40, 15), v2->ConvertRectToParent(rect));
1935 EXPECT_EQ(gfx::Rect(35, 110, 40, 15), v2->ConvertRectToWidget(rect)); 1953 EXPECT_EQ(gfx::Rect(35, 110, 40, 15), v2->ConvertRectToWidget(rect));
1936 1954
1937 // Scale down |v1| 1955 // Scale down |v1|
1938 ui::Transform t1; 1956 ui::Transform t1;
1939 t1.SetScale(0.5, 0.5); 1957 t1.SetScale(0.5, 0.5);
(...skipping 624 matching lines...) Expand 10 before | Expand all | Expand 10 after
2564 EXPECT_EQ(gfx::Rect(36, 48, 40, 50), v2->layer()->bounds()); 2582 EXPECT_EQ(gfx::Rect(36, 48, 40, 50), v2->layer()->bounds());
2565 } 2583 }
2566 2584
2567 // Makes sure a transform persists after toggling the visibility. 2585 // Makes sure a transform persists after toggling the visibility.
2568 TEST_F(ViewLayerTest, ToggleVisibilityWithTransform) { 2586 TEST_F(ViewLayerTest, ToggleVisibilityWithTransform) {
2569 View* view = new View; 2587 View* view = new View;
2570 ui::Transform transform; 2588 ui::Transform transform;
2571 transform.SetScale(2.0f, 2.0f); 2589 transform.SetScale(2.0f, 2.0f);
2572 view->SetTransform(transform); 2590 view->SetTransform(transform);
2573 widget()->SetContentsView(view); 2591 widget()->SetContentsView(view);
2574 EXPECT_EQ(2.0f, view->GetTransform().matrix()[0]); 2592 EXPECT_EQ(2.0f, view->GetTransform().matrix().get(0, 0));
2575 2593
2576 view->SetVisible(false); 2594 view->SetVisible(false);
2577 EXPECT_EQ(2.0f, view->GetTransform().matrix()[0]); 2595 EXPECT_EQ(2.0f, view->GetTransform().matrix().get(0, 0));
2578 2596
2579 view->SetVisible(true); 2597 view->SetVisible(true);
2580 EXPECT_EQ(2.0f, view->GetTransform().matrix()[0]); 2598 EXPECT_EQ(2.0f, view->GetTransform().matrix().get(0, 0));
2581 } 2599 }
2582 2600
2583 // Verifies a transform persists after removing/adding a view with a transform. 2601 // Verifies a transform persists after removing/adding a view with a transform.
2584 TEST_F(ViewLayerTest, ResetTransformOnLayerAfterAdd) { 2602 TEST_F(ViewLayerTest, ResetTransformOnLayerAfterAdd) {
2585 View* view = new View; 2603 View* view = new View;
2586 ui::Transform transform; 2604 ui::Transform transform;
2587 transform.SetScale(2.0f, 2.0f); 2605 transform.SetScale(2.0f, 2.0f);
2588 view->SetTransform(transform); 2606 view->SetTransform(transform);
2589 widget()->SetContentsView(view); 2607 widget()->SetContentsView(view);
2590 EXPECT_EQ(2.0f, view->GetTransform().matrix()[0]); 2608 EXPECT_EQ(2.0f, view->GetTransform().matrix()[0]);
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
2676 EXPECT_EQ(gfx::Rect(11, 22, 100, 200), widget_view_host->layer()->bounds()); 2694 EXPECT_EQ(gfx::Rect(11, 22, 100, 200), widget_view_host->layer()->bounds());
2677 ASSERT_TRUE(child_view->layer() != NULL); 2695 ASSERT_TRUE(child_view->layer() != NULL);
2678 EXPECT_EQ(gfx::Rect(5, 6, 10, 11), child_view->layer()->bounds()); 2696 EXPECT_EQ(gfx::Rect(5, 6, 10, 11), child_view->layer()->bounds());
2679 2697
2680 child_widget->CloseNow(); 2698 child_widget->CloseNow();
2681 } 2699 }
2682 2700
2683 #endif // VIEWS_COMPOSITOR 2701 #endif // VIEWS_COMPOSITOR
2684 2702
2685 } // namespace views 2703 } // namespace views
OLDNEW
« no previous file with comments | « views/view.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698