Chromium Code Reviews| Index: Source/modules/accessibility/AXObjectCacheImpl.h |
| diff --git a/Source/modules/accessibility/AXObjectCacheImpl.h b/Source/modules/accessibility/AXObjectCacheImpl.h |
| index 2e7213a6e93281ad88eff24ef29209439e15b0d1..6b193d0a0bb961402ffb66e40368e2b9b0abda58 100644 |
| --- a/Source/modules/accessibility/AXObjectCacheImpl.h |
| +++ b/Source/modules/accessibility/AXObjectCacheImpl.h |
| @@ -138,7 +138,11 @@ public: |
| AXObject* firstAccessibleObjectFromNode(const Node*); |
| +#if ENABLE(OILPAN) |
| + void remove(AXObject*); |
| +#else |
| void remove(AXID); |
| +#endif |
| void remove(AbstractInlineTextBox*); |
| void childrenChanged(AXObject*); |
| @@ -153,7 +157,9 @@ public: |
| bool accessibilityEnabled(); |
| bool inlineTextBoxAccessibilityEnabled(); |
| +#if !ENABLE(OILPAN) |
| void removeAXID(AXObject*); |
| +#endif |
| bool isIDinUse(AXID id) const { return m_idsInUse.contains(id); } |
| AXID platformGenerateAXID() const; |
| @@ -176,18 +182,29 @@ protected: |
| void removeNodeForUse(Node* n) { m_textMarkerNodes.remove(n); } |
| bool isNodeInUse(Node* n) { return m_textMarkerNodes.contains(n); } |
| - PassRefPtr<AXObject> createFromRenderer(LayoutObject*); |
| - PassRefPtr<AXObject> createFromNode(Node*); |
| - PassRefPtr<AXObject> createFromInlineTextBox(AbstractInlineTextBox*); |
| + PassRefPtrWillBeRawPtr<AXObject> createFromRenderer(LayoutObject*); |
| + PassRefPtrWillBeRawPtr<AXObject> createFromNode(Node*); |
| + PassRefPtrWillBeRawPtr<AXObject> createFromInlineTextBox(AbstractInlineTextBox*); |
| private: |
| + void removeAXID(AXID); |
| + |
| Document& m_document; |
|
haraken
2015/05/28 10:48:41
This should be Member<Document>.
keishi
2015/06/08 06:27:21
Done.
|
| + |
| +#if ENABLE(OILPAN) |
| + HeapHashMap<AXID, WeakMember<AXObject>> m_objects; |
|
haraken
2015/05/28 10:48:41
Why isn't this a HeapHashMap<AXID, Member<AXObject
keishi
2015/06/08 06:27:21
Done.
|
| + HeapHashMap<LayoutObject*, Member<AXObject>> m_layoutObjectMapping; |
| + HeapHashMap<WeakMember<Widget>, Member<AXObject>> m_widgetObjectMapping; |
| + HeapHashMap<WeakMember<Node>, Member<AXObject>> m_nodeObjectMapping; |
| + HeapHashMap<AbstractInlineTextBox*, Member<AXObject>> m_inlineTextBoxObjectMapping; |
| +#else |
| HashMap<AXID, RefPtr<AXObject>> m_objects; |
| HashMap<LayoutObject*, AXID> m_layoutObjectMapping; |
| HashMap<Widget*, AXID> m_widgetObjectMapping; |
| HashMap<Node*, AXID> m_nodeObjectMapping; |
| HashMap<AbstractInlineTextBox*, AXID> m_inlineTextBoxObjectMapping; |
|
haraken
2015/05/28 10:48:41
It is a bit unfortunate (and makes it harder to ve
keishi
2015/06/08 06:27:21
Done.
|
| - HashSet<Node*> m_textMarkerNodes; |
| +#endif |
| + WillBeHeapHashSet<RawPtrWillBeWeakMember<Node>> m_textMarkerNodes; |
| int m_modificationCount; |
| HashSet<AXID> m_idsInUse; |
| @@ -225,7 +242,7 @@ private: |
| HashMap<String, OwnPtr<HashSet<AXID>>> m_idToAriaOwnersMapping; |
| Timer<AXObjectCacheImpl> m_notificationPostTimer; |
| - Vector<pair<RefPtr<AXObject>, AXNotification>> m_notificationsToPost; |
| + WillBeHeapVector<pair<RefPtrWillBeMember<AXObject>, AXNotification>> m_notificationsToPost; |
| void notificationPostTimerFired(Timer<AXObjectCacheImpl>*); |
| AXObject* focusedImageMapUIElement(HTMLAreaElement*); |