summaryrefslogtreecommitdiffstats
path: root/WebCore/accessibility/AccessibilityRenderObject.cpp
diff options
context:
space:
mode:
authorKristian Monsen <kristianm@google.com>2010-09-08 12:18:00 +0100
committerKristian Monsen <kristianm@google.com>2010-09-11 12:08:58 +0100
commit5ddde30071f639962dd557c453f2ad01f8f0fd00 (patch)
tree775803c4ab35af50aa5f5472cd1fb95fe9d5152d /WebCore/accessibility/AccessibilityRenderObject.cpp
parent3e63d9b33b753ca86d0765d1b3d711114ba9e34f (diff)
downloadexternal_webkit-5ddde30071f639962dd557c453f2ad01f8f0fd00.zip
external_webkit-5ddde30071f639962dd557c453f2ad01f8f0fd00.tar.gz
external_webkit-5ddde30071f639962dd557c453f2ad01f8f0fd00.tar.bz2
Merge WebKit at r66666 : Initial merge by git.
Change-Id: I57dedeb49859adc9c539e760f0e749768c66626f
Diffstat (limited to 'WebCore/accessibility/AccessibilityRenderObject.cpp')
-rw-r--r--WebCore/accessibility/AccessibilityRenderObject.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/WebCore/accessibility/AccessibilityRenderObject.cpp b/WebCore/accessibility/AccessibilityRenderObject.cpp
index 92c57c6..e292971 100644
--- a/WebCore/accessibility/AccessibilityRenderObject.cpp
+++ b/WebCore/accessibility/AccessibilityRenderObject.cpp
@@ -3239,6 +3239,8 @@ void AccessibilityRenderObject::childrenChanged()
if (!m_renderer)
return;
+ bool sentChildrenChanged = false;
+
// Go up the accessibility parent chain, but only if the element already exists. This method is
// called during render layouts, minimal work should be done.
// If AX elements are created now, they could interrogate the render tree while it's in a funky state.
@@ -3248,6 +3250,13 @@ void AccessibilityRenderObject::childrenChanged()
continue;
AccessibilityRenderObject* axParent = static_cast<AccessibilityRenderObject*>(parent);
+
+ // Send the children changed notification on the first accessibility render object ancestor.
+ if (!sentChildrenChanged) {
+ axObjectCache()->postNotification(axParent->renderer(), AXObjectCache::AXChildrenChanged, true);
+ sentChildrenChanged = true;
+ }
+
// Only do work if the children haven't been marked dirty. This has the effect of blocking
// future live region change notifications until the AX tree has been accessed again. This
// is a good performance win for all parties.