| Index: content/browser/aura/gpu_process_transport_factory.cc
|
| diff --git a/content/browser/aura/gpu_process_transport_factory.cc b/content/browser/aura/gpu_process_transport_factory.cc
|
| index 3c55282813ee482b28845e38737259110853cbe7..f34ef90e2d56bc1ea05cabed2b16d5a1609e4da5 100644
|
| --- a/content/browser/aura/gpu_process_transport_factory.cc
|
| +++ b/content/browser/aura/gpu_process_transport_factory.cc
|
| @@ -13,6 +13,7 @@
|
| #include "cc/output/compositor_frame.h"
|
| #include "cc/output/output_surface.h"
|
| #include "content/browser/aura/browser_compositor_output_surface.h"
|
| +#include "content/browser/aura/browser_compositor_output_surface_capturer.h"
|
| #include "content/browser/aura/browser_compositor_output_surface_proxy.h"
|
| #include "content/browser/aura/reflector_impl.h"
|
| #include "content/browser/aura/software_browser_compositor_output_surface.h"
|
| @@ -251,12 +252,11 @@ scoped_ptr<cc::OutputSurface> GpuProcessTransportFactory::CreateOutputSurface(
|
| compositor_thread_task_runner.get());
|
|
|
| scoped_ptr<BrowserCompositorOutputSurface> surface(
|
| - new BrowserCompositorOutputSurface(
|
| - context_provider,
|
| - per_compositor_data_[compositor]->surface_id,
|
| - &output_surface_map_,
|
| - base::MessageLoopProxy::current().get(),
|
| - compositor->AsWeakPtr()));
|
| + new BrowserCompositorOutputSurface(context_provider,
|
| + data->surface_id,
|
| + &output_surface_map_,
|
| + base::MessageLoopProxy::current(),
|
| + compositor->AsWeakPtr()));
|
| if (data->reflector.get()) {
|
| data->reflector->CreateSharedTexture();
|
| data->reflector->AttachToOutputSurface(surface.get());
|
| @@ -353,6 +353,19 @@ scoped_refptr<ui::Texture> GpuProcessTransportFactory::CreateOwnedTexture(
|
| return image;
|
| }
|
|
|
| +scoped_ptr<SurfaceCapturer>
|
| +GpuProcessTransportFactory::CreateOutputSurfaceCapturer(
|
| + ui::Compositor* compositor,
|
| + SurfaceCapturer::Client* client) {
|
| + PerCompositorDataMap::iterator it = per_compositor_data_.find(compositor);
|
| + if (it == per_compositor_data_.end())
|
| + return scoped_ptr<SurfaceCapturer>();
|
| + PerCompositorData* data = it->second;
|
| + DCHECK(data);
|
| + return scoped_ptr<SurfaceCapturer>(new BrowserCompositorOutputSurfaceCapturer(
|
| + &output_surface_map_, data->surface_id, client));
|
| +}
|
| +
|
| GLHelper* GpuProcessTransportFactory::GetGLHelper() {
|
| if (!gl_helper_) {
|
| CreateSharedContextLazy();
|
|
|