| Index: cc/surfaces/surface_manager.h
|
| diff --git a/cc/surfaces/surface_manager.h b/cc/surfaces/surface_manager.h
|
| index 4a45f2c34c2b60f871d125c56c35bfbb9c513c12..73b1b25040b922a530d439b296e421eb6e541aa3 100644
|
| --- a/cc/surfaces/surface_manager.h
|
| +++ b/cc/surfaces/surface_manager.h
|
| @@ -35,6 +35,9 @@
|
| #endif
|
|
|
| namespace cc {
|
| +
|
| +struct BeginFrameAck;
|
| +struct BeginFrameArgs;
|
| class BeginFrameSource;
|
| class CompositorFrame;
|
| class FrameSinkManagerClient;
|
| @@ -79,7 +82,12 @@ class CC_SURFACES_EXPORT SurfaceManager {
|
| observer_list_.RemoveObserver(obs);
|
| }
|
|
|
| - bool SurfaceModified(const SurfaceId& surface_id);
|
| + // Called when a Surface is modified, e.g. when a CompositorFrame is
|
| + // activated, its producer confirms that no CompositorFrame will be submitted
|
| + // in response to a BeginFrame, or a CopyOutputRequest is issued.
|
| + //
|
| + // |ack.sequence_number| is only valid if called in response to a BeginFrame.
|
| + bool SurfaceModified(const SurfaceId& surface_id, const BeginFrameAck& ack);
|
|
|
| // Called when a CompositorFrame is submitted to a CompositorFrameSinkSupport
|
| // for a given |surface_id| for the first time.
|
| @@ -98,6 +106,11 @@ class CC_SURFACES_EXPORT SurfaceManager {
|
| // Called when |surface| is being destroyed.
|
| void SurfaceDiscarded(Surface* surface);
|
|
|
| + // Called when a Surface's CompositorFrame producer has received a BeginFrame
|
| + // and, thus, is expected to produce damage soon.
|
| + void SurfaceDamageExpected(const SurfaceId& surface_id,
|
| + const BeginFrameArgs& args);
|
| +
|
| // Require that the given sequence number must be satisfied (using
|
| // SatisfySequence) before the given surface can be destroyed.
|
| void RequireSequence(const SurfaceId& surface_id,
|
|
|