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

Side by Side Diff: content/browser/renderer_host/render_widget_host_view_android.cc

Issue 12612005: Revert 186627 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 7 years, 9 months 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/browser/renderer_host/render_widget_host_view_android.h" 5 #include "content/browser/renderer_host/render_widget_host_view_android.h"
6 6
7 #include <android/bitmap.h> 7 #include <android/bitmap.h>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 22 matching lines...) Expand all
33 #include "ui/gfx/display.h" 33 #include "ui/gfx/display.h"
34 #include "ui/gfx/screen.h" 34 #include "ui/gfx/screen.h"
35 #include "ui/gfx/size_conversions.h" 35 #include "ui/gfx/size_conversions.h"
36 #include "webkit/compositor_bindings/web_compositor_support_impl.h" 36 #include "webkit/compositor_bindings/web_compositor_support_impl.h"
37 37
38 namespace content { 38 namespace content {
39 39
40 namespace { 40 namespace {
41 41
42 void InsertSyncPointAndAckForGpu( 42 void InsertSyncPointAndAckForGpu(
43 int gpu_host_id, int route_id, const gpu::Mailbox& return_mailbox) { 43 int gpu_host_id, int route_id, const std::string& return_mailbox) {
44 uint32 sync_point = 44 uint32 sync_point =
45 ImageTransportFactoryAndroid::GetInstance()->InsertSyncPoint(); 45 ImageTransportFactoryAndroid::GetInstance()->InsertSyncPoint();
46 AcceleratedSurfaceMsg_BufferPresented_Params ack_params; 46 AcceleratedSurfaceMsg_BufferPresented_Params ack_params;
47 ack_params.mailbox_name = return_mailbox; 47 ack_params.mailbox_name = return_mailbox;
48 ack_params.sync_point = sync_point; 48 ack_params.sync_point = sync_point;
49 RenderWidgetHostImpl::AcknowledgeBufferPresent( 49 RenderWidgetHostImpl::AcknowledgeBufferPresent(
50 route_id, gpu_host_id, ack_params); 50 route_id, gpu_host_id, ack_params);
51 } 51 }
52 52
53 void InsertSyncPointAndAckForCompositor( 53 void InsertSyncPointAndAckForCompositor(
(...skipping 435 matching lines...) Expand 10 before | Expand all | Expand 10 after
489 ImageTransportFactoryAndroid::GetInstance()->WaitSyncPoint( 489 ImageTransportFactoryAndroid::GetInstance()->WaitSyncPoint(
490 frame->gl_frame_data->sync_point); 490 frame->gl_frame_data->sync_point);
491 BuffersSwapped( 491 BuffersSwapped(
492 frame->gl_frame_data->mailbox, frame->gl_frame_data->size, callback); 492 frame->gl_frame_data->mailbox, frame->gl_frame_data->size, callback);
493 493
494 } 494 }
495 495
496 void RenderWidgetHostViewAndroid::AcceleratedSurfaceBuffersSwapped( 496 void RenderWidgetHostViewAndroid::AcceleratedSurfaceBuffersSwapped(
497 const GpuHostMsg_AcceleratedSurfaceBuffersSwapped_Params& params, 497 const GpuHostMsg_AcceleratedSurfaceBuffersSwapped_Params& params,
498 int gpu_host_id) { 498 int gpu_host_id) {
499 if (params.mailbox_name.IsZero()) 499 if (params.mailbox_name.empty())
500 return; 500 return;
501 501
502 std::string return_mailbox;
503 if (!current_mailbox_.IsZero()) {
504 return_mailbox.assign(
505 reinterpret_cast<const char*>(current_mailbox_.name),
506 sizeof(current_mailbox_.name));
507 }
508
502 base::Closure callback = base::Bind(&InsertSyncPointAndAckForGpu, 509 base::Closure callback = base::Bind(&InsertSyncPointAndAckForGpu,
503 gpu_host_id, params.route_id, 510 gpu_host_id, params.route_id,
504 current_mailbox_); 511 return_mailbox);
505 BuffersSwapped(params.mailbox_name, params.size, callback); 512
513 gpu::Mailbox mailbox;
514 std::copy(params.mailbox_name.data(),
515 params.mailbox_name.data() + params.mailbox_name.length(),
516 reinterpret_cast<char*>(mailbox.name));
517
518 BuffersSwapped(mailbox, params.size, callback);
506 } 519 }
507 520
508 void RenderWidgetHostViewAndroid::BuffersSwapped( 521 void RenderWidgetHostViewAndroid::BuffersSwapped(
509 const gpu::Mailbox& mailbox, 522 const gpu::Mailbox& mailbox,
510 const gfx::Size size, 523 const gfx::Size size,
511 const base::Closure& ack_callback) { 524 const base::Closure& ack_callback) {
512 ImageTransportFactoryAndroid* factory = 525 ImageTransportFactoryAndroid* factory =
513 ImageTransportFactoryAndroid::GetInstance(); 526 ImageTransportFactoryAndroid::GetInstance();
514 527
515 // TODO(sievers): When running the impl thread in the browser we 528 // TODO(sievers): When running the impl thread in the browser we
(...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after
722 // RenderWidgetHostView, public: 735 // RenderWidgetHostView, public:
723 736
724 // static 737 // static
725 RenderWidgetHostView* 738 RenderWidgetHostView*
726 RenderWidgetHostView::CreateViewForWidget(RenderWidgetHost* widget) { 739 RenderWidgetHostView::CreateViewForWidget(RenderWidgetHost* widget) {
727 RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From(widget); 740 RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From(widget);
728 return new RenderWidgetHostViewAndroid(rwhi, NULL); 741 return new RenderWidgetHostViewAndroid(rwhi, NULL);
729 } 742 }
730 743
731 } // namespace content 744 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/renderer_host/image_transport_factory.cc ('k') | content/browser/renderer_host/render_widget_host_view_aura.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698