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

Side by Side Diff: Source/modules/accessibility/AXNodeObject.h

Issue 1072273006: Oilpan: Prepare moving AXObject to heap (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 5 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2012, Google Inc. All rights reserved. 2 * Copyright (C) 2012, Google 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 * 7 *
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 28 matching lines...) Expand all
39 class Element; 39 class Element;
40 class HTMLLabelElement; 40 class HTMLLabelElement;
41 class LayoutRect; 41 class LayoutRect;
42 class Node; 42 class Node;
43 43
44 class MODULES_EXPORT AXNodeObject : public AXObject { 44 class MODULES_EXPORT AXNodeObject : public AXObject {
45 protected: 45 protected:
46 AXNodeObject(Node*, AXObjectCacheImpl*); 46 AXNodeObject(Node*, AXObjectCacheImpl*);
47 47
48 public: 48 public:
49 static PassRefPtr<AXNodeObject> create(Node*, AXObjectCacheImpl*); 49 static PassRefPtrWillBeRawPtr<AXNodeObject> create(Node*, AXObjectCacheImpl* );
50 virtual ~AXNodeObject(); 50 virtual ~AXNodeObject();
51 DECLARE_VIRTUAL_TRACE();
51 52
52 protected: 53 protected:
53 // Protected data. 54 // Protected data.
54 AccessibilityRole m_ariaRole; 55 AccessibilityRole m_ariaRole;
55 bool m_childrenDirty; 56 bool m_childrenDirty;
56 #if ENABLE(ASSERT) 57 #if ENABLE(ASSERT)
57 bool m_initialized; 58 bool m_initialized;
58 #endif 59 #endif
59 60
60 virtual bool computeAccessibilityIsIgnored(IgnoredReasons* = nullptr) const override; 61 virtual bool computeAccessibilityIsIgnored(IgnoredReasons* = nullptr) const override;
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
196 virtual void childrenChanged() override; 197 virtual void childrenChanged() override;
197 virtual void selectionChanged() override final; 198 virtual void selectionChanged() override final;
198 virtual void textChanged() override; 199 virtual void textChanged() override;
199 virtual void updateAccessibilityRole() override final; 200 virtual void updateAccessibilityRole() override final;
200 201
201 // Position in set and Size of set 202 // Position in set and Size of set
202 virtual int posInSet() const override; 203 virtual int posInSet() const override;
203 virtual int setSize() const override; 204 virtual int setSize() const override;
204 205
205 private: 206 private:
206 Node* m_node; 207 RawPtrWillBeWeakMember<Node> m_node;
dmazzoni 2015/04/28 06:53:25 So this is safe from use-after-free, but I think i
keishi 2015/05/28 06:49:19 Like I answered in my reply for the m_nodeObjectMa
207 208
208 String alternativeTextForWebArea() const; 209 String alternativeTextForWebArea() const;
209 void alternativeText(Vector<AccessibilityText>&) const; 210 void alternativeText(WillBeHeapVector<OwnPtrWillBeMember<AccessibilityText>> &) const;
210 void ariaLabeledByText(Vector<AccessibilityText>&) const; 211 void ariaLabeledByText(WillBeHeapVector<OwnPtrWillBeMember<AccessibilityText >>&) const;
211 float stepValueForRange() const; 212 float stepValueForRange() const;
212 AXObject* findChildWithTagName(const HTMLQualifiedName&) const; 213 AXObject* findChildWithTagName(const HTMLQualifiedName&) const;
213 bool isDescendantOfElementType(const HTMLQualifiedName& tagName) const; 214 bool isDescendantOfElementType(const HTMLQualifiedName& tagName) const;
214 }; 215 };
215 216
216 DEFINE_AX_OBJECT_TYPE_CASTS(AXNodeObject, isAXNodeObject()); 217 DEFINE_AX_OBJECT_TYPE_CASTS(AXNodeObject, isAXNodeObject());
217 218
218 } // namespace blink 219 } // namespace blink
219 220
220 #endif // AXNodeObject_h 221 #endif // AXNodeObject_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698