blob: 76dcf18096ac2ee6d375d5bea495e1914575d368 [file] [log] [blame]
// Copyright 2016 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 blink.mojom;
import "cc/ipc/compositor_frame.mojom";
import "cc/ipc/surface_id.mojom";
import "cc/ipc/surface_sequence.mojom";
interface OffscreenCanvasSurface {
// TODO(619138): Make creation of surface id Async after implementation
// change on surface_id generator that makes client side be able to generate
// unique surface_id.id_namespace alone.
[Sync]
GetSurfaceId() => (cc.mojom.SurfaceId surface_id);
RequestSurfaceCreation(cc.mojom.SurfaceId surface_id);
Require(cc.mojom.SurfaceId surface_id, cc.mojom.SurfaceSequence sequence);
Satisfy(cc.mojom.SurfaceSequence sequence);
};
// This interface is called from either worker or main thread in renderer, but
// not both for the same OffscreenCanvas instance.
interface OffscreenCanvasFrameReceiver {
SubmitCompositorFrame(cc.mojom.SurfaceId surface_id, cc.mojom.CompositorFrame compositor_frame);
};