| Index: cc/resources/resource_provider.cc
|
| diff --git a/cc/resources/resource_provider.cc b/cc/resources/resource_provider.cc
|
| index 083b4868a5de1b2a970a1bdb99dbbc16fbac1e3f..c9d038946176ba3cbf17b8cd542880dce50565c6 100644
|
| --- a/cc/resources/resource_provider.cc
|
| +++ b/cc/resources/resource_provider.cc
|
| @@ -221,6 +221,7 @@ ResourceProvider::Resource::Resource(GLuint texture_id,
|
| allocated(false),
|
| read_lock_fences_enabled(false),
|
| has_shared_bitmap_id(false),
|
| + is_overlay_candidate(false),
|
| read_lock_fence(NULL),
|
| size(size),
|
| origin(origin),
|
| @@ -521,6 +522,7 @@ ResourceId ResourceProvider::CreateResourceFromTextureMailbox(
|
| base::Bind(&SingleReleaseCallbackImpl::Run,
|
| base::Owned(release_callback_impl.release()));
|
| resource->read_lock_fences_enabled = read_lock_fences_enabled;
|
| + resource->is_overlay_candidate = mailbox.is_overlay_candidate();
|
| return id;
|
| }
|
|
|
| @@ -779,6 +781,11 @@ bool ResourceProvider::CanLockForWrite(ResourceId id) {
|
| !resource->lost && ReadLockFenceHasPassed(resource);
|
| }
|
|
|
| +bool ResourceProvider::IsOverlayCandidate(ResourceId id) {
|
| + Resource* resource = GetResource(id);
|
| + return resource->is_overlay_candidate;
|
| +}
|
| +
|
| void ResourceProvider::UnlockForWrite(ResourceProvider::Resource* resource) {
|
| DCHECK(resource->locked_for_write);
|
| DCHECK_EQ(resource->exported_count, 0);
|
| @@ -1220,6 +1227,7 @@ void ResourceProvider::ReceiveFromChild(
|
| it->mailbox_holder.texture_target,
|
| it->mailbox_holder.sync_point);
|
| resource->read_lock_fences_enabled = it->read_lock_fences_enabled;
|
| + resource->is_overlay_candidate = it->is_overlay_candidate;
|
| }
|
| resource->child_id = child;
|
| // Don't allocate a texture for a child.
|
| @@ -1321,6 +1329,7 @@ void ResourceProvider::TransferResource(GLES2Interface* gl,
|
| resource->size = source->size;
|
| resource->read_lock_fences_enabled = source->read_lock_fences_enabled;
|
| resource->is_repeated = (source->wrap_mode == GL_REPEAT);
|
| + resource->is_overlay_candidate = source->is_overlay_candidate;
|
|
|
| if (source->type == RESOURCE_TYPE_BITMAP) {
|
| resource->mailbox_holder.mailbox = source->shared_bitmap_id;
|
|
|