Index: cc/tiles/tile_manager.cc |
diff --git a/cc/tiles/tile_manager.cc b/cc/tiles/tile_manager.cc |
index 9804da00fb6b93eeb4875904a5890d7bce320bde..11ec67d4ec98998209a6a6bc7969e18bed1c6f86 100644 |
--- a/cc/tiles/tile_manager.cc |
+++ b/cc/tiles/tile_manager.cc |
@@ -81,12 +81,6 @@ class RasterTaskImpl : public RasterTask { |
DCHECK(raster_source_.get()); |
DCHECK(raster_buffer_); |
- if (analyze_picture_) { |
- Analyze(raster_source_.get()); |
- if (analysis_.is_solid_color) |
- return; |
- } |
- |
Raster(raster_source_.get()); |
} |
@@ -722,6 +716,14 @@ void TileManager::ScheduleTasks( |
DCHECK(tile->draw_info().requires_resource()); |
DCHECK(!tile->draw_info().resource_); |
+ SkColor color = SK_ColorTRANSPARENT; |
+ bool is_solid_color = prioritized_tile.raster_source()->IsSolidColorTile( |
vmpstr
2015/12/17 18:55:47
This is an OK spot to do this. When I was thinking
sohanjg
2015/12/18 12:50:00
Done.
|
+ tile->content_rect(), tile->contents_scale(), &color); |
+ if (is_solid_color) { |
+ tile->draw_info().set_solid_color(color); |
+ continue; |
+ } |
+ |
if (!tile->raster_task_) { |
tile->raster_task_ = CreateRasterTask(prioritized_tile); |
} |
@@ -858,8 +860,7 @@ void TileManager::UpdateTileDrawInfo( |
++flush_stats_.completed_count; |
- if (analysis.is_solid_color) { |
- draw_info.set_solid_color(analysis.solid_color); |
+ if (draw_info.mode() == TileDrawInfo::SOLID_COLOR_MODE) { |
vmpstr
2015/12/17 18:55:47
This shouldn't be possible anymore, right? UpdateT
sohanjg
2015/12/18 12:50:00
Acknowledged.
|
if (resource) { |
// TODO(ericrk): If more partial raster work is done in the future, it may |
// be worth returning the resource to the pool with its previous ID (not |