Chromium Code Reviews| Index: Source/core/dom/AXObjectCache.h |
| diff --git a/Source/core/dom/AXObjectCache.h b/Source/core/dom/AXObjectCache.h |
| index 1b4cc368a84ffb4d336d05a0e28cc4df7fc7c961..186005aebd0f8d88e2a4a487dc9e6f5a49241dea 100644 |
| --- a/Source/core/dom/AXObjectCache.h |
| +++ b/Source/core/dom/AXObjectCache.h |
| @@ -40,14 +40,16 @@ class LayoutMenuList; |
| class Page; |
| class Widget; |
| -class CORE_EXPORT AXObjectCache { |
| - WTF_MAKE_NONCOPYABLE(AXObjectCache); WTF_MAKE_FAST_ALLOCATED(AXObjectCache); |
| +class CORE_EXPORT AXObjectCache : public NoBaseWillBeGarbageCollectedFinalized<AXObjectCache> { |
| + WTF_MAKE_NONCOPYABLE(AXObjectCache); |
| + WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED(AXObjectCache); |
| public: |
| - static AXObjectCache* create(Document&); |
| + static PassOwnPtrWillBeRawPtr<AXObjectCache> create(Document&); |
| static AXObject* focusedUIElementForPage(const Page*); |
| virtual ~AXObjectCache(); |
| + DEFINE_INLINE_VIRTUAL_TRACE() { } |
| enum AXNotification { |
| AXActiveDescendantChanged, |
| @@ -81,6 +83,8 @@ public: |
| AXValueChanged |
| }; |
| + virtual void dispose() = 0; |
| + |
| virtual void selectionChanged(Node*) = 0; |
| virtual void childrenChanged(Node*) = 0; |
| virtual void childrenChanged(LayoutObject*) = 0; |
| @@ -131,7 +135,7 @@ public: |
| virtual const AtomicString& computedRoleForNode(Node*) = 0; |
| virtual String computedNameForNode(Node*) = 0; |
| - typedef AXObjectCache* (*AXObjectCacheCreateFunction)(Document&); |
| + typedef PassOwnPtrWillBeRawPtr<AXObjectCache> (*AXObjectCacheCreateFunction)(Document&); |
| static void init(AXObjectCacheCreateFunction); |
| protected: |
| @@ -141,19 +145,19 @@ private: |
| static AXObjectCacheCreateFunction m_createFunction; |
| }; |
| -class CORE_EXPORT ScopedAXObjectCache : public RefCounted<ScopedAXObjectCache> { |
| +class CORE_EXPORT ScopedAXObjectCache { |
|
tkent
2015/06/22 03:14:47
Please explain the reason of this change in the CL
keishi
2015/06/22 05:23:56
Done.
|
| WTF_MAKE_NONCOPYABLE(ScopedAXObjectCache); |
| public: |
| - explicit ScopedAXObjectCache(Document&); |
| + static PassOwnPtr<ScopedAXObjectCache> create(Document&); |
| ~ScopedAXObjectCache(); |
| AXObjectCache* get(); |
| - AXObjectCache* operator->(); |
| private: |
| - Document& m_document; |
| - AXObjectCache* m_cache; |
| - bool m_isScoped; |
| + explicit ScopedAXObjectCache(Document&); |
| + |
| + RefPtrWillBePersistent<Document> m_document; |
| + OwnPtrWillBePersistent<AXObjectCache> m_cache; |
| }; |
| } |