Diff
Modified: trunk/LayoutTests/ChangeLog (206920 => 206921)
--- trunk/LayoutTests/ChangeLog 2016-10-07 17:26:54 UTC (rev 206920)
+++ trunk/LayoutTests/ChangeLog 2016-10-07 17:44:51 UTC (rev 206921)
@@ -1,3 +1,13 @@
+2016-10-07 Nan Wang <n_w...@apple.com>
+
+ AX: AXRoleDescription for details and summary elements
+ https://bugs.webkit.org/show_bug.cgi?id=163094
+
+ Reviewed by Chris Fleizach.
+
+ * accessibility/mac/details-summary-role-description-expected.txt: Added.
+ * accessibility/mac/details-summary-role-description.html: Added.
+
2016-10-07 Ryan Haddad <ryanhad...@apple.com>
Marking imported/blink/storage/indexeddb/blob-valid-after-deletion.html as flaky on mac.
Added: trunk/LayoutTests/accessibility/mac/details-summary-role-description-expected.txt (0 => 206921)
--- trunk/LayoutTests/accessibility/mac/details-summary-role-description-expected.txt (rev 0)
+++ trunk/LayoutTests/accessibility/mac/details-summary-role-description-expected.txt 2016-10-07 17:44:51 UTC (rev 206921)
@@ -0,0 +1,18 @@
+Summary
+some detail
+
+This tests that summary and detail elements have correct role description.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS summary.role is 'AXRole: AXGroup'
+PASS details.role is 'AXRole: AXGroup'
+PASS summary.subrole is 'AXSubrole: AXSummary'
+PASS details.subrole is 'AXSubrole: AXDetails'
+PASS summary.roleDescription is 'AXRoleDescription: summary'
+PASS details.roleDescription is 'AXRoleDescription: details'
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
Added: trunk/LayoutTests/accessibility/mac/details-summary-role-description.html (0 => 206921)
--- trunk/LayoutTests/accessibility/mac/details-summary-role-description.html (rev 0)
+++ trunk/LayoutTests/accessibility/mac/details-summary-role-description.html 2016-10-07 17:44:51 UTC (rev 206921)
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<html>
+<head>
+<script src=""
+</head>
+<body id="body">
+
+<details id="details" open=""><summary id="summary">Summary</summary><p>some detail</p></details>
+
+<p id="description"></p>
+<div id="console"></div>
+
+<script>
+
+ description("This tests that summary and detail elements have correct role description.");
+
+ if (window.accessibilityController) {
+
+ var summary = accessibilityController.accessibleElementById("summary");
+ var details = accessibilityController.accessibleElementById("details");
+
+ shouldBe("summary.role", "'AXRole: AXGroup'");
+ shouldBe("details.role", "'AXRole: AXGroup'");
+ shouldBe("summary.subrole", "'AXSubrole: AXSummary'");
+ shouldBe("details.subrole", "'AXSubrole: AXDetails'");
+ shouldBe("summary.roleDescription", "'AXRoleDescription: summary'");
+ shouldBe("details.roleDescription", "'AXRoleDescription: details'");
+ }
+
+</script>
+
+<script src=""
+</body>
+</html>
Modified: trunk/Source/WebCore/ChangeLog (206920 => 206921)
--- trunk/Source/WebCore/ChangeLog 2016-10-07 17:26:54 UTC (rev 206920)
+++ trunk/Source/WebCore/ChangeLog 2016-10-07 17:44:51 UTC (rev 206921)
@@ -1,3 +1,29 @@
+2016-10-07 Nan Wang <n_w...@apple.com>
+
+ AX: AXRoleDescription for details and summary elements
+ https://bugs.webkit.org/show_bug.cgi?id=163094
+
+ Reviewed by Chris Fleizach.
+
+ details and summary elements should have AXRoleDescription that is consistent with other
+ elements that have custom AXSubRole.
+
+ Test: accessibility/mac/details-summary-role-description.html
+
+ * English.lproj/Localizable.strings:
+ * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
+ (-[WebAccessibilityObjectWrapper roleDescription]):
+ * platform/LocalizedStrings.cpp:
+ (WebCore::AXDetailsText):
+ (WebCore::AXSummaryText):
+ * platform/LocalizedStrings.h:
+ * platform/efl/LocalizedStringsEfl.cpp:
+ (WebCore::AXDetailsText):
+ (WebCore::AXSummaryText):
+ * platform/gtk/LocalizedStringsGtk.cpp:
+ (WebCore::AXDetailsText):
+ (WebCore::AXSummaryText):
+
2016-10-07 Ryan Haddad <ryanhad...@apple.com>
Fix the Windows build after r206917.
Modified: trunk/Source/WebCore/English.lproj/Localizable.strings (206920 => 206921)
--- trunk/Source/WebCore/English.lproj/Localizable.strings 2016-10-07 17:26:54 UTC (rev 206920)
+++ trunk/Source/WebCore/English.lproj/Localizable.strings 2016-10-07 17:44:51 UTC (rev 206921)
@@ -811,6 +811,9 @@
/* accessibility role description of a description list */
"description list" = "description list";
+/* accessibility role description for a details element */
+"details" = "details";
+
/* An ARIA accessibility group that acts as a document. */
"document" = "document";
@@ -1066,6 +1069,9 @@
/* HTTP result code string */
"success" = "success";
+/* accessibility role description for a summary element */
+"summary" = "summary";
+
/* HTTP result code string */
"switching protocols" = "switching protocols";
Modified: trunk/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm (206920 => 206921)
--- trunk/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm 2016-10-07 17:26:54 UTC (rev 206920)
+++ trunk/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm 2016-10-07 17:44:51 UTC (rev 206921)
@@ -2487,8 +2487,12 @@
return AXDescriptionListTermText();
case DescriptionListDetailRole:
return AXDescriptionListDetailText();
+ case DetailsRole:
+ return AXDetailsText();
case FooterRole:
return AXFooterRoleDescriptionText();
+ case SummaryRole:
+ return AXSummaryText();
case VideoRole:
return localizedMediaControlElementString("VideoElement");
default:
Modified: trunk/Source/WebCore/platform/LocalizedStrings.cpp (206920 => 206921)
--- trunk/Source/WebCore/platform/LocalizedStrings.cpp 2016-10-07 17:26:54 UTC (rev 206920)
+++ trunk/Source/WebCore/platform/LocalizedStrings.cpp 2016-10-07 17:44:51 UTC (rev 206921)
@@ -605,6 +605,16 @@
return WEB_UI_STRING("description", "description detail");
}
+String AXDetailsText()
+{
+ return WEB_UI_STRING("details", "accessibility role description for a details element");
+}
+
+String AXSummaryText()
+{
+ return WEB_UI_STRING("summary", "accessibility role description for a summary element");
+}
+
String AXFooterRoleDescriptionText()
{
return WEB_UI_STRING("footer", "accessibility role description for a footer");
Modified: trunk/Source/WebCore/platform/LocalizedStrings.h (206920 => 206921)
--- trunk/Source/WebCore/platform/LocalizedStrings.h 2016-10-07 17:26:54 UTC (rev 206920)
+++ trunk/Source/WebCore/platform/LocalizedStrings.h 2016-10-07 17:44:51 UTC (rev 206921)
@@ -168,6 +168,8 @@
String AXFileUploadButtonText();
String AXSearchFieldCancelButtonText();
String AXAttachmentRoleText();
+ String AXDetailsText();
+ String AXSummaryText();
String AXButtonActionVerb();
String AXRadioButtonActionVerb();
Modified: trunk/Source/WebCore/platform/efl/LocalizedStringsEfl.cpp (206920 => 206921)
--- trunk/Source/WebCore/platform/efl/LocalizedStringsEfl.cpp 2016-10-07 17:26:54 UTC (rev 206920)
+++ trunk/Source/WebCore/platform/efl/LocalizedStringsEfl.cpp 2016-10-07 17:44:51 UTC (rev 206921)
@@ -398,6 +398,16 @@
return String::fromUTF8("description");
}
+String AXDetailsText()
+{
+ return String::fromUTF8("details");
+}
+
+String AXSummaryText()
+{
+ return String::fromUTF8("summary");
+}
+
String AXFooterRoleDescriptionText()
{
return String::fromUTF8("footer");
Modified: trunk/Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp (206920 => 206921)
--- trunk/Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp 2016-10-07 17:26:54 UTC (rev 206920)
+++ trunk/Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp 2016-10-07 17:44:51 UTC (rev 206921)
@@ -446,6 +446,16 @@
return String::fromUTF8(_("description"));
}
+String AXDetailsText()
+{
+ return String::fromUTF8(_("details"));
+}
+
+String AXSummaryText()
+{
+ return String::fromUTF8(_("summary"));
+}
+
String AXFooterRoleDescriptionText()
{
return String::fromUTF8(_("footer"));