Index: Source/core/dom/UserActionElementSet.h |
diff --git a/Source/core/dom/UserActionElementSet.h b/Source/core/dom/UserActionElementSet.h |
index 9883262c04fa6ed58faacf86d31e9a224ba2f11b..e150b972c92d1e011cfb5a1781e01030cee75e9e 100644 |
--- a/Source/core/dom/UserActionElementSet.h |
+++ b/Source/core/dom/UserActionElementSet.h |
@@ -27,6 +27,7 @@ |
#ifndef UserActionElementSet_h |
#define UserActionElementSet_h |
+#include "platform/heap/Handle.h" |
#include "wtf/HashMap.h" |
#include "wtf/PassOwnPtr.h" |
#include "wtf/RefPtr.h" |
@@ -37,9 +38,8 @@ class Node; |
class Element; |
class UserActionElementSet { |
zerny-chromium
2014/05/05 11:07:52
Nit: FINAL (since we use a non-virtual trace)
Mads Ager (chromium)
2014/05/05 11:35:54
Done.
|
+ DISALLOW_ALLOCATION(); |
public: |
- static PassOwnPtr<UserActionElementSet> create() { return adoptPtr(new UserActionElementSet()); } |
- |
bool isFocused(const Node* node) { return hasFlags(node, IsFocusedFlag); } |
bool isActive(const Node* node) { return hasFlags(node, IsActiveFlag); } |
bool isInActiveChain(const Node* node) { return hasFlags(node, InActiveChainFlag); } |
@@ -55,6 +55,8 @@ public: |
void didDetach(Node*); |
void documentDidRemoveLastRef(); |
+ void trace(Visitor*); |
+ |
private: |
enum ElementFlags { |
IsActiveFlag = 1 , |
@@ -72,7 +74,7 @@ private: |
void clearFlags(Element*, unsigned); |
bool hasFlags(const Element*, unsigned flags) const; |
- typedef HashMap<RefPtr<Element>, unsigned> ElementFlagMap; |
+ typedef WillBeHeapHashMap<RefPtrWillBeMember<Element>, unsigned> ElementFlagMap; |
ElementFlagMap m_elements; |
}; |