Revision: 27698
          http://sourceforge.net/p/bibdesk/svn/27698
Author:   hofman
Date:     2022-07-06 18:07:08 +0000 (Wed, 06 Jul 2022)
Log Message:
-----------
implement newer accessibility protocols. Don't use text cell as accessibility 
element.

Modified Paths:
--------------
    trunk/bibdesk/BDSKStatusBar.m
    trunk/bibdesk/BDSKTextViewCompletionController.m

Modified: trunk/bibdesk/BDSKStatusBar.m
===================================================================
--- trunk/bibdesk/BDSKStatusBar.m       2022-07-06 06:30:19 UTC (rev 27697)
+++ trunk/bibdesk/BDSKStatusBar.m       2022-07-06 18:07:08 UTC (rev 27698)
@@ -433,33 +433,36 @@
     else if ([attribute 
isEqualToString:NSAccessibilityRoleDescriptionAttribute])
         return NSAccessibilityRoleDescription(NSAccessibilityGroupRole, nil);
     else if ([attribute isEqualToString:NSAccessibilityChildrenAttribute])
-        return NSAccessibilityUnignoredChildren([NSArray 
arrayWithObjects:textCell, progressIndicator, nil]);
+        return NSAccessibilityUnignoredChildren([self subviews]);
     return [super accessibilityAttributeValue:attribute];
 }
 
-- (id)accessibilityHitTest:(NSPoint)point {
-    NSPoint localPoint = [self convertPointFromScreen:point];
-    NSRect rect, childRect;
-    
-    rect = BDSKShrinkRect(BDSKShrinkRect([self bounds], leftMargin, 
NSMinXEdge), rightMargin, NSMaxXEdge);
-    if (progressIndicator) {
-        NSDivideRect(rect, &childRect, &rect, NSWidth([progressIndicator 
frame]), NSMaxXEdge);
-        if (NSMouseInRect(localPoint, childRect, [self isFlipped]))
-            return NSAccessibilityUnignoredAncestor(progressIndicator);
-        rect = BDSKShrinkRect(rect, MARGIN_BETWEEN_ITEMS, NSMaxXEdge);
-       }
-    return NSAccessibilityUnignoredAncestor(textCell);
+- (BOOL)accessibilityIsIgnored {
+    return NO;
 }
 
-- (id)accessibilityFocusedUIElement {
-    if (progressIndicator && [NSApp accessibilityFocusedUIElement] == 
progressIndicator)
-        return NSAccessibilityUnignoredAncestor(progressIndicator);
-    else
-        return NSAccessibilityUnignoredAncestor(textCell);
+- (BOOL)isAccessibilitElement {
+    return NO;
 }
 
-- (BOOL)accessibilityIsIgnored {
-    return NO;
+- (NSString *)accessibilityRole {
+    return NSAccessibilityGroupRole;
 }
 
+- (NSString *)accessibilityRoleDescription {
+    return NSAccessibilityRoleDescription(NSAccessibilityGroupRole, nil);
+}
+
+- (NSRect)accessibilityFrame {
+    return [self convertRectToScreen:[self bounds]];
+}
+
+- (id)accessibilityParent {
+    return NSAccessibilityUnignoredAncestor([self superview]);
+}
+
+- (NSArray *)accessibilityChildren {
+    return NSAccessibilityUnignoredChildren([self subviews]);
+}
+
 @end

Modified: trunk/bibdesk/BDSKTextViewCompletionController.m
===================================================================
--- trunk/bibdesk/BDSKTextViewCompletionController.m    2022-07-06 06:30:19 UTC 
(rev 27697)
+++ trunk/bibdesk/BDSKTextViewCompletionController.m    2022-07-06 18:07:08 UTC 
(rev 27698)
@@ -477,4 +477,6 @@
 
 - (BOOL)accessibilityIsIgnored { return YES; }
 
+- (BOOL)isAccessibilityElement { return NO; }
+
 @end

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



_______________________________________________
Bibdesk-commit mailing list
Bibdesk-commit@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bibdesk-commit

Reply via email to