Index: ui/compositor/compositor.h |
diff --git a/ui/compositor/compositor.h b/ui/compositor/compositor.h |
index c5dc3ba076a19d948fe0e2a811291ea65d0cd9d9..71ddecbcdf2eaca6d50f81c41d864ce7fa78ba7d 100644 |
--- a/ui/compositor/compositor.h |
+++ b/ui/compositor/compositor.h |
@@ -54,6 +54,12 @@ class COMPOSITOR_EXPORT ContextFactory { |
virtual WebKit::WebGraphicsContext3D* CreateContext( |
Compositor* compositor) = 0; |
+ // Creates an output surface for the given compositor. The factory may keep |
+ // per-compositor data (e.g. a shared context), that needs to be cleaned up |
+ // by calling RemoveCompositor when the compositor gets destroyed. |
+ virtual WebKit::WebCompositorOutputSurface* CreateOutputSurface( |
+ Compositor* compositor) = 0; |
+ |
// Creates a context used for offscreen rendering. This context can be shared |
// with all compositors. |
virtual WebKit::WebGraphicsContext3D* CreateOffscreenContext() = 0; |
@@ -71,6 +77,8 @@ class COMPOSITOR_EXPORT DefaultContextFactory : public ContextFactory { |
// ContextFactory implementation |
virtual WebKit::WebGraphicsContext3D* CreateContext( |
Compositor* compositor) OVERRIDE; |
+ virtual WebKit::WebCompositorOutputSurface* CreateOutputSurface( |
+ Compositor* compositor) OVERRIDE; |
virtual WebKit::WebGraphicsContext3D* CreateOffscreenContext() OVERRIDE; |
virtual void RemoveCompositor(Compositor* compositor) OVERRIDE; |