Chromium Code Reviews| Index: content/browser/renderer_host/render_widget_host_view_win.cc |
| diff --git a/content/browser/renderer_host/render_widget_host_view_win.cc b/content/browser/renderer_host/render_widget_host_view_win.cc |
| index c8078147bf2db6fae268370cb58a5c5243b2a6d1..91d001f0b5f19a130f7a18d93ca6d82fa6f18b86 100644 |
| --- a/content/browser/renderer_host/render_widget_host_view_win.cc |
| +++ b/content/browser/renderer_host/render_widget_host_view_win.cc |
| @@ -182,6 +182,21 @@ LRESULT CALLBACK PluginWrapperWindowProc(HWND window, unsigned int message, |
| return ::DefWindowProc(window, message, wparam, lparam); |
| } |
| +void SendToGpuProcessHost(int gpu_host_id, IPC::Message* message) { |
| + GpuProcessHost* gpu_process_host = GpuProcessHost::FromID(gpu_host_id); |
| + if (!gpu_process_host) { |
| + delete message; |
| + return; |
| + } |
| + |
| + gpu_process_host->Send(message); |
| +} |
| + |
| +void PostTaskOnIOThread(const tracked_objects::Location& from_here, |
| + base::Closure task) { |
| + BrowserThread::PostTask(BrowserThread::IO, FROM_HERE, task); |
|
darin (slow to review)
2011/12/12 23:54:32
perhaps you meant to forward |from_here|?
piman
2011/12/13 00:35:41
Probably... I was just reverting part of the CL, s
|
| +} |
| + |
| bool DecodeZoomGesture(HWND hwnd, const GESTUREINFO& gi, |
| content::PageZoom* zoom, |
| POINT* zoom_center) { |
| @@ -2035,12 +2050,15 @@ void RenderWidgetHostViewWin::AcceleratedSurfaceBuffersSwapped( |
| accelerated_surface_->Initialize(); |
| } |
| + base::Closure acknowledge_task = base::Bind( |
| + SendToGpuProcessHost, |
| + gpu_host_id, |
| + new AcceleratedSurfaceMsg_BuffersSwappedACK(params.route_id)); |
|
darin (slow to review)
2011/12/12 23:54:32
it seems like you should be using the new Passed()
piman
2011/12/13 00:35:41
Done.
|
| + |
| accelerated_surface_->AsyncPresentAndAcknowledge( |
| params.size, |
| params.surface_id, |
| - base::Bind(&RenderWidgetHost::AcknowledgeSwapBuffers, |
| - gpu_host_id, |
| - params.route_id)); |
| + base::Bind(PostTaskOnIOThread, FROM_HERE, acknowledge_task)); |
|
darin (slow to review)
2011/12/12 23:54:32
hmm, seems like it might be nice to add PostTaskOn
piman
2011/12/13 00:35:41
I removed that function.
We could argue whether or
piman
2011/12/13 01:04:50
Turns out, it's actually needed for overload resol
|
| } else { |
| RenderWidgetHost::AcknowledgeSwapBuffers(params.route_id, gpu_host_id); |
| } |