Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(255)

Unified Diff: content/browser/compositor/gpu_process_transport_factory.h

Issue 2789753002: Convert offscreen canvas to use FrameSinkManagerHost. (Closed)
Patch Set: Lower similarity. Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/compositor/gpu_process_transport_factory.h
diff --git a/content/browser/compositor/gpu_process_transport_factory.h b/content/browser/compositor/gpu_process_transport_factory.h
index cab105ae0fde582a57c0933fb4bad4ad358912bc..b3a0f651920354fa745978af9e99ec0cfdd5d177 100644
--- a/content/browser/compositor/gpu_process_transport_factory.h
+++ b/content/browser/compositor/gpu_process_transport_factory.h
@@ -16,6 +16,7 @@
#include "base/memory/weak_ptr.h"
#include "base/observer_list.h"
#include "build/build_config.h"
+#include "cc/ipc/display_compositor.mojom.h"
#include "cc/surfaces/frame_sink_id_allocator.h"
#include "content/browser/compositor/image_transport_factory.h"
#include "gpu/ipc/client/gpu_channel_host.h"
@@ -30,6 +31,7 @@ class VulkanInProcessContextProvider;
namespace ui {
class ContextProviderCommandBuffer;
+class DisplayCompositor;
}
namespace content {
@@ -78,6 +80,7 @@ class GpuProcessTransportFactory : public ui::ContextFactory,
ui::ContextFactory* GetContextFactory() override;
ui::ContextFactoryPrivate* GetContextFactoryPrivate() override;
cc::SurfaceManager* GetSurfaceManager() override;
+ cc::mojom::DisplayCompositor* GetDisplayCompositor() override;
display_compositor::GLHelper* GetGLHelper() override;
void SetGpuChannelEstablishFactory(
gpu::GpuChannelEstablishFactory* factory) override;
@@ -104,7 +107,11 @@ class GpuProcessTransportFactory : public ui::ContextFactory,
scoped_refptr<cc::VulkanInProcessContextProvider>
SharedVulkanContextProvider();
- std::unique_ptr<cc::SurfaceManager> surface_manager_;
+ // Once all usage of SurfaceManager is removed, DisplayCompositor will only be
+ // used over Mojo and |display_compositor_| will be owned somewhere else.
+ cc::mojom::DisplayCompositorPtr display_compositor_ptr_;
+ std::unique_ptr<ui::DisplayCompositor> display_compositor_;
+
cc::FrameSinkIdAllocator frame_sink_id_allocator_;
#if defined(OS_WIN)

Powered by Google App Engine
This is Rietveld 408576698