Revision: 3788
          http://skim-app.svn.sourceforge.net/skim-app/?rev=3788&view=rev
Author:   hofman
Date:     2008-04-22 08:37:02 -0700 (Tue, 22 Apr 2008)

Log Message:
-----------
Add some checks to see if implementations are defined.

Modified Paths:
--------------
    trunk/PDFDisplayView_SKExtensions.m

Modified: trunk/PDFDisplayView_SKExtensions.m
===================================================================
--- trunk/PDFDisplayView_SKExtensions.m 2008-04-22 12:49:42 UTC (rev 3787)
+++ trunk/PDFDisplayView_SKExtensions.m 2008-04-22 15:37:02 UTC (rev 3788)
@@ -171,21 +171,29 @@
 }
 
 - (NSArray *)accessibilityAttributeNames {
-    return originalAccessibilityAttributeNames(parent, _cmd);
+    if (originalAccessibilityAttributeNames != NULL)
+        return originalAccessibilityAttributeNames(parent, _cmd);
+    else if ([parent respondsToSelector:_cmd])
+        return [parent accessibilityAttributeNames];
+    else
+        return [NSArray array];
 }
 
 - (id)accessibilityAttributeValue:(NSString *)attribute {
-    if ([attribute isEqualToString:NSAccessibilityParentAttribute]) {
+    if ([attribute isEqualToString:NSAccessibilityParentAttribute])
         return NSAccessibilityUnignoredAncestor(parent);
-    } else if ([attribute isEqualToString:NSAccessibilityWindowAttribute]) {
+    else if ([attribute isEqualToString:NSAccessibilityWindowAttribute])
         // We're in the same window as our parent.
         return [NSAccessibilityUnignoredAncestor(parent) 
accessibilityAttributeValue:NSAccessibilityWindowAttribute];
-    } else if ([attribute 
isEqualToString:NSAccessibilityTopLevelUIElementAttribute]) {
+    else if ([attribute 
isEqualToString:NSAccessibilityTopLevelUIElementAttribute])
         // We're in the same top level element as our parent.
         return [NSAccessibilityUnignoredAncestor(parent) 
accessibilityAttributeValue:NSAccessibilityTopLevelUIElementAttribute];
-    } else {
+    else if (originalAccessibilityAttributeValue != NULL)
         return originalAccessibilityAttributeValue(parent, _cmd, attribute);
-    }
+    else if ([parent respondsToSelector:_cmd])
+        return [parent accessibilityAttributeValue:attribute];
+    else
+        return nil;
 }
 
 - (BOOL)accessibilityIsAttributeSettable:(NSString *)attribute {


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
Skim-app-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/skim-app-commit

Reply via email to