Index: cc/tiles/tile_manager.cc |
diff --git a/cc/tiles/tile_manager.cc b/cc/tiles/tile_manager.cc |
index de3601a3dfdf696de33c20bc59711626d40e694d..72b9acfd49c8d600166c847546f8b843502b15db 100644 |
--- a/cc/tiles/tile_manager.cc |
+++ b/cc/tiles/tile_manager.cc |
@@ -46,6 +46,7 @@ class RasterTaskImpl : public RasterTask { |
float contents_scale, |
TileResolution tile_resolution, |
int layer_id, |
+ uint64_t source_prepare_tiles_id, |
const void* tile, |
uint64_t new_content_id, |
uint64_t previous_content_id, |
@@ -62,6 +63,7 @@ class RasterTaskImpl : public RasterTask { |
contents_scale_(contents_scale), |
tile_resolution_(tile_resolution), |
layer_id_(layer_id), |
+ source_prepare_tiles_id_(source_prepare_tiles_id), |
tile_(tile), |
new_content_id_(new_content_id), |
previous_content_id_(previous_content_id), |
@@ -72,7 +74,8 @@ class RasterTaskImpl : public RasterTask { |
// Overridden from Task: |
void RunOnWorkerThread() override { |
- TRACE_EVENT0("cc", "RasterizerTaskImpl::RunOnWorkerThread"); |
+ TRACE_EVENT1("cc", "RasterizerTaskImpl::RunOnWorkerThread", |
+ "source_prepare_tiles_id", source_prepare_tiles_id_); |
DCHECK(raster_source_.get()); |
DCHECK(raster_buffer_); |
@@ -136,6 +139,7 @@ class RasterTaskImpl : public RasterTask { |
float contents_scale_; |
TileResolution tile_resolution_; |
int layer_id_; |
+ uint64_t source_prepare_tiles_id_; |
const void* tile_; |
uint64_t new_content_id_; |
uint64_t previous_content_id_; |
@@ -152,13 +156,16 @@ class RasterTaskImpl : public RasterTask { |
class ImageDecodeTaskImpl : public ImageDecodeTask { |
public: |
ImageDecodeTaskImpl(SkPixelRef* pixel_ref, |
+ uint64_t source_prepare_tiles_id, |
const base::Callback<void(bool was_canceled)>& reply) |
: pixel_ref_(skia::SharePtr(pixel_ref)), |
+ source_prepare_tiles_id_(source_prepare_tiles_id), |
reply_(reply) {} |
// Overridden from Task: |
void RunOnWorkerThread() override { |
- TRACE_EVENT0("cc", "ImageDecodeTaskImpl::RunOnWorkerThread"); |
+ TRACE_EVENT1("cc", "ImageDecodeTaskImpl::RunOnWorkerThread", |
+ "source_prepare_tiles_id", source_prepare_tiles_id_); |
devtools_instrumentation::ScopedImageDecodeTask image_decode_task( |
pixel_ref_.get()); |
@@ -181,6 +188,7 @@ class ImageDecodeTaskImpl : public ImageDecodeTask { |
private: |
skia::RefPtr<SkPixelRef> pixel_ref_; |
+ uint64_t source_prepare_tiles_id_; |
const base::Callback<void(bool was_canceled)> reply_; |
DISALLOW_COPY_AND_ASSIGN(ImageDecodeTaskImpl); |
@@ -260,7 +268,8 @@ TileManager::TileManager( |
did_notify_ready_to_activate_(false), |
did_notify_ready_to_draw_(false), |
did_notify_all_tile_tasks_completed_(false), |
- has_scheduled_tile_tasks_(false) { |
+ has_scheduled_tile_tasks_(false), |
+ prepare_tiles_count_(0u) { |
tile_task_runner_->SetClient(this); |
} |
@@ -360,7 +369,10 @@ void TileManager::DidFinishRunningTileTasks(TaskSet task_set) { |
void TileManager::PrepareTiles( |
const GlobalStateThatImpactsTilePriority& state) { |
- TRACE_EVENT0("cc", "TileManager::PrepareTiles"); |
+ ++prepare_tiles_count_; |
+ |
+ TRACE_EVENT1("cc", "TileManager::PrepareTiles", "prepare_tiles_id", |
+ prepare_tiles_count_); |
global_state_ = state; |
@@ -686,10 +698,9 @@ scoped_refptr<ImageDecodeTask> TileManager::CreateImageDecodeTask( |
Tile* tile, |
SkPixelRef* pixel_ref) { |
return make_scoped_refptr(new ImageDecodeTaskImpl( |
- pixel_ref, |
+ pixel_ref, prepare_tiles_count_, |
base::Bind(&TileManager::OnImageDecodeTaskCompleted, |
- base::Unretained(this), |
- tile->layer_id(), |
+ base::Unretained(this), tile->layer_id(), |
base::Unretained(pixel_ref)))); |
} |
@@ -742,8 +753,8 @@ scoped_refptr<RasterTask> TileManager::CreateRasterTask( |
const_resource, prioritized_tile.raster_source(), tile->content_rect(), |
tile->invalidated_content_rect(), tile->contents_scale(), |
prioritized_tile.priority().resolution, tile->layer_id(), |
- static_cast<const void*>(tile), tile->id(), tile->invalidated_id(), |
- resource_content_id, tile->source_frame_number(), |
+ prepare_tiles_count_, static_cast<const void*>(tile), tile->id(), |
+ tile->invalidated_id(), resource_content_id, tile->source_frame_number(), |
tile->use_picture_analysis(), |
base::Bind(&TileManager::OnRasterTaskCompleted, base::Unretained(this), |
tile->id(), base::Passed(&resource)), |