Index: cc/ipc/display_compositor.mojom |
diff --git a/cc/ipc/display_compositor.mojom b/cc/ipc/display_compositor.mojom |
index c3ae783e6def4e62ec85589f59d0fd022b7503e4..efd3400afe409611c749cda68d1d97eb823a9bba 100644 |
--- a/cc/ipc/display_compositor.mojom |
+++ b/cc/ipc/display_compositor.mojom |
@@ -4,9 +4,34 @@ |
module cc.mojom; |
+import "cc/ipc/frame_sink_id.mojom"; |
+import "cc/ipc/mojo_compositor_frame_sink.mojom"; |
import "cc/ipc/surface_id.mojom"; |
+import "cc/ipc/surface_sequence.mojom"; |
+import "gpu/ipc/common/surface_handle.mojom"; |
import "ui/gfx/geometry/mojo/geometry.mojom"; |
+// The DisplayCompositor interface is a privileged interface that allows |
+// the display compositor host (browser or window server) to create |
+// CompositorFrameSinks. |
+interface DisplayCompositor { |
rjkroege
2016/11/21 23:05:36
Please note how normal clients make themselves Com
Fady Samuel
2016/11/22 01:02:23
Done.
|
+ CreateCompositorFrameSink( |
+ cc.mojom.FrameSinkId frame_sink_id, |
+ gpu.mojom.SurfaceHandle widget, |
+ cc.mojom.MojoCompositorFrameSink& compositor_frame_sink, |
+ cc.mojom.MojoCompositorFrameSinkPrivate& compositor_frame_sink_private, |
+ cc.mojom.MojoCompositorFrameSinkClient compositor_frame_sink_client); |
+ |
+ // TODO(fsamuel): This surface reference API is temporary.Surface references |
+ // should be bundled with CompositorFrames. |
+ AddRootSurfaceReference(cc.mojom.SurfaceId child_id); |
+ AddSurfaceReference(cc.mojom.SurfaceId parent_id, |
+ cc.mojom.SurfaceId child_id); |
+ RemoveRootSurfaceReference(cc.mojom.SurfaceId child_id); |
+ RemoveSurfaceReference(cc.mojom.SurfaceId parent_id, |
+ cc.mojom.SurfaceId child_id); |
+}; |
+ |
// The DisplayCompositorClient interface is implemented by the Display |
// Compositor Host, a stable, and privileged peer service to the display |
// compositor. The display compositor host is either the browser process in |