| // Copyright 2018 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| module content.mojom; |
| |
| import "content/common/render_frame_metadata.mojom"; |
| import "services/viz/public/mojom/compositing/compositor_frame_sink.mojom"; |
| |
| // This interface provides CompositorFrameSink and a |
| // RenderFrameMetadataObserverClient for the renderer. While also |
| // providing an observer of RenderFrameMetadata to the browser, which is needed |
| // to be able to control the modes of observation. |
| interface FrameSinkProvider { |
| CreateForWidget( |
| int32 widget_id, |
| pending_receiver<viz.mojom.CompositorFrameSink> |
| compositor_frame_sink_receiver, |
| pending_remote<viz.mojom.CompositorFrameSinkClient> |
| compositor_frame_sink_client); |
| |
| RegisterRenderFrameMetadataObserver( |
| int32 widget_id, |
| pending_receiver<RenderFrameMetadataObserverClient> |
| render_frame_metadata_observer_client_receiver, |
| pending_remote<RenderFrameMetadataObserver> |
| render_frame_metadata_observer); |
| }; |