summaryrefslogtreecommitdiffstats
path: root/cc/test
diff options
context:
space:
mode:
authorreveman@chromium.org <reveman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-23 23:35:40 +0000
committerreveman@chromium.org <reveman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-23 23:35:40 +0000
commit9f350118ec1f1876a2cf5702a031508031fc357c (patch)
treed7c3d68e6155b75b5d446578e29893f851458684 /cc/test
parent048b61c2df38c332a0d5773ac31d57a06b24d2c2 (diff)
downloadchromium_src-9f350118ec1f1876a2cf5702a031508031fc357c.zip
chromium_src-9f350118ec1f1876a2cf5702a031508031fc357c.tar.gz
chromium_src-9f350118ec1f1876a2cf5702a031508031fc357c.tar.bz2
cc: Examine layers to determine if we're ready to activate.
This introduces a new mechanism for determining when we're ready to activate the pending tree. The tile priority is still used to determine when it's worth waking up the compositor thread and evaluating if we can activate. However, the actual check that determines if we're ready to activate doesn't rely on the state of scheduled raster tasks but is a synchronous call on each layer. The result is a pending tree activation mechanism that is much easier to debug and validate for correctness, while still providing the performance benefits of the old mechanism by taking the "required to activate" field of the tile priority into account when scheduling tasks. BUG=375206 TEST=cc_unittests --gtest_filter=PictureLayerImplTest.AllTilesRequiredForActivationAreReadyToDraw Review URL: https://codereview.chromium.org/287643004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@272635 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/test')
-rw-r--r--cc/test/fake_tile_manager.cc13
-rw-r--r--cc/test/fake_tile_manager.h3
-rw-r--r--cc/test/fake_tile_manager_client.h2
3 files changed, 3 insertions, 15 deletions
diff --git a/cc/test/fake_tile_manager.cc b/cc/test/fake_tile_manager.cc
index 496baea..1fc2e43 100644
--- a/cc/test/fake_tile_manager.cc
+++ b/cc/test/fake_tile_manager.cc
@@ -63,26 +63,17 @@ base::LazyInstance<FakeRasterizerImpl> g_fake_rasterizer =
FakeTileManager::FakeTileManager(TileManagerClient* client)
: TileManager(client,
+ base::MessageLoopProxy::current(),
NULL,
g_fake_rasterizer.Pointer(),
- true,
NULL) {}
FakeTileManager::FakeTileManager(TileManagerClient* client,
ResourcePool* resource_pool)
: TileManager(client,
+ base::MessageLoopProxy::current(),
resource_pool,
g_fake_rasterizer.Pointer(),
- true,
- NULL) {}
-
-FakeTileManager::FakeTileManager(TileManagerClient* client,
- ResourcePool* resource_pool,
- bool allow_on_demand_raster)
- : TileManager(client,
- resource_pool,
- g_fake_rasterizer.Pointer(),
- allow_on_demand_raster,
NULL) {}
FakeTileManager::~FakeTileManager() {}
diff --git a/cc/test/fake_tile_manager.h b/cc/test/fake_tile_manager.h
index c5c7a25..05dbe61 100644
--- a/cc/test/fake_tile_manager.h
+++ b/cc/test/fake_tile_manager.h
@@ -16,9 +16,6 @@ class FakeTileManager : public TileManager {
public:
explicit FakeTileManager(TileManagerClient* client);
FakeTileManager(TileManagerClient* client, ResourcePool* resource_pool);
- FakeTileManager(TileManagerClient* client,
- ResourcePool* resource_pool,
- bool allow_on_demand_raster);
virtual ~FakeTileManager();
bool HasBeenAssignedMemory(Tile* tile);
diff --git a/cc/test/fake_tile_manager_client.h b/cc/test/fake_tile_manager_client.h
index dd368b9..7faa30e 100644
--- a/cc/test/fake_tile_manager_client.h
+++ b/cc/test/fake_tile_manager_client.h
@@ -15,7 +15,7 @@ class FakeTileManagerClient : public TileManagerClient {
// TileManagerClient implementation.
virtual void NotifyReadyToActivate() OVERRIDE {}
- virtual void NotifyTileInitialized(const Tile* tile) OVERRIDE {}
+ virtual void NotifyTileStateChanged(const Tile* tile) OVERRIDE {}
};
} // namespace cc