[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.22-985-g3c00f00
eric at webkit.org
eric at webkit.org
Wed Mar 17 18:25:18 UTC 2010
The following commit has been merged in the webkit-1.1 branch:
commit eedeb04b7225a4f02c52a58c38bb913b2f3a078f
Author: eric at webkit.org <eric at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Sat Mar 6 06:45:32 2010 +0000
2010-03-05 Chris Fleizach <cfleizach at apple.com>
Reviewed by Eric Seidel.
WAI-ARIA live region doesn't appear when <div> only has a <div> child
https://bugs.webkit.org/show_bug.cgi?id=35751
* platform/mac/accessibility/div-containing-div-with-aria-expected.txt: Added.
* platform/mac/accessibility/div-containing-div-with-aria.html: Added.
2010-03-05 Chris Fleizach <cfleizach at apple.com>
Reviewed by Eric Seidel.
WAI-ARIA live region doesn't appear when <div> only has a <div> child
https://bugs.webkit.org/show_bug.cgi?id=35751
Elements should not be ignored if they carry ARIA attributes in them.
Test: platform/mac/accessibility/div-containing-div-with-aria.html
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::supportsARIAAttributes):
* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::supportsARIADropping):
(WebCore::AccessibilityObject::supportsARIADragging):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::supportsARIADropping):
(WebCore::AccessibilityRenderObject::supportsARIADragging):
(WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
* accessibility/AccessibilityRenderObject.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55611 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index e9ff37b..370781b 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,13 @@
+2010-03-05 Chris Fleizach <cfleizach at apple.com>
+
+ Reviewed by Eric Seidel.
+
+ WAI-ARIA live region doesn't appear when <div> only has a <div> child
+ https://bugs.webkit.org/show_bug.cgi?id=35751
+
+ * platform/mac/accessibility/div-containing-div-with-aria-expected.txt: Added.
+ * platform/mac/accessibility/div-containing-div-with-aria.html: Added.
+
2010-03-05 Dmitry Titov <dimich at chromium.org>
Reviewed by David Levin.
diff --git a/LayoutTests/platform/mac/accessibility/div-containing-div-with-aria-expected.txt b/LayoutTests/platform/mac/accessibility/div-containing-div-with-aria-expected.txt
new file mode 100644
index 0000000..18dde13
--- /dev/null
+++ b/LayoutTests/platform/mac/accessibility/div-containing-div-with-aria-expected.txt
@@ -0,0 +1,13 @@
+0
+This tests that any element that has ARIA attributes is not ignored
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS outerDiv.description is 'AXDescription: test'
+PASS outerDiv.childAtIndex(0).role is 'AXRole: AXGroup'
+PASS outerDiv.childAtIndex(0).childAtIndex(0).role is 'AXRole: AXStaticText'
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
diff --git a/LayoutTests/platform/mac/accessibility/div-containing-div-with-aria.html b/LayoutTests/platform/mac/accessibility/div-containing-div-with-aria.html
new file mode 100644
index 0000000..f4f2ccf
--- /dev/null
+++ b/LayoutTests/platform/mac/accessibility/div-containing-div-with-aria.html
@@ -0,0 +1,38 @@
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<html>
+<head>
+<link rel="stylesheet" href="../../../fast/js/resources/js-test-style.css">
+<script>
+var successfullyParsed = false;
+</script>
+<script src="../../../fast/js/resources/js-test-pre.js"></script>
+</head>
+<body id="body">
+
+<div id="outer" aria-live="polite" aria-relevant="text" tabindex=0 aria-label="test">
+ <div id="display" class="LCD">0</div>
+</div>
+
+
+<p id="description"></p>
+<div id="console"></div>
+
+<script>
+
+ description("This tests that any element that has ARIA attributes is not ignored");
+
+ if (window.accessibilityController) {
+
+ document.getElementById("outer").focus();
+ var outerDiv = accessibilityController.focusedElement;
+ shouldBe("outerDiv.description", "'AXDescription: test'");
+ shouldBe("outerDiv.childAtIndex(0).role", "'AXRole: AXGroup'");
+ shouldBe("outerDiv.childAtIndex(0).childAtIndex(0).role", "'AXRole: AXStaticText'");
+ }
+
+ successfullyParsed = true;
+</script>
+
+<script src="../../../fast/js/resources/js-test-post.js"></script>
+</body>
+</html>
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 63f2e8d..5df3bf7 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,25 @@
+2010-03-05 Chris Fleizach <cfleizach at apple.com>
+
+ Reviewed by Eric Seidel.
+
+ WAI-ARIA live region doesn't appear when <div> only has a <div> child
+ https://bugs.webkit.org/show_bug.cgi?id=35751
+
+ Elements should not be ignored if they carry ARIA attributes in them.
+
+ Test: platform/mac/accessibility/div-containing-div-with-aria.html
+
+ * accessibility/AccessibilityObject.cpp:
+ (WebCore::AccessibilityObject::supportsARIAAttributes):
+ * accessibility/AccessibilityObject.h:
+ (WebCore::AccessibilityObject::supportsARIADropping):
+ (WebCore::AccessibilityObject::supportsARIADragging):
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::supportsARIADropping):
+ (WebCore::AccessibilityRenderObject::supportsARIADragging):
+ (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
+ * accessibility/AccessibilityRenderObject.h:
+
2010-03-05 Dmitry Titov <dimich at chromium.org>
Reviewed by Oliver Hunt.
diff --git a/WebCore/accessibility/AccessibilityObject.cpp b/WebCore/accessibility/AccessibilityObject.cpp
index 85538da..998a050 100644
--- a/WebCore/accessibility/AccessibilityObject.cpp
+++ b/WebCore/accessibility/AccessibilityObject.cpp
@@ -961,6 +961,11 @@ bool AccessibilityObject::isInsideARIALiveRegion() const
return false;
}
+bool AccessibilityObject::supportsARIAAttributes() const
+{
+ return supportsARIALiveRegion() || supportsARIADragging() || supportsARIADropping() || supportsARIAFlowTo() || supportsARIAOwns();
+}
+
bool AccessibilityObject::supportsARIALiveRegion() const
{
const AtomicString& liveRegion = ariaLiveRegionStatus();
diff --git a/WebCore/accessibility/AccessibilityObject.h b/WebCore/accessibility/AccessibilityObject.h
index 231b711..75d88de 100644
--- a/WebCore/accessibility/AccessibilityObject.h
+++ b/WebCore/accessibility/AccessibilityObject.h
@@ -347,8 +347,8 @@ public:
virtual void ariaFlowToElements(AccessibilityChildrenVector&) const { }
// ARIA drag and drop
- virtual bool supportsARIADropping() { return false; }
- virtual bool supportsARIADragging() { return false; }
+ virtual bool supportsARIADropping() const { return false; }
+ virtual bool supportsARIADragging() const { return false; }
virtual bool isARIAGrabbed() { return false; }
virtual void setARIAGrabbed(bool) { }
virtual void determineARIADropEffects(Vector<String>&) { }
@@ -519,6 +519,8 @@ public:
virtual bool ariaLiveRegionAtomic() const { return false; }
virtual bool ariaLiveRegionBusy() const { return false; }
+ bool supportsARIAAttributes() const;
+
#if HAVE(ACCESSIBILITY)
#if PLATFORM(GTK)
AccessibilityObjectWrapper* wrapper() const;
diff --git a/WebCore/accessibility/AccessibilityRenderObject.cpp b/WebCore/accessibility/AccessibilityRenderObject.cpp
index 613aaab..a8ac3af 100644
--- a/WebCore/accessibility/AccessibilityRenderObject.cpp
+++ b/WebCore/accessibility/AccessibilityRenderObject.cpp
@@ -1341,13 +1341,13 @@ void AccessibilityRenderObject::ariaFlowToElements(AccessibilityChildrenVector&
}
-bool AccessibilityRenderObject::supportsARIADropping()
+bool AccessibilityRenderObject::supportsARIADropping() const
{
const AtomicString& dropEffect = getAttribute(aria_dropeffectAttr).string();
return !dropEffect.isEmpty();
}
-bool AccessibilityRenderObject::supportsARIADragging()
+bool AccessibilityRenderObject::supportsARIADragging() const
{
const AtomicString& grabbed = getAttribute(aria_grabbedAttr).string();
return equalIgnoringCase(grabbed, "true") || equalIgnoringCase(grabbed, "false");
@@ -1549,6 +1549,10 @@ bool AccessibilityRenderObject::accessibilityIsIgnored() const
return false;
}
+ // if this element has aria attributes on it, it should not be ignored.
+ if (supportsARIAAttributes())
+ return false;
+
if (m_renderer->isBlockFlow() && m_renderer->childrenInline())
return !toRenderBlock(m_renderer)->firstLineBox() && !mouseButtonListener();
diff --git a/WebCore/accessibility/AccessibilityRenderObject.h b/WebCore/accessibility/AccessibilityRenderObject.h
index f76ba2a..a6e4c8a 100644
--- a/WebCore/accessibility/AccessibilityRenderObject.h
+++ b/WebCore/accessibility/AccessibilityRenderObject.h
@@ -227,8 +227,8 @@ public:
virtual bool supportsARIAFlowTo() const;
virtual void ariaFlowToElements(AccessibilityChildrenVector&) const;
- virtual bool supportsARIADropping();
- virtual bool supportsARIADragging();
+ virtual bool supportsARIADropping() const;
+ virtual bool supportsARIADragging() const;
virtual bool isARIAGrabbed();
virtual void setARIAGrabbed(bool);
virtual void determineARIADropEffects(Vector<String>&);
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list