Index: cc/surfaces/surface_factory.cc |
diff --git a/cc/surfaces/surface_factory.cc b/cc/surfaces/surface_factory.cc |
index 0cbe9d5cebcdcfe97982e4fcee2917e38dda2551..aca36bb9398aff367f59778213304c835d13e7cf 100644 |
--- a/cc/surfaces/surface_factory.cc |
+++ b/cc/surfaces/surface_factory.cc |
@@ -53,6 +53,16 @@ void SurfaceFactory::Destroy(SurfaceId surface_id) { |
manager_->Destroy(std::move(surface)); |
} |
+void SurfaceFactory::SetPreviousFrameSurface(SurfaceId new_id, |
+ SurfaceId old_id) { |
+ OwningSurfaceMap::iterator it = surface_map_.find(new_id); |
+ DCHECK(it != surface_map_.end()); |
+ Surface* old_surface = manager_->GetSurfaceForId(old_id); |
+ if (old_surface) { |
+ it->second->SetPreviousFrameSurface(old_surface); |
+ } |
+} |
+ |
void SurfaceFactory::SubmitCompositorFrame( |
SurfaceId surface_id, |
std::unique_ptr<CompositorFrame> frame, |