| Index: content/browser/gpu/gpu_process_host.cc
|
| ===================================================================
|
| --- content/browser/gpu/gpu_process_host.cc (revision 175378)
|
| +++ content/browser/gpu/gpu_process_host.cc (working copy)
|
| @@ -85,8 +85,8 @@
|
|
|
| void AcceleratedSurfaceBuffersSwappedCompletedForGPU(int host_id,
|
| int route_id,
|
| - uint64 surface_handle,
|
| - bool alive) {
|
| + bool alive,
|
| + uint64 surface_handle) {
|
| if (!BrowserThread::CurrentlyOn(BrowserThread::IO)) {
|
| BrowserThread::PostTask(
|
| BrowserThread::IO,
|
| @@ -94,8 +94,8 @@
|
| base::Bind(&AcceleratedSurfaceBuffersSwappedCompletedForGPU,
|
| host_id,
|
| route_id,
|
| - surface_handle,
|
| - alive));
|
| + alive,
|
| + surface_handle));
|
| return;
|
| }
|
|
|
| @@ -144,6 +144,19 @@
|
| if (interval != base::TimeDelta())
|
| RenderWidgetHostImpl::From(rwh)->UpdateVSyncParameters(timebase, interval);
|
| }
|
| +
|
| +void AcceleratedSurfaceBuffersSwappedCompleted(int host_id,
|
| + int route_id,
|
| + int surface_id,
|
| + uint64 surface_handle,
|
| + bool alive,
|
| + base::TimeTicks timebase,
|
| + base::TimeDelta interval) {
|
| + AcceleratedSurfaceBuffersSwappedCompletedForGPU(host_id, route_id,
|
| + alive, surface_handle);
|
| + AcceleratedSurfaceBuffersSwappedCompletedForRenderer(surface_id, timebase,
|
| + interval);
|
| +}
|
| #endif // defined(OS_WIN)
|
|
|
| } // anonymous namespace
|
| @@ -765,7 +778,7 @@
|
| base::ScopedClosureRunner scoped_completion_runner(
|
| base::Bind(&AcceleratedSurfaceBuffersSwappedCompletedForGPU,
|
| host_id_, params.route_id,
|
| - params.surface_handle, true /* alive */));
|
| + true /* alive */, params.surface_handle));
|
|
|
| int render_process_id = 0;
|
| int render_widget_id = 0;
|
| @@ -798,17 +811,10 @@
|
| const GpuHostMsg_AcceleratedSurfaceBuffersSwapped_Params& params) {
|
| TRACE_EVENT0("gpu", "GpuProcessHost::OnAcceleratedSurfaceBuffersSwapped");
|
|
|
| - base::ScopedClosureRunner scoped_present_completion_runner(
|
| - base::Bind(&AcceleratedSurfaceBuffersSwappedCompletedForRenderer,
|
| - params.surface_id,
|
| - base::TimeTicks(),
|
| - base::TimeDelta()));
|
| - base::ScopedClosureRunner scoped_copy_completion_runner(
|
| - base::Bind(&AcceleratedSurfaceBuffersSwappedCompletedForGPU,
|
| - host_id_,
|
| - params.route_id,
|
| - params.surface_handle,
|
| - true));
|
| + base::ScopedClosureRunner scoped_completion_runner(
|
| + base::Bind(&AcceleratedSurfaceBuffersSwappedCompleted,
|
| + host_id_, params.route_id, params.surface_id, params.surface_handle,
|
| + true, base::TimeTicks(), base::TimeDelta()));
|
|
|
| gfx::PluginWindowHandle handle =
|
| GpuSurfaceTracker::Get()->GetSurfaceWindowHandle(params.surface_id);
|
| @@ -818,8 +824,7 @@
|
| "surface_id", params.surface_id);
|
| #if defined(USE_AURA)
|
| // This is a content area swap, send it on to the UI thread.
|
| - scoped_copy_completion_runner.Release();
|
| - scoped_present_completion_runner.Release();
|
| + scoped_completion_runner.Release();
|
| RouteOnUIThread(GpuHostMsg_AcceleratedSurfaceBuffersSwapped(params));
|
| #endif
|
| return;
|
| @@ -834,17 +839,15 @@
|
| return;
|
| }
|
|
|
| - scoped_copy_completion_runner.Release();
|
| - scoped_present_completion_runner.Release();
|
| + scoped_completion_runner.Release();
|
| presenter->AsyncPresentAndAcknowledge(
|
| params.size,
|
| params.surface_handle,
|
| - base::Bind(&AcceleratedSurfaceBuffersSwappedCompletedForGPU,
|
| + base::Bind(&AcceleratedSurfaceBuffersSwappedCompleted,
|
| host_id_,
|
| params.route_id,
|
| - params.surface_handle),
|
| - base::Bind(&AcceleratedSurfaceBuffersSwappedCompletedForRenderer,
|
| - params.surface_id));
|
| + params.surface_id,
|
| + params.surface_handle));
|
| }
|
|
|
| void GpuProcessHost::OnAcceleratedSurfacePostSubBuffer(
|
|
|