Chromium Code Reviews| Index: cc/trees/element_id.h |
| diff --git a/cc/trees/element_id.h b/cc/trees/element_id.h |
| index 8518cf8ce13393c93c8d01faf224f27620d5269c..059cf2b36d7e8bdcaec6e9372004319f894bcacc 100644 |
| --- a/cc/trees/element_id.h |
| +++ b/cc/trees/element_id.h |
| @@ -24,6 +24,10 @@ class TracedValue; |
| namespace cc { |
| +using ElementIdType = uint64_t; |
| + |
| +static const ElementIdType kInvalidElementId = 0; |
| + |
| // Element ids are chosen by cc's clients and can be used as a stable identifier |
| // across updates. |
| // |
| @@ -44,9 +48,8 @@ namespace cc { |
| // the Layer's lifetime because non-default ElementIds are only set during an |
| // animation's lifetime. |
| struct CC_EXPORT ElementId { |
| - ElementId(int primaryId, int secondaryId) |
| - : primaryId(primaryId), secondaryId(secondaryId) {} |
| - ElementId() : ElementId(0, 0) {} |
| + explicit ElementId(int id) : id_(id) {} |
| + ElementId() : ElementId(kInvalidElementId) {} |
| bool operator==(const ElementId& o) const; |
| bool operator!=(const ElementId& o) const; |
| @@ -61,11 +64,10 @@ struct CC_EXPORT ElementId { |
| // The compositor treats this as an opaque handle and should not know how to |
| // interpret these bits. Non-blink cc clients typically operate in terms of |
| // layers and may set this value to match the client's layer id. |
| - int primaryId; |
| - int secondaryId; |
| + ElementIdType id_; |
|
wkorman
2017/05/08 22:25:26
For the record: we discussed in person re: making
|
| }; |
| -CC_EXPORT ElementId LayerIdToElementIdForTesting(int layer_id); |
| +ElementId CC_EXPORT LayerIdToElementIdForTesting(int layer_id); |
| struct CC_EXPORT ElementIdHash { |
| size_t operator()(ElementId key) const; |