Index: Source/core/accessibility/AccessibilityObject.cpp |
diff --git a/Source/core/accessibility/AccessibilityObject.cpp b/Source/core/accessibility/AccessibilityObject.cpp |
index 89f493bcabf888e4dce21bd512383207f5322f1c..eb9bfe2143cd70bded08dc9e319666e570ade184 100644 |
--- a/Source/core/accessibility/AccessibilityObject.cpp |
+++ b/Source/core/accessibility/AccessibilityObject.cpp |
@@ -570,6 +570,12 @@ bool AccessibilityObject::isInsideARIALiveRegion() const |
return false; |
} |
+void AccessibilityObject::markCachedElementRectDirty() const |
+{ |
+ for (unsigned i = 0; i < m_children.size(); ++i) |
+ m_children[i].get()->markCachedElementRectDirty(); |
+} |
+ |
IntPoint AccessibilityObject::clickPoint() |
{ |
LayoutRect rect = elementRect(); |
@@ -787,7 +793,7 @@ bool AccessibilityObject::press() const |
void AccessibilityObject::scrollToMakeVisible() const |
{ |
- IntRect objectRect = pixelSnappedIntRect(boundingBoxRect()); |
+ IntRect objectRect = pixelSnappedIntRect(elementRect()); |
objectRect.setLocation(IntPoint()); |
scrollToMakeVisibleWithSubFocus(objectRect); |
} |
@@ -875,7 +881,7 @@ void AccessibilityObject::scrollToMakeVisibleWithSubFocus(const IntRect& subfocu |
if (!scrollableArea) |
return; |
- LayoutRect objectRect = boundingBoxRect(); |
+ LayoutRect objectRect = elementRect(); |
IntPoint scrollPosition = scrollableArea->scrollPosition(); |
IntRect scrollVisibleRect = scrollableArea->visibleContentRect(); |
@@ -920,7 +926,7 @@ void AccessibilityObject::scrollToGlobalPoint(const IntPoint& globalPoint) const |
ScrollableArea* scrollableArea = outer->getScrollableAreaIfScrollable(); |
- LayoutRect innerRect = inner->isAccessibilityScrollView() ? inner->parentObject()->boundingBoxRect() : inner->boundingBoxRect(); |
+ LayoutRect innerRect = inner->isAccessibilityScrollView() ? inner->parentObject()->elementRect() : inner->elementRect(); |
LayoutRect objectRect = innerRect; |
IntPoint scrollPosition = scrollableArea->scrollPosition(); |