- fixed <rdar://problem/3508798>: ACCESSIBILITY: role/description/value strin...
authorsullivan <sullivan@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 22 Dec 2003 22:30:01 +0000 (22:30 +0000)
committersullivan <sullivan@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 22 Dec 2003 22:30:01 +0000 (22:30 +0000)
        Reviewed by Darin.

        * kwq/KWQAccObject.mm:
        (-[KWQAccObject roleDescription]):
        provide not-yet-localized strings for all the role descriptions that this class uses.
        (-[KWQAccObject value]):
        return nil string rather than dummy string for the cases where we don't have a value attribute.
        (-[KWQAccObject accessibilityActionDescription:]):
        changed comment passed to UI_STRING bogus macro so it won't have to change if/when macro
        loses its bogosity

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5847 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebCore/ChangeLog-2005-08-23
WebCore/kwq/KWQAccObject.mm

index 28d41bbd068857691a2f71cc10fc1abdcc2f5084..a53cd8bea656d808d91a4306367b8b042064e7f7 100644 (file)
@@ -1,3 +1,18 @@
+2003-12-22  John Sullivan  <sullivan@apple.com>
+
+        - fixed <rdar://problem/3508798>: ACCESSIBILITY: role/description/value strings not defined
+
+        Reviewed by Darin.
+
+        * kwq/KWQAccObject.mm:
+        (-[KWQAccObject roleDescription]):
+        provide not-yet-localized strings for all the role descriptions that this class uses.
+        (-[KWQAccObject value]):
+        return nil string rather than dummy string for the cases where we don't have a value attribute.
+        (-[KWQAccObject accessibilityActionDescription:]):
+        changed comment passed to UI_STRING bogus macro so it won't have to change if/when macro
+        loses its bogosity
+
 2003-12-22  John Sullivan  <sullivan@apple.com>
 
        - WebCore part of fix for <rdar://problem/3515706>: 
index 27ee5f00633dedd6f933f498f9960695fe8782f1..0dbf48d5256f28053c79191afc4c56b64892ff4d 100644 (file)
@@ -199,8 +199,29 @@ using khtml::RenderCanvas;
 {
     if (!m_renderer)
         return nil;
-
-    return UI_STRING("Testing role description", "not real yet");
+    
+    // FIXME 3517227: These need to be localized (UI_STRING here is a dummy macro)
+    // FIXME 3447564: It would be better to call some AppKit API to get these strings
+    // (which would be the best way to localize them)
+    
+    NSString *role = [self role];
+    if ([role isEqualToString:NSAccessibilityButtonRole]) {
+        return UI_STRING("button", "accessibility role description for button");
+    }
+    
+    if ([role isEqualToString:NSAccessibilityStaticTextRole]) {
+        return UI_STRING("text", "accessibility role description for static text");
+    }
+    
+    if ([role isEqualToString:NSAccessibilityImageRole]) {
+        return UI_STRING("image", "accessibility role description for image");
+    }
+    
+    if ([role isEqualToString:NSAccessibilityGroupRole]) {
+        return UI_STRING("group", "accessibility role description for group");
+    }
+    
+    return UI_STRING("unknown", "accessibility role description for unknown role");
 }
 
 -(NSString*)helpText
@@ -254,7 +275,11 @@ using khtml::RenderCanvas;
     if (m_renderer->isText())
         return [self textUnderElement];
     
-    return UI_STRING("Value not implemented yet.", "not real yet");
+    // FIXME: We might need to implement a value here for more types
+    // FIXME: It would be better not to advertise a value at all for the types for which we don't implement one;
+    // this would require subclassing or making accessibilityAttributeNames do something other than return a
+    // single static array.
+    return nil;
 }
 
 -(NSString*)title
@@ -368,7 +393,7 @@ static QRect boundingBoxRect(RenderObject* obj)
 - (NSString *)accessibilityActionDescription:(NSString *)action
 {
     // We only have the one action (press).
-    return UI_STRING("press link", "not real string value yet");
+    return UI_STRING("press link", "accessibility action description");
 }
 
 - (void)accessibilityPerformAction:(NSString *)action