Title: [169784] trunk/Source/WebCore
Revision
169784
Author
cfleiz...@apple.com
Date
2014-06-10 18:04:06 -0700 (Tue, 10 Jun 2014)

Log Message

AX: iOS: Return the language for attributed text marker queries
https://bugs.webkit.org/show_bug.cgi?id=133682

Reviewed by Mario Sanchez Prada.

Add language to the list of objects being returned for attributed text.

* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(AXAttributeStringSetLanguage):
(AXAttributedStringAppendText):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (169783 => 169784)


--- trunk/Source/WebCore/ChangeLog	2014-06-11 00:06:17 UTC (rev 169783)
+++ trunk/Source/WebCore/ChangeLog	2014-06-11 01:04:06 UTC (rev 169784)
@@ -1,3 +1,16 @@
+2014-06-10  Chris Fleizach  <cfleiz...@apple.com>
+
+        AX: iOS: Return the language for attributed text marker queries
+        https://bugs.webkit.org/show_bug.cgi?id=133682
+
+        Reviewed by Mario Sanchez Prada.
+
+        Add language to the list of objects being returned for attributed text.
+
+        * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
+        (AXAttributeStringSetLanguage):
+        (AXAttributedStringAppendText):
+
 2014-06-10  Dan Bernstein  <m...@apple.com>
 
         WebCore part of [Cocoa] Handling authentication challenges should not require multiple delegate methods

Modified: trunk/Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm (169783 => 169784)


--- trunk/Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm	2014-06-11 00:06:17 UTC (rev 169783)
+++ trunk/Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm	2014-06-11 01:04:06 UTC (rev 169784)
@@ -104,6 +104,7 @@
 static NSString * const UIAccessibilityTokenBold = @"UIAccessibilityTokenBold";
 static NSString * const UIAccessibilityTokenItalic = @"UIAccessibilityTokenItalic";
 static NSString * const UIAccessibilityTokenUnderline = @"UIAccessibilityTokenUnderline";
+static NSString * const UIAccessibilityTokenLanguage = @"UIAccessibilityTokenLanguage";
 
 static AccessibilityObjectWrapper* AccessibilityUnignoredAncestor(AccessibilityObjectWrapper *wrapper)
 {
@@ -1660,6 +1661,19 @@
     return result;
 }
 
+static void AXAttributeStringSetLanguage(NSMutableAttributedString* attrString, RenderObject* renderer, NSRange range)
+{
+    if (!renderer)
+        return;
+    
+    AccessibilityObject* axObject = renderer->document().axObjectCache()->getOrCreate(renderer);
+    NSString *language = axObject->language();
+    if ([language length])
+        [attrString addAttribute:UIAccessibilityTokenLanguage value:language range:range];
+    else
+        [attrString removeAttribute:UIAccessibilityTokenLanguage range:range];
+}
+
 static void AXAttributeStringSetBlockquoteLevel(NSMutableAttributedString* attrString, RenderObject* renderer, NSRange range)
 {
     int quoteLevel = blockquoteLevel(renderer);
@@ -1751,6 +1765,7 @@
     AXAttributeStringSetStyle(attrString, node->renderer(), attrStringRange);
     AXAttributeStringSetHeadingLevel(attrString, node->renderer(), attrStringRange);
     AXAttributeStringSetBlockquoteLevel(attrString, node->renderer(), attrStringRange);    
+    AXAttributeStringSetLanguage(attrString, node->renderer(), attrStringRange);
 }
 
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to