Chromium Code Reviews| Index: Source/core/dom/AXObjectCache.h |
| diff --git a/Source/core/dom/AXObjectCache.h b/Source/core/dom/AXObjectCache.h |
| index 4b2d92d93330322434dafaaa717720dac2871179..6cfa2ecfe840ad15f49cbb58d2406cc6e24b0964 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,7 +145,7 @@ private: |
| static AXObjectCacheCreateFunction m_createFunction; |
| }; |
| -class CORE_EXPORT ScopedAXObjectCache : public RefCounted<ScopedAXObjectCache> { |
| +class CORE_EXPORT ScopedAXObjectCache { |
| WTF_MAKE_NONCOPYABLE(ScopedAXObjectCache); |
| public: |
| explicit ScopedAXObjectCache(Document&); |
| @@ -151,9 +155,12 @@ public: |
| AXObjectCache* operator->(); |
| private: |
| - Document& m_document; |
| - AXObjectCache* m_cache; |
| - bool m_isScoped; |
| +#if ENABLE(OILPAN) |
| + bool m_isOwned; |
| +#else |
| + OwnPtr<AXObjectCache> m_ownedCache; |
|
dmazzoni
2015/04/28 06:53:25
any reason not to just use m_isOwned for the non-o
keishi
2015/05/28 06:49:19
Nope removed.
|
| +#endif |
| + RawPtrWillBePersistent<AXObjectCache> m_cache; |
| }; |
| } |