Title: [144690] trunk/Source/WebCore
Revision
144690
Author
cfleiz...@apple.com
Date
2013-03-04 15:45:59 -0800 (Mon, 04 Mar 2013)

Log Message

AX: user agent shadow roots for plugins should be 'accessible'
https://bugs.webkit.org/show_bug.cgi?id=111339

Reviewed by Tim Horton.

If a plugin element uses a user agent shadow element, we should make that shadow element
into a button with the title and subtitle put together, and use that as the label. This
will probably be the best accessibility experience.

* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (144689 => 144690)


--- trunk/Source/WebCore/ChangeLog	2013-03-04 23:45:05 UTC (rev 144689)
+++ trunk/Source/WebCore/ChangeLog	2013-03-04 23:45:59 UTC (rev 144690)
@@ -1,3 +1,17 @@
+2013-03-04  Chris Fleizach  <cfleiz...@apple.com>
+
+        AX: user agent shadow roots for plugins should be 'accessible'
+        https://bugs.webkit.org/show_bug.cgi?id=111339
+
+        Reviewed by Tim Horton.
+
+        If a plugin element uses a user agent shadow element, we should make that shadow element
+        into a button with the title and subtitle put together, and use that as the label. This 
+        will probably be the best accessibility experience.
+
+        * html/HTMLPlugInImageElement.cpp:
+        (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):
+
 2013-03-04  Alok Priyadarshi  <al...@chromium.org>
 
         [chromium] Form controls on composited layers are not painted properly

Modified: trunk/Source/WebCore/html/HTMLPlugInImageElement.cpp (144689 => 144690)


--- trunk/Source/WebCore/html/HTMLPlugInImageElement.cpp	2013-03-04 23:45:05 UTC (rev 144689)
+++ trunk/Source/WebCore/html/HTMLPlugInImageElement.cpp	2013-03-04 23:45:59 UTC (rev 144690)
@@ -368,6 +368,14 @@
 
     container->appendChild(label, ASSERT_NO_EXCEPTION);
 
+    // Make this into a button for accessibility clients.
+    String combinedText = titleText;
+    if (!combinedText.isEmpty() && !subtitleText.isEmpty())
+        combinedText.append(" ");
+    combinedText.append(subtitleText);
+    container->setAttribute(aria_labelAttr, combinedText);
+    container->setAttribute(roleAttr, "button");
+    
     shadowContainer->appendChild(container, ASSERT_NO_EXCEPTION);
     root->appendChild(shadowContainer, ASSERT_NO_EXCEPTION);
 }
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to