From cfd86b747d32ac22246a1aa908eaa720c63a88c1 Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Wed, 7 Nov 2012 11:22:47 +0100 Subject: Imported WebKit commit 20271caf2e2c016d5cef40184cddeefeac4f1876 (http://svn.webkit.org/repository/webkit/trunk@133733) New snapshot that contains all previous fixes as well as build fix for latest QtMultimedia API changes. --- .../WebCore/accessibility/AccessibilityObject.cpp | 24 +++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) (limited to 'Source/WebCore/accessibility/AccessibilityObject.cpp') diff --git a/Source/WebCore/accessibility/AccessibilityObject.cpp b/Source/WebCore/accessibility/AccessibilityObject.cpp index ed071e216..e675be2f3 100644 --- a/Source/WebCore/accessibility/AccessibilityObject.cpp +++ b/Source/WebCore/accessibility/AccessibilityObject.cpp @@ -72,6 +72,7 @@ AccessibilityObject::AccessibilityObject() : m_id(0) , m_haveChildren(false) , m_role(UnknownRole) + , m_cachedIsIgnoredValue(DefaultBehavior) #if PLATFORM(GTK) , m_wrapper(0) #elif PLATFORM(CHROMIUM) @@ -1417,7 +1418,6 @@ static ARIARoleMap* createARIARoleMap() { "radiogroup", RadioGroupRole }, { "region", DocumentRegionRole }, { "row", RowRole }, - { "range", SliderRole }, { "scrollbar", ScrollBarRole }, { "search", LandmarkSearchRole }, { "separator", SplitterRole }, @@ -1771,6 +1771,28 @@ void AccessibilityObject::scrollToGlobalPoint(const IntPoint& globalPoint) const } } +bool AccessibilityObject::cachedIsIgnoredValue() +{ + if (m_cachedIsIgnoredValue == DefaultBehavior) + m_cachedIsIgnoredValue = accessibilityIsIgnored() ? IgnoreObject : IncludeObject; + + return m_cachedIsIgnoredValue == IgnoreObject; +} + +void AccessibilityObject::setCachedIsIgnoredValue(bool isIgnored) +{ + m_cachedIsIgnoredValue = isIgnored ? IgnoreObject : IncludeObject; +} + +void AccessibilityObject::notifyIfIgnoredValueChanged() +{ + bool isIgnored = accessibilityIsIgnored(); + if (cachedIsIgnoredValue() != isIgnored) { + axObjectCache()->childrenChanged(parentObject()); + setCachedIsIgnoredValue(isIgnored); + } +} + bool AccessibilityObject::ariaPressedIsPresent() const { return !getAttribute(aria_pressedAttr).isEmpty(); -- cgit v1.2.1