Index: content/browser/gpu/gpu_process_host_ui_shim.cc |
diff --git a/content/browser/gpu/gpu_process_host_ui_shim.cc b/content/browser/gpu/gpu_process_host_ui_shim.cc |
index e8cd609a94d835171036b1eabc0aa1e4a903dcd5..dd3e86f7fd5262b7eb56d9b078f3f6a6c2b892ed 100644 |
--- a/content/browser/gpu/gpu_process_host_ui_shim.cc |
+++ b/content/browser/gpu/gpu_process_host_ui_shim.cc |
@@ -216,6 +216,8 @@ bool GpuProcessHostUIShim::OnControlMessageReceived( |
#if defined(USE_AURA) |
IPC_MESSAGE_HANDLER(GpuHostMsg_AcceleratedSurfaceRelease, |
OnAcceleratedSurfaceRelease) |
+ IPC_MESSAGE_HANDLER(GpuHostMsg_AcceleratedSurfaceRequestReleaseFront, |
+ OnAcceleratedSurfaceRequestReleaseFront) |
#endif |
IPC_MESSAGE_UNHANDLED_ERROR() |
@@ -309,7 +311,8 @@ void GpuProcessHostUIShim::OnAcceleratedSurfaceNew( |
TransportDIB::Handle shm_handle = TransportDIB::DefaultHandleValue(); |
view->AcceleratedSurfaceNew( |
- params.width, params.height, &surface_handle, &shm_handle); |
+ params.width, params.height, &surface_handle, &shm_handle, |
+ params.route_id, host_id_); |
delayed_send.Cancel(); |
Send(new AcceleratedSurfaceMsg_NewACK( |
params.route_id, surface_handle, shm_handle)); |
@@ -394,4 +397,17 @@ void GpuProcessHostUIShim::OnAcceleratedSurfaceRelease( |
view->AcceleratedSurfaceRelease(params.identifier); |
} |
+void GpuProcessHostUIShim::OnAcceleratedSurfaceRequestReleaseFront( |
+ const GpuHostMsg_AcceleratedSurfaceRequestReleaseFront_Params& params) { |
+ RenderWidgetHostViewPort* view = GetRenderWidgetHostViewFromSurfaceID( |
+ params.surface_id); |
+ if (!view) |
+ return; |
+ view->AcceleratedSurfaceRequestReleaseFront(params.identifier, |
+ params.request_id, |
+ params.retry_count, |
+ params.route_id, |
+ host_id_); |
+} |
+ |
#endif |