| 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 {
|
| + 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;
|
| };
|
|
|
|
|