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

Unified Diff: third_party/WebKit/Source/platform/graphics/CompositorElementId.h

Issue 2860293002: Change cc::ElementId to be a uint64_t (Closed)
Patch Set: none Created 3 years, 7 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: third_party/WebKit/Source/platform/graphics/CompositorElementId.h
diff --git a/third_party/WebKit/Source/platform/graphics/CompositorElementId.h b/third_party/WebKit/Source/platform/graphics/CompositorElementId.h
index 7a17e46a932681b5b9bdd6454c6d20fa3ae7f409..4d601d59d6a9b715ecd60c5f77857e87015082a6 100644
--- a/third_party/WebKit/Source/platform/graphics/CompositorElementId.h
+++ b/third_party/WebKit/Source/platform/graphics/CompositorElementId.h
@@ -13,46 +13,28 @@
namespace blink {
-enum class CompositorSubElementId {
- kPrimary,
- kScroll,
- kViewport,
- kLinkHighlight
+// Do not add more of these without adjusting the bitfield arithmetic in
+// CreateCompositorElementId.
+enum CompositorSubElementId {
+ kPrimary = 0,
+ kScroll = 1,
+ kViewport = 2,
+ kLinkHighlight = 3,
+ // A sentinel to indicate how many enum values there are:
+ kNumSubElementTypes
};
using CompositorElementId = cc::ElementId;
+using DOMNodeId = uint64_t;
CompositorElementId PLATFORM_EXPORT
-CreateCompositorElementId(int dom_node_id, CompositorSubElementId);
-
-// Note cc::ElementId has a hash function already implemented via
-// ElementIdHash::operator(). However for consistency's sake we choose to use
-// Blink's hash functions with Blink specific data structures.
-struct CompositorElementIdHash {
- static unsigned GetHash(const CompositorElementId& p) {
- return WTF::HashInts(p.primaryId, p.secondaryId);
- }
- static bool Equal(const CompositorElementId& a,
- const CompositorElementId& b) {
- return a.primaryId == b.primaryId && a.secondaryId == b.secondaryId;
- }
- static const bool safe_to_compare_to_empty_or_deleted = true;
-};
+ CreateCompositorElementId(DOMNodeId, CompositorSubElementId);
-struct CompositorElementIdHashTraits
- : WTF::GenericHashTraits<CompositorElementId> {
- static CompositorElementId EmptyValue() { return CompositorElementId(); }
- static void ConstructDeletedValue(CompositorElementId& slot, bool) {
- slot = CompositorElementId(-1, -1);
- }
- static bool IsDeletedValue(CompositorElementId value) {
- return value == CompositorElementId(-1, -1);
- }
-};
+DOMNodeId PLATFORM_EXPORT DomNodeIdFromCompositorElementId(CompositorElementId);
+CompositorSubElementId PLATFORM_EXPORT
+ SubElementIdFromCompositorElementId(CompositorElementId);
-using CompositorElementIdSet = HashSet<CompositorElementId,
- CompositorElementIdHash,
- CompositorElementIdHashTraits>;
+using CompositorElementIdSet = HashSet<CompositorElementId::Id>;
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698