Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2161)

Unified Diff: cc/surfaces/surface_manager.h

Issue 666163006: Allow layers to signal that additional sequences are needed before surface destruction (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: cc/surfaces/surface_manager.h
diff --git a/cc/surfaces/surface_manager.h b/cc/surfaces/surface_manager.h
index 66db9d90ee38df8e10e604dd75463ab3d6644f97..be48245464faa2aa16532dcb6f9f0f17f908cb50 100644
--- a/cc/surfaces/surface_manager.h
+++ b/cc/surfaces/surface_manager.h
@@ -31,8 +31,7 @@ class CC_SURFACES_EXPORT SurfaceManager {
void DeregisterSurface(SurfaceId surface_id);
// Destroy the Surface once a set of sequence numbers has been satisfied.
- void DestroyOnSequence(scoped_ptr<Surface> surface,
- const std::set<SurfaceSequence>& dependency_set);
+ void Destroy(scoped_ptr<Surface> surface);
Surface* GetSurfaceForId(SurfaceId surface_id);
@@ -46,8 +45,10 @@ class CC_SURFACES_EXPORT SurfaceManager {
void SurfaceModified(SurfaceId surface_id);
- // A frame for a surface satisfies a set of sequence numbers.
- void DidSatisfySequences(SurfaceId id, std::vector<uint32_t>* sequence);
+ // A frame for a surface satisfies a set of sequence numbers in a particular
+ // id namespace.
+ void DidSatisfySequences(uint32_t id_namespace,
+ std::vector<uint32_t>* sequence);
private:
void SearchForSatisfaction();
@@ -59,8 +60,7 @@ class CC_SURFACES_EXPORT SurfaceManager {
// List of surfaces to be destroyed, along with what sequences they're still
// waiting on.
- typedef std::list<std::pair<Surface*, std::set<SurfaceSequence>>>
- SurfaceDestroyList;
+ typedef std::list<Surface*> SurfaceDestroyList;
SurfaceDestroyList surfaces_to_destroy_;
// Set of SurfaceSequences that have been satisfied by a frame but not yet

Powered by Google App Engine
This is Rietveld 408576698