[SCM] WebKit Debian packaging branch, webkit-1.2, updated. upstream/1.1.90-6072-g9a69373
mjs at apple.com
mjs at apple.com
Thu Apr 8 01:11:41 UTC 2010
The following commit has been merged in the webkit-1.2 branch:
commit c60cf6c3af3a4f3c99ab6f4fcfb3fd452ba0e102
Author: mjs at apple.com <mjs at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Mon Jan 18 02:47:00 2010 +0000
2010-01-17 Maciej Stachowiak <mjs at apple.com>
Reviewed by Dan Bernstein.
Avoid slow access to AX objects on attribute access when AX is off
https://bugs.webkit.org/show_bug.cgi?id=33779
~4% Dromaeo attributes test speedup
* dom/Element.cpp:
(WebCore::Element::updateAfterAttributeChanged): Don't do expensive lookup of
AX object cache unless accessibility is on and an AX-related attribute is
changed.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@53384 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 7bdf1dd..fad5743 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,17 @@
+2010-01-17 Maciej Stachowiak <mjs at apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Avoid slow access to AX objects on attribute access when AX is off
+ https://bugs.webkit.org/show_bug.cgi?id=33779
+
+ ~4% Dromaeo attributes test speedup
+
+ * dom/Element.cpp:
+ (WebCore::Element::updateAfterAttributeChanged): Don't do expensive lookup of
+ AX object cache unless accessibility is on and an AX-related attribute is
+ changed.
+
2010-01-17 Kevin Watters <kevinwatters at gmail.com>
Reviewed by Kevin Ollivier.
diff --git a/WebCore/dom/Element.cpp b/WebCore/dom/Element.cpp
index a7e017f..ddc0e09 100644
--- a/WebCore/dom/Element.cpp
+++ b/WebCore/dom/Element.cpp
@@ -593,23 +593,22 @@ void Element::attributeChanged(Attribute* attr, bool)
void Element::updateAfterAttributeChanged(Attribute* attr)
{
- AXObjectCache* axObjectCache = document()->axObjectCache();
- if (!axObjectCache->accessibilityEnabled())
+ if (!AXObjectCache::accessibilityEnabled())
return;
const QualifiedName& attrName = attr->name();
if (attrName == aria_activedescendantAttr) {
// any change to aria-activedescendant attribute triggers accessibility focus change, but document focus remains intact
- axObjectCache->handleActiveDescendantChanged(renderer());
+ document()->axObjectCache()->handleActiveDescendantChanged(renderer());
} else if (attrName == roleAttr) {
// the role attribute can change at any time, and the AccessibilityObject must pick up these changes
- axObjectCache->handleAriaRoleChanged(renderer());
+ document()->axObjectCache()->handleAriaRoleChanged(renderer());
} else if (attrName == aria_valuenowAttr) {
// If the valuenow attribute changes, AX clients need to be notified.
- axObjectCache->postNotification(renderer(), AXObjectCache::AXValueChanged, true);
+ document()->axObjectCache()->postNotification(renderer(), AXObjectCache::AXValueChanged, true);
} else if (attrName == aria_labelAttr || attrName == aria_labeledbyAttr || attrName == altAttr || attrName == titleAttr) {
// If the content of an element changes due to an attribute change, notify accessibility.
- axObjectCache->contentChanged(renderer());
+ document()->axObjectCache()->contentChanged(renderer());
}
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list