Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(531)

Side by Side Diff: Source/core/accessibility/AXObjectCache.h

Issue 235113002: Oilpan: Remove guardRef and guardDeref from TreeScope. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Address comments. Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | Source/core/accessibility/AXObjectCache.cpp » ('j') | Source/core/dom/Document.h » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2003, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved. 2 * Copyright (C) 2003, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
101 AXObject* get(Widget*); 101 AXObject* get(Widget*);
102 AXObject* get(Node*); 102 AXObject* get(Node*);
103 AXObject* get(AbstractInlineTextBox*); 103 AXObject* get(AbstractInlineTextBox*);
104 104
105 void remove(RenderObject*); 105 void remove(RenderObject*);
106 void remove(Node*); 106 void remove(Node*);
107 void remove(Widget*); 107 void remove(Widget*);
108 void remove(AbstractInlineTextBox*); 108 void remove(AbstractInlineTextBox*);
109 void remove(AXID); 109 void remove(AXID);
110 110
111 void clearWeakMembers(Visitor*);
112
111 void detachWrapper(AXObject*); 113 void detachWrapper(AXObject*);
112 void attachWrapper(AXObject*); 114 void attachWrapper(AXObject*);
113 void childrenChanged(Node*); 115 void childrenChanged(Node*);
114 void childrenChanged(RenderObject*); 116 void childrenChanged(RenderObject*);
115 void childrenChanged(AXObject*); 117 void childrenChanged(AXObject*);
116 void checkedStateChanged(Node*); 118 void checkedStateChanged(Node*);
117 void selectedChildrenChanged(Node*); 119 void selectedChildrenChanged(Node*);
118 void selectedChildrenChanged(RenderObject*); 120 void selectedChildrenChanged(RenderObject*);
119 void selectionChanged(Node*); 121 void selectionChanged(Node*);
120 // Called by a node when text or a text equivalent (e.g. alt) attribute is c hanged. 122 // Called by a node when text or a text equivalent (e.g. alt) attribute is c hanged.
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
201 void postPlatformNotification(AXObject*, AXNotification); 203 void postPlatformNotification(AXObject*, AXNotification);
202 void textChanged(AXObject*); 204 void textChanged(AXObject*);
203 void labelChanged(Element*); 205 void labelChanged(Element*);
204 206
205 // This is a weak reference cache for knowing if Nodes used by TextMarkers a re valid. 207 // This is a weak reference cache for knowing if Nodes used by TextMarkers a re valid.
206 void setNodeInUse(Node* n) { m_textMarkerNodes.add(n); } 208 void setNodeInUse(Node* n) { m_textMarkerNodes.add(n); }
207 void removeNodeForUse(Node* n) { m_textMarkerNodes.remove(n); } 209 void removeNodeForUse(Node* n) { m_textMarkerNodes.remove(n); }
208 bool isNodeInUse(Node* n) { return m_textMarkerNodes.contains(n); } 210 bool isNodeInUse(Node* n) { return m_textMarkerNodes.contains(n); }
209 211
210 private: 212 private:
211 Document& m_document; 213 Document& m_document;
haraken 2014/04/25 05:21:42 Now that Document is on-heap and can outlive AXObj
Mads Ager (chromium) 2014/04/25 10:58:25 The AXObjectCache has not been moved to the heap y
212 HashMap<AXID, RefPtr<AXObject> > m_objects; 214 HashMap<AXID, RefPtr<AXObject> > m_objects;
213 HashMap<RenderObject*, AXID> m_renderObjectMapping; 215 HashMap<RenderObject*, AXID> m_renderObjectMapping;
214 HashMap<Widget*, AXID> m_widgetObjectMapping; 216 HashMap<Widget*, AXID> m_widgetObjectMapping;
215 HashMap<Node*, AXID> m_nodeObjectMapping; 217 HashMap<Node*, AXID> m_nodeObjectMapping;
216 HashMap<AbstractInlineTextBox*, AXID> m_inlineTextBoxObjectMapping; 218 HashMap<AbstractInlineTextBox*, AXID> m_inlineTextBoxObjectMapping;
217 HashSet<Node*> m_textMarkerNodes; 219 HashSet<Node*> m_textMarkerNodes;
218 OwnPtr<AXComputedObjectAttributeCache> m_computedObjectAttributeCache; 220 OwnPtr<AXComputedObjectAttributeCache> m_computedObjectAttributeCache;
219 static bool gAccessibilityEnabled; 221 static bool gAccessibilityEnabled;
220 static bool gInlineTextBoxAccessibility; 222 static bool gInlineTextBoxAccessibility;
221 223
222 HashSet<AXID> m_idsInUse; 224 HashSet<AXID> m_idsInUse;
223 225
224 Timer<AXObjectCache> m_notificationPostTimer; 226 Timer<AXObjectCache> m_notificationPostTimer;
225 Vector<pair<RefPtr<AXObject>, AXNotification> > m_notificationsToPost; 227 Vector<pair<RefPtr<AXObject>, AXNotification> > m_notificationsToPost;
226 void notificationPostTimerFired(Timer<AXObjectCache>*); 228 void notificationPostTimerFired(Timer<AXObjectCache>*);
227 229
228 static AXObject* focusedImageMapUIElement(HTMLAreaElement*); 230 static AXObject* focusedImageMapUIElement(HTMLAreaElement*);
229 231
230 AXID getAXID(AXObject*); 232 AXID getAXID(AXObject*);
231 }; 233 };
232 234
233 bool nodeHasRole(Node*, const String& role); 235 bool nodeHasRole(Node*, const String& role);
234 // This will let you know if aria-hidden was explicitly set to false. 236 // This will let you know if aria-hidden was explicitly set to false.
235 bool isNodeAriaVisible(Node*); 237 bool isNodeAriaVisible(Node*);
236 238
237 } 239 }
238 240
239 #endif 241 #endif
OLDNEW
« no previous file with comments | « no previous file | Source/core/accessibility/AXObjectCache.cpp » ('j') | Source/core/dom/Document.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698