Index: Source/core/accessibility/AccessibilityRenderObject.h |
diff --git a/Source/core/accessibility/AccessibilityRenderObject.h b/Source/core/accessibility/AccessibilityRenderObject.h |
index 839c24c4f99a1a83b5c01e4ba37007e052def8da..1c423ebc9d9229b857355b0884f4f94e8611609a 100644 |
--- a/Source/core/accessibility/AccessibilityRenderObject.h |
+++ b/Source/core/accessibility/AccessibilityRenderObject.h |
@@ -63,8 +63,6 @@ public: |
static PassRefPtr<AccessibilityRenderObject> create(RenderObject*); |
virtual ~AccessibilityRenderObject(); |
- RenderObject* m_renderer; |
- |
// Public, overridden from AccessibilityObject. |
virtual RenderObject* renderer() const { return m_renderer; } |
virtual LayoutRect elementRect() const; |
@@ -83,6 +81,12 @@ public: |
virtual AccessibilityRole determineAccessibilityRole(); |
protected: |
+ RenderObject* m_renderer; |
+ mutable LayoutRect m_cachedElementRect; |
+ mutable LayoutRect m_cachedFrameRect; |
+ mutable IntPoint m_cachedScrollPosition; |
+ mutable bool m_cachedElementRectDirty; |
+ |
// |
// Overridden from AccessibilityObject. |
// |
@@ -140,7 +144,6 @@ protected: |
// Properties of interactive elements. |
virtual const String& actionVerb() const; |
- LayoutRect checkboxOrRadioRect() const; |
virtual void selectedChildren(AccessibilityChildrenVector&); |
virtual String stringValue() const; |
@@ -171,8 +174,10 @@ protected: |
// Accessibility Text - (To be deprecated). |
virtual String helpText() const; |
- // Position and size. |
- virtual LayoutRect boundingBoxRect() const; |
+ // Location and click point in frame-relative coordinates. |
+ virtual void checkCachedElementRect() const; |
+ virtual void updateCachedElementRect() const; |
+ virtual void markCachedElementRectDirty() const; |
virtual IntPoint clickPoint(); |
// Hit testing. |
@@ -272,6 +277,7 @@ private: |
void ariaSelectedRows(AccessibilityChildrenVector&); |
bool elementAttributeValue(const QualifiedName&) const; |
bool inheritsPresentationalRole() const; |
+ LayoutRect computeElementRect() const; |
}; |
inline AccessibilityRenderObject* toAccessibilityRenderObject(AccessibilityObject* object) |