| Index: cc/surfaces/surface_factory.h
|
| diff --git a/cc/surfaces/surface_factory.h b/cc/surfaces/surface_factory.h
|
| index 29b3e488ab4dc06086bb68fc86407c6b5d6dbc4c..7bec9516a361d0188e33e19b55466cdba11da056 100644
|
| --- a/cc/surfaces/surface_factory.h
|
| +++ b/cc/surfaces/surface_factory.h
|
| @@ -36,6 +36,8 @@ class SurfaceManager;
|
| class CC_SURFACES_EXPORT SurfaceFactory : public PendingFrameObserver {
|
| public:
|
| using DrawCallback = base::Callback<void()>;
|
| + using WillDrawCallback =
|
| + base::RepeatingCallback<void(const LocalSurfaceId&, const gfx::Rect&)>;
|
|
|
| SurfaceFactory(const FrameSinkId& frame_sink_id,
|
| SurfaceManager* manager,
|
| @@ -58,15 +60,14 @@ class CC_SURFACES_EXPORT SurfaceFactory : public PendingFrameObserver {
|
| // to draw, or if the frame is discarded.
|
| void SubmitCompositorFrame(const LocalSurfaceId& local_surface_id,
|
| CompositorFrame frame,
|
| - const DrawCallback& callback);
|
| + const DrawCallback& callback,
|
| + const WillDrawCallback& will_draw_callback);
|
| void RequestCopyOfSurface(std::unique_ptr<CopyOutputRequest> copy_request);
|
|
|
| // Evicts the current frame on the surface. All the resources
|
| // will be released and Surface::HasFrame will return false.
|
| void ClearSurface();
|
|
|
| - void WillDrawSurface(const LocalSurfaceId& id, const gfx::Rect& damage_rect);
|
| -
|
| SurfaceFactoryClient* client() { return client_; }
|
|
|
| void ReceiveFromChild(const TransferableResourceArray& resources);
|
|
|