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

Side by Side Diff: third_party/WebKit/Source/modules/accessibility/AXLayoutObject.h

Issue 1348503003: One AXObjectCache per frame (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Fix issues in AutomationApiTest.Events Created 5 years, 2 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) 2008 Apple Inc. All rights reserved. 2 * Copyright (C) 2008 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 * 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 25 matching lines...) Expand all
36 36
37 namespace blink { 37 namespace blink {
38 38
39 class AXObjectCacheImpl; 39 class AXObjectCacheImpl;
40 class AXSVGRoot; 40 class AXSVGRoot;
41 class Element; 41 class Element;
42 class FrameView; 42 class FrameView;
43 class HTMLAreaElement; 43 class HTMLAreaElement;
44 class IntPoint; 44 class IntPoint;
45 class Node; 45 class Node;
46 class Widget;
47 46
48 class MODULES_EXPORT AXLayoutObject : public AXNodeObject { 47 class MODULES_EXPORT AXLayoutObject : public AXNodeObject {
49 protected: 48 protected:
50 AXLayoutObject(LayoutObject*, AXObjectCacheImpl&); 49 AXLayoutObject(LayoutObject*, AXObjectCacheImpl&);
51 50
52 public: 51 public:
53 static AXLayoutObject* create(LayoutObject*, AXObjectCacheImpl&); 52 static AXLayoutObject* create(LayoutObject*, AXObjectCacheImpl&);
54 ~AXLayoutObject() override; 53 ~AXLayoutObject() override;
55 54
56 // Public, overridden from AXObject. 55 // Public, overridden from AXObject.
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
179 void clearChildren() override; 178 void clearChildren() override;
180 179
181 // Properties of the object's owning document or page. 180 // Properties of the object's owning document or page.
182 double estimatedLoadingProgress() const override; 181 double estimatedLoadingProgress() const override;
183 182
184 // DOM and layout tree access. 183 // DOM and layout tree access.
185 Node* node() const override; 184 Node* node() const override;
186 Document* document() const override; 185 Document* document() const override;
187 FrameView* documentFrameView() const override; 186 FrameView* documentFrameView() const override;
188 Element* anchorElement() const override; 187 Element* anchorElement() const override;
189 Widget* widgetForAttachmentView() const override;
190 188
191 void setValue(const String&) override; 189 void setValue(const String&) override;
192 190
193 // Notifications that this object may have changed. 191 // Notifications that this object may have changed.
194 void handleActiveDescendantChanged() override; 192 void handleActiveDescendantChanged() override;
195 void handleAriaExpandedChanged() override; 193 void handleAriaExpandedChanged() override;
196 void textChanged() override; 194 void textChanged() override;
197 195
198 // Text metrics. Most of these should be deprecated, needs major cleanup. 196 // Text metrics. Most of these should be deprecated, needs major cleanup.
199 int index(const VisiblePosition&) const override; 197 int index(const VisiblePosition&) const override;
(...skipping 10 matching lines...) Expand all
210 LayoutObject* layoutParentObject() const; 208 LayoutObject* layoutParentObject() const;
211 bool isSVGImage() const; 209 bool isSVGImage() const;
212 void detachRemoteSVGRoot(); 210 void detachRemoteSVGRoot();
213 AXSVGRoot* remoteSVGRootElement() const; 211 AXSVGRoot* remoteSVGRootElement() const;
214 AXObject* remoteSVGElementHitTest(const IntPoint&) const; 212 AXObject* remoteSVGElementHitTest(const IntPoint&) const;
215 void offsetBoundingBoxForRemoteSVGElement(LayoutRect&) const; 213 void offsetBoundingBoxForRemoteSVGElement(LayoutRect&) const;
216 void addHiddenChildren(); 214 void addHiddenChildren();
217 void addTextFieldChildren(); 215 void addTextFieldChildren();
218 void addImageMapChildren(); 216 void addImageMapChildren();
219 void addCanvasChildren(); 217 void addCanvasChildren();
220 void addAttachmentChildren();
221 void addPopupChildren(); 218 void addPopupChildren();
222 void addRemoteSVGChildren(); 219 void addRemoteSVGChildren();
223 void addInlineTextBoxChildren(bool force); 220 void addInlineTextBoxChildren(bool force);
224 221
225 void ariaSelectedRows(AccessibilityChildrenVector&); 222 void ariaSelectedRows(AccessibilityChildrenVector&);
226 bool elementAttributeValue(const QualifiedName&) const; 223 bool elementAttributeValue(const QualifiedName&) const;
227 LayoutRect computeElementRect() const; 224 LayoutRect computeElementRect() const;
228 AXRange textControlSelection() const; 225 AXRange textControlSelection() const;
229 int indexForVisiblePosition(const VisiblePosition&) const; 226 int indexForVisiblePosition(const VisiblePosition&) const;
230 AXLayoutObject* getUnignoredObjectFromNode(Node&) const; 227 AXLayoutObject* getUnignoredObjectFromNode(Node&) const;
231 }; 228 };
232 229
233 DEFINE_AX_OBJECT_TYPE_CASTS(AXLayoutObject, isAXLayoutObject()); 230 DEFINE_AX_OBJECT_TYPE_CASTS(AXLayoutObject, isAXLayoutObject());
234 231
235 } // namespace blink 232 } // namespace blink
236 233
237 #endif // AXLayoutObject_h 234 #endif // AXLayoutObject_h
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/page/Page.cpp ('k') | third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698