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

Side by Side Diff: content/renderer/pepper/pepper_compositor_host.cc

Issue 1427543002: Modified old wait sync point functions to also accept new sync tokens. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: format Created 5 years, 1 month 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "content/renderer/pepper/pepper_compositor_host.h" 5 #include "content/renderer/pepper/pepper_compositor_host.h"
6 6
7 #include <limits> 7 #include <limits>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/memory/shared_memory.h" 10 #include "base/memory/shared_memory.h"
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after
182 } 182 }
183 183
184 void PepperCompositorHost::ViewInitiatedPaint() { 184 void PepperCompositorHost::ViewInitiatedPaint() {
185 SendCommitLayersReplyIfNecessary(); 185 SendCommitLayersReplyIfNecessary();
186 } 186 }
187 187
188 void PepperCompositorHost::ImageReleased( 188 void PepperCompositorHost::ImageReleased(
189 int32_t id, 189 int32_t id,
190 scoped_ptr<base::SharedMemory> shared_memory, 190 scoped_ptr<base::SharedMemory> shared_memory,
191 scoped_ptr<cc::SharedBitmap> bitmap, 191 scoped_ptr<cc::SharedBitmap> bitmap,
192 uint32_t sync_point, 192 const gpu::SyncToken& sync_token,
193 bool is_lost) { 193 bool is_lost) {
194 bitmap.reset(); 194 bitmap.reset();
195 shared_memory.reset(); 195 shared_memory.reset();
196 ResourceReleased(id, sync_point, is_lost); 196 ResourceReleased(id, sync_token, is_lost);
197 } 197 }
198 198
199 void PepperCompositorHost::ResourceReleased(int32_t id, 199 void PepperCompositorHost::ResourceReleased(int32_t id,
200 uint32_t sync_point, 200 const gpu::SyncToken& sync_token,
201 bool is_lost) { 201 bool is_lost) {
202 host()->SendUnsolicitedReply( 202 host()->SendUnsolicitedReply(
203 pp_resource(), 203 pp_resource(),
204 PpapiPluginMsg_Compositor_ReleaseResource(id, sync_point, is_lost)); 204 PpapiPluginMsg_Compositor_ReleaseResource(id, sync_token, is_lost));
205 } 205 }
206 206
207 void PepperCompositorHost::SendCommitLayersReplyIfNecessary() { 207 void PepperCompositorHost::SendCommitLayersReplyIfNecessary() {
208 if (!commit_layers_reply_context_.is_valid()) 208 if (!commit_layers_reply_context_.is_valid())
209 return; 209 return;
210 host()->SendReply(commit_layers_reply_context_, 210 host()->SendReply(commit_layers_reply_context_,
211 PpapiPluginMsg_Compositor_CommitLayersReply()); 211 PpapiPluginMsg_Compositor_CommitLayersReply());
212 commit_layers_reply_context_ = ppapi::host::ReplyMessageContext(); 212 commit_layers_reply_context_ = ppapi::host::ReplyMessageContext();
213 } 213 }
214 214
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
264 new_layer->color->blue * 255)); 264 new_layer->color->blue * 255));
265 return; 265 return;
266 } 266 }
267 267
268 if (new_layer->texture) { 268 if (new_layer->texture) {
269 scoped_refptr<cc::TextureLayer> texture_layer( 269 scoped_refptr<cc::TextureLayer> texture_layer(
270 static_cast<cc::TextureLayer*>(layer.get())); 270 static_cast<cc::TextureLayer*>(layer.get()));
271 if (!old_layer || 271 if (!old_layer ||
272 new_layer->common.resource_id != old_layer->common.resource_id) { 272 new_layer->common.resource_id != old_layer->common.resource_id) {
273 cc::TextureMailbox mailbox(new_layer->texture->mailbox, 273 cc::TextureMailbox mailbox(new_layer->texture->mailbox,
274 new_layer->texture->target, 274 new_layer->texture->sync_token,
275 new_layer->texture->sync_point); 275 new_layer->texture->target);
276 texture_layer->SetTextureMailbox(mailbox, 276 texture_layer->SetTextureMailbox(mailbox,
277 cc::SingleReleaseCallback::Create( 277 cc::SingleReleaseCallback::Create(
278 base::Bind(&PepperCompositorHost::ResourceReleased, 278 base::Bind(&PepperCompositorHost::ResourceReleased,
279 weak_factory_.GetWeakPtr(), 279 weak_factory_.GetWeakPtr(),
280 new_layer->common.resource_id))); 280 new_layer->common.resource_id)));
281 // TODO(penghuang): get a damage region from the application and 281 // TODO(penghuang): get a damage region from the application and
282 // pass it to SetNeedsDisplayRect(). 282 // pass it to SetNeedsDisplayRect().
283 texture_layer->SetNeedsDisplay(); 283 texture_layer->SetNeedsDisplay();
284 } 284 }
285 texture_layer->SetPremultipliedAlpha(new_layer->texture->premult_alpha); 285 texture_layer->SetPremultipliedAlpha(new_layer->texture->premult_alpha);
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
406 406
407 // If the host is not bound to the instance, return PP_OK immediately. 407 // If the host is not bound to the instance, return PP_OK immediately.
408 if (!bound_instance_) 408 if (!bound_instance_)
409 return PP_OK; 409 return PP_OK;
410 410
411 commit_layers_reply_context_ = context->MakeReplyMessageContext(); 411 commit_layers_reply_context_ = context->MakeReplyMessageContext();
412 return PP_OK_COMPLETIONPENDING; 412 return PP_OK_COMPLETIONPENDING;
413 } 413 }
414 414
415 } // namespace content 415 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/pepper/pepper_compositor_host.h ('k') | content/renderer/pepper/pepper_graphics_2d_host.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698