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

Side by Side Diff: cc/layers/picture_layer_impl_unittest.cc

Issue 927783002: cc: Stop passing the occlusion explicitly to AppendQuads. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 10 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
« no previous file with comments | « cc/layers/picture_layer_impl.cc ('k') | cc/layers/scrollbar_layer_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 "cc/layers/picture_layer_impl.h" 5 #include "cc/layers/picture_layer_impl.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <limits> 8 #include <limits>
9 #include <set> 9 #include <set>
10 #include <utility> 10 #include <utility>
(...skipping 1598 matching lines...) Expand 10 before | Expand all | Expand 10 after
1609 FakePicturePileImpl::CreateFilledPile(tile_size, layer_bounds); 1609 FakePicturePileImpl::CreateFilledPile(tile_size, layer_bounds);
1610 1610
1611 gfx::Rect layer_invalidation(150, 200, 30, 180); 1611 gfx::Rect layer_invalidation(150, 200, 30, 180);
1612 SetupTreesWithInvalidation(pending_pile, active_pile, layer_invalidation); 1612 SetupTreesWithInvalidation(pending_pile, active_pile, layer_invalidation);
1613 1613
1614 active_layer_->draw_properties().visible_content_rect = 1614 active_layer_->draw_properties().visible_content_rect =
1615 gfx::Rect(layer_bounds); 1615 gfx::Rect(layer_bounds);
1616 1616
1617 AppendQuadsData data; 1617 AppendQuadsData data;
1618 active_layer_->WillDraw(DRAW_MODE_RESOURCELESS_SOFTWARE, nullptr); 1618 active_layer_->WillDraw(DRAW_MODE_RESOURCELESS_SOFTWARE, nullptr);
1619 active_layer_->AppendQuads(render_pass.get(), Occlusion(), &data); 1619 active_layer_->AppendQuads(render_pass.get(), &data);
1620 active_layer_->DidDraw(nullptr); 1620 active_layer_->DidDraw(nullptr);
1621 1621
1622 ASSERT_EQ(1U, render_pass->quad_list.size()); 1622 ASSERT_EQ(1U, render_pass->quad_list.size());
1623 EXPECT_EQ(DrawQuad::PICTURE_CONTENT, 1623 EXPECT_EQ(DrawQuad::PICTURE_CONTENT,
1624 render_pass->quad_list.front()->material); 1624 render_pass->quad_list.front()->material);
1625 } 1625 }
1626 1626
1627 TEST_F(PictureLayerImplTest, SolidColorLayerHasVisibleFullCoverage) { 1627 TEST_F(PictureLayerImplTest, SolidColorLayerHasVisibleFullCoverage) {
1628 scoped_ptr<RenderPass> render_pass = RenderPass::Create(); 1628 scoped_ptr<RenderPass> render_pass = RenderPass::Create();
1629 1629
1630 gfx::Size tile_size(1000, 1000); 1630 gfx::Size tile_size(1000, 1000);
1631 gfx::Size layer_bounds(1500, 1500); 1631 gfx::Size layer_bounds(1500, 1500);
1632 gfx::Rect visible_rect(250, 250, 1000, 1000); 1632 gfx::Rect visible_rect(250, 250, 1000, 1000);
1633 1633
1634 scoped_refptr<FakePicturePileImpl> pending_pile = 1634 scoped_refptr<FakePicturePileImpl> pending_pile =
1635 FakePicturePileImpl::CreateEmptyPile(tile_size, layer_bounds); 1635 FakePicturePileImpl::CreateEmptyPile(tile_size, layer_bounds);
1636 scoped_refptr<FakePicturePileImpl> active_pile = 1636 scoped_refptr<FakePicturePileImpl> active_pile =
1637 FakePicturePileImpl::CreateEmptyPile(tile_size, layer_bounds); 1637 FakePicturePileImpl::CreateEmptyPile(tile_size, layer_bounds);
1638 1638
1639 pending_pile->set_is_solid_color(true); 1639 pending_pile->set_is_solid_color(true);
1640 active_pile->set_is_solid_color(true); 1640 active_pile->set_is_solid_color(true);
1641 1641
1642 SetupTrees(pending_pile, active_pile); 1642 SetupTrees(pending_pile, active_pile);
1643 1643
1644 active_layer_->draw_properties().visible_content_rect = visible_rect; 1644 active_layer_->draw_properties().visible_content_rect = visible_rect;
1645 1645
1646 AppendQuadsData data; 1646 AppendQuadsData data;
1647 active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr); 1647 active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr);
1648 active_layer_->AppendQuads(render_pass.get(), Occlusion(), &data); 1648 active_layer_->AppendQuads(render_pass.get(), &data);
1649 active_layer_->DidDraw(nullptr); 1649 active_layer_->DidDraw(nullptr);
1650 1650
1651 Region remaining = visible_rect; 1651 Region remaining = visible_rect;
1652 for (const auto& quad : render_pass->quad_list) { 1652 for (const auto& quad : render_pass->quad_list) {
1653 EXPECT_TRUE(visible_rect.Contains(quad->rect)); 1653 EXPECT_TRUE(visible_rect.Contains(quad->rect));
1654 EXPECT_TRUE(remaining.Contains(quad->rect)); 1654 EXPECT_TRUE(remaining.Contains(quad->rect));
1655 remaining.Subtract(quad->rect); 1655 remaining.Subtract(quad->rect);
1656 } 1656 }
1657 1657
1658 EXPECT_TRUE(remaining.IsEmpty()); 1658 EXPECT_TRUE(remaining.IsEmpty());
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after
1804 EXPECT_GT(num_outside, 0); 1804 EXPECT_GT(num_outside, 0);
1805 1805
1806 // Activate and draw active layer. 1806 // Activate and draw active layer.
1807 host_impl_.ActivateSyncTree(); 1807 host_impl_.ActivateSyncTree();
1808 host_impl_.active_tree()->UpdateDrawProperties(); 1808 host_impl_.active_tree()->UpdateDrawProperties();
1809 active_layer_->draw_properties().visible_content_rect = visible_content_rect; 1809 active_layer_->draw_properties().visible_content_rect = visible_content_rect;
1810 1810
1811 scoped_ptr<RenderPass> render_pass = RenderPass::Create(); 1811 scoped_ptr<RenderPass> render_pass = RenderPass::Create();
1812 AppendQuadsData data; 1812 AppendQuadsData data;
1813 active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr); 1813 active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr);
1814 active_layer_->AppendQuads(render_pass.get(), Occlusion(), &data); 1814 active_layer_->AppendQuads(render_pass.get(), &data);
1815 active_layer_->DidDraw(nullptr); 1815 active_layer_->DidDraw(nullptr);
1816 1816
1817 // All tiles in activation rect is ready to draw. 1817 // All tiles in activation rect is ready to draw.
1818 EXPECT_EQ(0u, data.num_missing_tiles); 1818 EXPECT_EQ(0u, data.num_missing_tiles);
1819 EXPECT_EQ(0u, data.num_incomplete_tiles); 1819 EXPECT_EQ(0u, data.num_incomplete_tiles);
1820 EXPECT_FALSE(active_layer_->only_used_low_res_last_append_quads()); 1820 EXPECT_FALSE(active_layer_->only_used_low_res_last_append_quads());
1821 } 1821 }
1822 1822
1823 TEST_F(PictureLayerImplTest, HighResTileIsComplete) { 1823 TEST_F(PictureLayerImplTest, HighResTileIsComplete) {
1824 base::TimeTicks time_ticks; 1824 base::TimeTicks time_ticks;
(...skipping 11 matching lines...) Expand all
1836 ActivateTree(); 1836 ActivateTree();
1837 1837
1838 // All high res tiles have resources. 1838 // All high res tiles have resources.
1839 std::vector<Tile*> tiles = 1839 std::vector<Tile*> tiles =
1840 active_layer_->tilings()->tiling_at(0)->AllTilesForTesting(); 1840 active_layer_->tilings()->tiling_at(0)->AllTilesForTesting();
1841 host_impl_.tile_manager()->InitializeTilesWithResourcesForTesting(tiles); 1841 host_impl_.tile_manager()->InitializeTilesWithResourcesForTesting(tiles);
1842 1842
1843 scoped_ptr<RenderPass> render_pass = RenderPass::Create(); 1843 scoped_ptr<RenderPass> render_pass = RenderPass::Create();
1844 AppendQuadsData data; 1844 AppendQuadsData data;
1845 active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr); 1845 active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr);
1846 active_layer_->AppendQuads(render_pass.get(), Occlusion(), &data); 1846 active_layer_->AppendQuads(render_pass.get(), &data);
1847 active_layer_->DidDraw(nullptr); 1847 active_layer_->DidDraw(nullptr);
1848 1848
1849 // All high res tiles drew, nothing was incomplete. 1849 // All high res tiles drew, nothing was incomplete.
1850 EXPECT_EQ(9u, render_pass->quad_list.size()); 1850 EXPECT_EQ(9u, render_pass->quad_list.size());
1851 EXPECT_EQ(0u, data.num_missing_tiles); 1851 EXPECT_EQ(0u, data.num_missing_tiles);
1852 EXPECT_EQ(0u, data.num_incomplete_tiles); 1852 EXPECT_EQ(0u, data.num_incomplete_tiles);
1853 EXPECT_FALSE(active_layer_->only_used_low_res_last_append_quads()); 1853 EXPECT_FALSE(active_layer_->only_used_low_res_last_append_quads());
1854 } 1854 }
1855 1855
1856 TEST_F(PictureLayerImplTest, HighResTileIsIncomplete) { 1856 TEST_F(PictureLayerImplTest, HighResTileIsIncomplete) {
1857 base::TimeTicks time_ticks; 1857 base::TimeTicks time_ticks;
1858 time_ticks += base::TimeDelta::FromMilliseconds(1); 1858 time_ticks += base::TimeDelta::FromMilliseconds(1);
1859 host_impl_.SetCurrentBeginFrameArgs( 1859 host_impl_.SetCurrentBeginFrameArgs(
1860 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); 1860 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
1861 1861
1862 gfx::Size tile_size(100, 100); 1862 gfx::Size tile_size(100, 100);
1863 gfx::Size layer_bounds(200, 200); 1863 gfx::Size layer_bounds(200, 200);
1864 1864
1865 scoped_refptr<FakePicturePileImpl> pending_pile = 1865 scoped_refptr<FakePicturePileImpl> pending_pile =
1866 FakePicturePileImpl::CreateFilledPile(tile_size, layer_bounds); 1866 FakePicturePileImpl::CreateFilledPile(tile_size, layer_bounds);
1867 SetupPendingTreeWithFixedTileSize(pending_pile, tile_size, Region()); 1867 SetupPendingTreeWithFixedTileSize(pending_pile, tile_size, Region());
1868 ActivateTree(); 1868 ActivateTree();
1869 1869
1870 scoped_ptr<RenderPass> render_pass = RenderPass::Create(); 1870 scoped_ptr<RenderPass> render_pass = RenderPass::Create();
1871 AppendQuadsData data; 1871 AppendQuadsData data;
1872 active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr); 1872 active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr);
1873 active_layer_->AppendQuads(render_pass.get(), Occlusion(), &data); 1873 active_layer_->AppendQuads(render_pass.get(), &data);
1874 active_layer_->DidDraw(nullptr); 1874 active_layer_->DidDraw(nullptr);
1875 1875
1876 EXPECT_EQ(1u, render_pass->quad_list.size()); 1876 EXPECT_EQ(1u, render_pass->quad_list.size());
1877 EXPECT_EQ(1u, data.num_missing_tiles); 1877 EXPECT_EQ(1u, data.num_missing_tiles);
1878 EXPECT_EQ(0u, data.num_incomplete_tiles); 1878 EXPECT_EQ(0u, data.num_incomplete_tiles);
1879 EXPECT_TRUE(active_layer_->only_used_low_res_last_append_quads()); 1879 EXPECT_TRUE(active_layer_->only_used_low_res_last_append_quads());
1880 } 1880 }
1881 1881
1882 TEST_F(PictureLayerImplTest, HighResTileIsIncompleteLowResComplete) { 1882 TEST_F(PictureLayerImplTest, HighResTileIsIncompleteLowResComplete) {
1883 base::TimeTicks time_ticks; 1883 base::TimeTicks time_ticks;
1884 time_ticks += base::TimeDelta::FromMilliseconds(1); 1884 time_ticks += base::TimeDelta::FromMilliseconds(1);
1885 host_impl_.SetCurrentBeginFrameArgs( 1885 host_impl_.SetCurrentBeginFrameArgs(
1886 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); 1886 CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks));
1887 1887
1888 gfx::Size tile_size(100, 100); 1888 gfx::Size tile_size(100, 100);
1889 gfx::Size layer_bounds(200, 200); 1889 gfx::Size layer_bounds(200, 200);
1890 1890
1891 scoped_refptr<FakePicturePileImpl> pending_pile = 1891 scoped_refptr<FakePicturePileImpl> pending_pile =
1892 FakePicturePileImpl::CreateFilledPile(tile_size, layer_bounds); 1892 FakePicturePileImpl::CreateFilledPile(tile_size, layer_bounds);
1893 SetupPendingTreeWithFixedTileSize(pending_pile, tile_size, Region()); 1893 SetupPendingTreeWithFixedTileSize(pending_pile, tile_size, Region());
1894 ActivateTree(); 1894 ActivateTree();
1895 1895
1896 std::vector<Tile*> low_tiles = 1896 std::vector<Tile*> low_tiles =
1897 active_layer_->tilings()->tiling_at(1)->AllTilesForTesting(); 1897 active_layer_->tilings()->tiling_at(1)->AllTilesForTesting();
1898 host_impl_.tile_manager()->InitializeTilesWithResourcesForTesting(low_tiles); 1898 host_impl_.tile_manager()->InitializeTilesWithResourcesForTesting(low_tiles);
1899 1899
1900 scoped_ptr<RenderPass> render_pass = RenderPass::Create(); 1900 scoped_ptr<RenderPass> render_pass = RenderPass::Create();
1901 AppendQuadsData data; 1901 AppendQuadsData data;
1902 active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr); 1902 active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr);
1903 active_layer_->AppendQuads(render_pass.get(), Occlusion(), &data); 1903 active_layer_->AppendQuads(render_pass.get(), &data);
1904 active_layer_->DidDraw(nullptr); 1904 active_layer_->DidDraw(nullptr);
1905 1905
1906 EXPECT_EQ(1u, render_pass->quad_list.size()); 1906 EXPECT_EQ(1u, render_pass->quad_list.size());
1907 EXPECT_EQ(0u, data.num_missing_tiles); 1907 EXPECT_EQ(0u, data.num_missing_tiles);
1908 EXPECT_EQ(1u, data.num_incomplete_tiles); 1908 EXPECT_EQ(1u, data.num_incomplete_tiles);
1909 EXPECT_TRUE(active_layer_->only_used_low_res_last_append_quads()); 1909 EXPECT_TRUE(active_layer_->only_used_low_res_last_append_quads());
1910 } 1910 }
1911 1911
1912 TEST_F(PictureLayerImplTest, LowResTileIsIncomplete) { 1912 TEST_F(PictureLayerImplTest, LowResTileIsIncomplete) {
1913 base::TimeTicks time_ticks; 1913 base::TimeTicks time_ticks;
(...skipping 16 matching lines...) Expand all
1930 host_impl_.tile_manager()->InitializeTilesWithResourcesForTesting(high_tiles); 1930 host_impl_.tile_manager()->InitializeTilesWithResourcesForTesting(high_tiles);
1931 1931
1932 // All low res tiles have resources. 1932 // All low res tiles have resources.
1933 std::vector<Tile*> low_tiles = 1933 std::vector<Tile*> low_tiles =
1934 active_layer_->tilings()->tiling_at(1)->AllTilesForTesting(); 1934 active_layer_->tilings()->tiling_at(1)->AllTilesForTesting();
1935 host_impl_.tile_manager()->InitializeTilesWithResourcesForTesting(low_tiles); 1935 host_impl_.tile_manager()->InitializeTilesWithResourcesForTesting(low_tiles);
1936 1936
1937 scoped_ptr<RenderPass> render_pass = RenderPass::Create(); 1937 scoped_ptr<RenderPass> render_pass = RenderPass::Create();
1938 AppendQuadsData data; 1938 AppendQuadsData data;
1939 active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr); 1939 active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr);
1940 active_layer_->AppendQuads(render_pass.get(), Occlusion(), &data); 1940 active_layer_->AppendQuads(render_pass.get(), &data);
1941 active_layer_->DidDraw(nullptr); 1941 active_layer_->DidDraw(nullptr);
1942 1942
1943 // The missing high res tile was replaced by a low res tile. 1943 // The missing high res tile was replaced by a low res tile.
1944 EXPECT_EQ(9u, render_pass->quad_list.size()); 1944 EXPECT_EQ(9u, render_pass->quad_list.size());
1945 EXPECT_EQ(0u, data.num_missing_tiles); 1945 EXPECT_EQ(0u, data.num_missing_tiles);
1946 EXPECT_EQ(1u, data.num_incomplete_tiles); 1946 EXPECT_EQ(1u, data.num_incomplete_tiles);
1947 EXPECT_FALSE(active_layer_->only_used_low_res_last_append_quads()); 1947 EXPECT_FALSE(active_layer_->only_used_low_res_last_append_quads());
1948 } 1948 }
1949 1949
1950 TEST_F(PictureLayerImplTest, 1950 TEST_F(PictureLayerImplTest,
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
1988 EXPECT_EQ(1.f, active_layer_->tilings()->tiling_at(1)->contents_scale()); 1988 EXPECT_EQ(1.f, active_layer_->tilings()->tiling_at(1)->contents_scale());
1989 1989
1990 // All high res tiles have resources. 1990 // All high res tiles have resources.
1991 std::vector<Tile*> high_tiles = 1991 std::vector<Tile*> high_tiles =
1992 active_layer_->HighResTiling()->AllTilesForTesting(); 1992 active_layer_->HighResTiling()->AllTilesForTesting();
1993 host_impl_.tile_manager()->InitializeTilesWithResourcesForTesting(high_tiles); 1993 host_impl_.tile_manager()->InitializeTilesWithResourcesForTesting(high_tiles);
1994 1994
1995 scoped_ptr<RenderPass> render_pass = RenderPass::Create(); 1995 scoped_ptr<RenderPass> render_pass = RenderPass::Create();
1996 AppendQuadsData data; 1996 AppendQuadsData data;
1997 active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr); 1997 active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr);
1998 active_layer_->AppendQuads(render_pass.get(), Occlusion(), &data); 1998 active_layer_->AppendQuads(render_pass.get(), &data);
1999 active_layer_->DidDraw(nullptr); 1999 active_layer_->DidDraw(nullptr);
2000 2000
2001 // All high res tiles drew, and the one ideal res tile drew. 2001 // All high res tiles drew, and the one ideal res tile drew.
2002 ASSERT_GT(render_pass->quad_list.size(), 9u); 2002 ASSERT_GT(render_pass->quad_list.size(), 9u);
2003 EXPECT_EQ(gfx::SizeF(99.f, 99.f), 2003 EXPECT_EQ(gfx::SizeF(99.f, 99.f),
2004 TileDrawQuad::MaterialCast(render_pass->quad_list.front()) 2004 TileDrawQuad::MaterialCast(render_pass->quad_list.front())
2005 ->tex_coord_rect.size()); 2005 ->tex_coord_rect.size());
2006 EXPECT_EQ(gfx::SizeF(49.5f, 49.5f), 2006 EXPECT_EQ(gfx::SizeF(49.5f, 49.5f),
2007 TileDrawQuad::MaterialCast(render_pass->quad_list.ElementAt(1)) 2007 TileDrawQuad::MaterialCast(render_pass->quad_list.ElementAt(1))
2008 ->tex_coord_rect.size()); 2008 ->tex_coord_rect.size());
(...skipping 1785 matching lines...) Expand 10 before | Expand all | Expand 10 after
3794 SetupDrawPropertiesAndUpdateTiles(active_layer_, 2.5f, 1.f, 1.f, 1.f, false); 3794 SetupDrawPropertiesAndUpdateTiles(active_layer_, 2.5f, 1.f, 1.f, 1.f, false);
3795 3795
3796 float max_contents_scale = active_layer_->MaximumTilingContentsScale(); 3796 float max_contents_scale = active_layer_->MaximumTilingContentsScale();
3797 EXPECT_EQ(2.5f, max_contents_scale); 3797 EXPECT_EQ(2.5f, max_contents_scale);
3798 3798
3799 gfx::Transform scaled_draw_transform = active_layer_->draw_transform(); 3799 gfx::Transform scaled_draw_transform = active_layer_->draw_transform();
3800 scaled_draw_transform.Scale(SK_MScalar1 / max_contents_scale, 3800 scaled_draw_transform.Scale(SK_MScalar1 / max_contents_scale,
3801 SK_MScalar1 / max_contents_scale); 3801 SK_MScalar1 / max_contents_scale);
3802 3802
3803 AppendQuadsData data; 3803 AppendQuadsData data;
3804 active_layer_->AppendQuads(render_pass.get(), Occlusion(), &data); 3804 active_layer_->AppendQuads(render_pass.get(), &data);
3805 3805
3806 // SharedQuadState should have be of size 1, as we are doing AppenQuad once. 3806 // SharedQuadState should have be of size 1, as we are doing AppenQuad once.
3807 EXPECT_EQ(1u, render_pass->shared_quad_state_list.size()); 3807 EXPECT_EQ(1u, render_pass->shared_quad_state_list.size());
3808 // The content_to_target_transform should be scaled by the 3808 // The content_to_target_transform should be scaled by the
3809 // MaximumTilingContentsScale on the layer. 3809 // MaximumTilingContentsScale on the layer.
3810 EXPECT_EQ(scaled_draw_transform.ToString(), 3810 EXPECT_EQ(scaled_draw_transform.ToString(),
3811 render_pass->shared_quad_state_list.front() 3811 render_pass->shared_quad_state_list.front()
3812 ->content_to_target_transform.ToString()); 3812 ->content_to_target_transform.ToString());
3813 // The content_bounds should be scaled by the 3813 // The content_bounds should be scaled by the
3814 // MaximumTilingContentsScale on the layer. 3814 // MaximumTilingContentsScale on the layer.
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
3860 ManagedMemoryPolicy policy(memory_limit, 3860 ManagedMemoryPolicy policy(memory_limit,
3861 gpu::MemoryAllocation::CUTOFF_ALLOW_EVERYTHING, 3861 gpu::MemoryAllocation::CUTOFF_ALLOW_EVERYTHING,
3862 resource_limit); 3862 resource_limit);
3863 host_impl_.SetMemoryPolicy(policy); 3863 host_impl_.SetMemoryPolicy(policy);
3864 host_impl_.SetTreePriority(SAME_PRIORITY_FOR_BOTH_TREES); 3864 host_impl_.SetTreePriority(SAME_PRIORITY_FOR_BOTH_TREES);
3865 host_impl_.PrepareTiles(); 3865 host_impl_.PrepareTiles();
3866 3866
3867 scoped_ptr<RenderPass> render_pass = RenderPass::Create(); 3867 scoped_ptr<RenderPass> render_pass = RenderPass::Create();
3868 AppendQuadsData data; 3868 AppendQuadsData data;
3869 active_layer_->WillDraw(DRAW_MODE_HARDWARE, nullptr); 3869 active_layer_->WillDraw(DRAW_MODE_HARDWARE, nullptr);
3870 active_layer_->AppendQuads(render_pass.get(), Occlusion(), &data); 3870 active_layer_->AppendQuads(render_pass.get(), &data);
3871 active_layer_->DidDraw(nullptr); 3871 active_layer_->DidDraw(nullptr);
3872 3872
3873 // Even when OOM, quads should be produced, and should be different material 3873 // Even when OOM, quads should be produced, and should be different material
3874 // from quads with resource. 3874 // from quads with resource.
3875 EXPECT_LT(max_tiles, render_pass->quad_list.size()); 3875 EXPECT_LT(max_tiles, render_pass->quad_list.size());
3876 EXPECT_EQ(DrawQuad::Material::TILED_CONTENT, 3876 EXPECT_EQ(DrawQuad::Material::TILED_CONTENT,
3877 render_pass->quad_list.front()->material); 3877 render_pass->quad_list.front()->material);
3878 EXPECT_EQ(DrawQuad::Material::SOLID_COLOR, 3878 EXPECT_EQ(DrawQuad::Material::SOLID_COLOR,
3879 render_pass->quad_list.back()->material); 3879 render_pass->quad_list.back()->material);
3880 } 3880 }
(...skipping 794 matching lines...) Expand 10 before | Expand all | Expand 10 after
4675 ASSERT_GT(active_layer_->tilings()->num_tilings(), 0u); 4675 ASSERT_GT(active_layer_->tilings()->num_tilings(), 0u);
4676 std::vector<Tile*> tiles = 4676 std::vector<Tile*> tiles =
4677 active_layer_->tilings()->tiling_at(0)->AllTilesForTesting(); 4677 active_layer_->tilings()->tiling_at(0)->AllTilesForTesting();
4678 EXPECT_FALSE(tiles.empty()); 4678 EXPECT_FALSE(tiles.empty());
4679 host_impl_.tile_manager()->InitializeTilesWithResourcesForTesting(tiles); 4679 host_impl_.tile_manager()->InitializeTilesWithResourcesForTesting(tiles);
4680 } 4680 }
4681 4681
4682 scoped_ptr<RenderPass> render_pass = RenderPass::Create(); 4682 scoped_ptr<RenderPass> render_pass = RenderPass::Create();
4683 AppendQuadsData data; 4683 AppendQuadsData data;
4684 active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr); 4684 active_layer_->WillDraw(DRAW_MODE_SOFTWARE, nullptr);
4685 active_layer_->AppendQuads(render_pass.get(), Occlusion(), &data); 4685 active_layer_->AppendQuads(render_pass.get(), &data);
4686 active_layer_->DidDraw(nullptr); 4686 active_layer_->DidDraw(nullptr);
4687 4687
4688 DrawQuad::Material expected = test_for_solid 4688 DrawQuad::Material expected = test_for_solid
4689 ? DrawQuad::Material::SOLID_COLOR 4689 ? DrawQuad::Material::SOLID_COLOR
4690 : DrawQuad::Material::TILED_CONTENT; 4690 : DrawQuad::Material::TILED_CONTENT;
4691 EXPECT_EQ(expected, render_pass->quad_list.front()->material); 4691 EXPECT_EQ(expected, render_pass->quad_list.front()->material);
4692 } 4692 }
4693 4693
4694 TEST_F(PictureLayerImplTest, DrawSolidQuads) { 4694 TEST_F(PictureLayerImplTest, DrawSolidQuads) {
4695 TestQuadsForSolidColor(true); 4695 TestQuadsForSolidColor(true);
(...skipping 237 matching lines...) Expand 10 before | Expand all | Expand 10 after
4933 result = layer->CalculateTileSize(gfx::Size(447, 400)); 4933 result = layer->CalculateTileSize(gfx::Size(447, 400));
4934 EXPECT_EQ(result.width(), 448); 4934 EXPECT_EQ(result.width(), 448);
4935 EXPECT_EQ(result.height(), 448); 4935 EXPECT_EQ(result.height(), 448);
4936 result = layer->CalculateTileSize(gfx::Size(500, 499)); 4936 result = layer->CalculateTileSize(gfx::Size(500, 499));
4937 EXPECT_EQ(result.width(), 512); 4937 EXPECT_EQ(result.width(), 512);
4938 EXPECT_EQ(result.height(), 500 + 2); 4938 EXPECT_EQ(result.height(), 500 + 2);
4939 } 4939 }
4940 4940
4941 } // namespace 4941 } // namespace
4942 } // namespace cc 4942 } // namespace cc
OLDNEW
« no previous file with comments | « cc/layers/picture_layer_impl.cc ('k') | cc/layers/scrollbar_layer_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698