| Index: content/browser/renderer_host/render_widget_helper.cc
|
| diff --git a/content/browser/renderer_host/render_widget_helper.cc b/content/browser/renderer_host/render_widget_helper.cc
|
| index 4803956deed5a2bbaca91d885f775804fbae9334..7800bf059ce1a3d4afb17d31ae3e8fafaa15a618 100644
|
| --- a/content/browser/renderer_host/render_widget_helper.cc
|
| +++ b/content/browser/renderer_host/render_widget_helper.cc
|
| @@ -8,6 +8,7 @@
|
| #include "base/bind_helpers.h"
|
| #include "base/eintr_wrapper.h"
|
| #include "base/threading/thread.h"
|
| +#include "content/browser/gpu/gpu_surface_tracker.h"
|
| #include "content/browser/renderer_host/render_process_host_impl.h"
|
| #include "content/browser/renderer_host/render_view_host.h"
|
| #include "content/browser/renderer_host/resource_dispatcher_host.h"
|
| @@ -212,8 +213,11 @@ void RenderWidgetHelper::OnCrossSiteSwapOutACK(
|
| void RenderWidgetHelper::CreateNewWindow(
|
| const ViewHostMsg_CreateWindow_Params& params,
|
| base::ProcessHandle render_process,
|
| - int* route_id) {
|
| + int* route_id,
|
| + int* surface_id) {
|
| *route_id = GetNextRoutingID();
|
| + *surface_id = GpuSurfaceTracker::Get()->AddSurfaceForRenderer(
|
| + render_process_id_, *route_id);
|
| // Block resource requests until the view is created, since the HWND might be
|
| // needed if a response ends up creating a plugin.
|
| resource_dispatcher_host_->BlockRequestsForRoute(
|
| @@ -221,8 +225,8 @@ void RenderWidgetHelper::CreateNewWindow(
|
|
|
| BrowserThread::PostTask(
|
| BrowserThread::UI, FROM_HERE,
|
| - base::Bind(
|
| - &RenderWidgetHelper::OnCreateWindowOnUI, this, params, *route_id));
|
| + base::Bind(&RenderWidgetHelper::OnCreateWindowOnUI,
|
| + this, params, *route_id));
|
| }
|
|
|
| void RenderWidgetHelper::OnCreateWindowOnUI(
|
| @@ -245,8 +249,11 @@ void RenderWidgetHelper::OnCreateWindowOnIO(int route_id) {
|
|
|
| void RenderWidgetHelper::CreateNewWidget(int opener_id,
|
| WebKit::WebPopupType popup_type,
|
| - int* route_id) {
|
| + int* route_id,
|
| + int* surface_id) {
|
| *route_id = GetNextRoutingID();
|
| + *surface_id = GpuSurfaceTracker::Get()->AddSurfaceForRenderer(
|
| + render_process_id_, *route_id);
|
| BrowserThread::PostTask(
|
| BrowserThread::UI, FROM_HERE,
|
| base::Bind(
|
| @@ -255,8 +262,11 @@ void RenderWidgetHelper::CreateNewWidget(int opener_id,
|
| }
|
|
|
| void RenderWidgetHelper::CreateNewFullscreenWidget(int opener_id,
|
| - int* route_id) {
|
| + int* route_id,
|
| + int* surface_id) {
|
| *route_id = GetNextRoutingID();
|
| + *surface_id = GpuSurfaceTracker::Get()->AddSurfaceForRenderer(
|
| + render_process_id_, *route_id);
|
| BrowserThread::PostTask(
|
| BrowserThread::UI, FROM_HERE,
|
| base::Bind(
|
| @@ -334,24 +344,3 @@ void RenderWidgetHelper::ClearAllocatedDIBs() {
|
| allocated_dibs_.clear();
|
| }
|
| #endif
|
| -
|
| -void RenderWidgetHelper::SetCompositingSurface(
|
| - int render_widget_id,
|
| - gfx::PluginWindowHandle compositing_surface) {
|
| - base::AutoLock locked(view_compositing_surface_map_lock_);
|
| - if (compositing_surface != gfx::kNullPluginWindow)
|
| - view_compositing_surface_map_[render_widget_id] = compositing_surface;
|
| - else
|
| - view_compositing_surface_map_.erase(render_widget_id);
|
| -}
|
| -
|
| -gfx::PluginWindowHandle RenderWidgetHelper::LookupCompositingSurface(
|
| - int render_widget_id) {
|
| - base::AutoLock locked(view_compositing_surface_map_lock_);
|
| - ViewCompositingSurfaceMap::iterator it =
|
| - view_compositing_surface_map_.find(render_widget_id);
|
| - if (it == view_compositing_surface_map_.end())
|
| - return gfx::kNullPluginWindow;
|
| -
|
| - return it->second;
|
| -}
|
|
|