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

Unified Diff: cc/ipc/surface_id.mojom

Issue 2388753003: Introduce cc::LocalFrameId and use in SurfaceFactory (Closed)
Patch Set: Fix exo_unittests Created 4 years, 2 months 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/ipc/surface_id.mojom
diff --git a/cc/ipc/surface_id.mojom b/cc/ipc/surface_id.mojom
index 32db3188156da8a0cc1ca4cf179dd10fe79b291b..a3c6bc143055d29f1ec56b82d19497018a37386e 100644
--- a/cc/ipc/surface_id.mojom
+++ b/cc/ipc/surface_id.mojom
@@ -5,25 +5,16 @@
module cc.mojom;
import "cc/ipc/frame_sink_id.mojom";
+import "cc/ipc/local_frame_id.mojom";
-// A surface ID is composed of three parts: a client ID, a local ID, and a
-// nonce. The local part and nonce are allocated by the client using any scheme
-// that avoids duplicates and makes IDs unguessable respectively. The client ID
-// is allocated by the service and will be different for each client.
-//
-// The special client_id value 0 is equivalent to the current client.
-// This can be used to create, destroy and submit frames to surfaces before
-// learning the client ID and to reference other surfaces owned by the same
-// client. The actual client ID must be used to pass surface ids to other
-// clients for them to reference.
+// A surface ID is composed of two parts: a FrameSinkID, and a LocalFrameId.
+// The FrameSinkId uniquely identifies the FrameSink associated with the
+// surface. This corresponds to a SurfaceFactory in the display compositor
+// service. The FrameSinkId is partially allocated by the display compositor
+// and partially allocated by the frame source.
+// The LocalFrameId are allocated by the client using any scheme
+// that avoids duplicates and makes IDs unguessable respectively.
struct SurfaceId {
FrameSinkId frame_sink_id;
-
- // An identifier allocated by the client uniquely identifying a surface within
- // a client process.
- uint32 local_id;
-
- // A cryptographically secure random int chosen to make the SurfaceId
- // unguessable by other clients.
- uint64 nonce;
+ LocalFrameId local_frame_id;
};

Powered by Google App Engine
This is Rietveld 408576698