Revision: 27748
          http://sourceforge.net/p/bibdesk/svn/27748
Author:   hofman
Date:     2022-07-21 14:24:59 +0000 (Thu, 21 Jul 2022)
Log Message:
-----------
focused item also needs first responder of view

Modified Paths:
--------------
    trunk/bibdesk_vendorsrc/amaxwell/FileView/FVAccessibilityIconElement.m

Modified: trunk/bibdesk_vendorsrc/amaxwell/FileView/FVAccessibilityIconElement.m
===================================================================
--- trunk/bibdesk_vendorsrc/amaxwell/FileView/FVAccessibilityIconElement.m      
2022-07-21 03:26:49 UTC (rev 27747)
+++ trunk/bibdesk_vendorsrc/amaxwell/FileView/FVAccessibilityIconElement.m      
2022-07-21 14:24:59 UTC (rev 27748)
@@ -84,6 +84,7 @@
             NSAccessibilityWindowAttribute,
             NSAccessibilityTopLevelUIElementAttribute,
             NSAccessibilityFocusedAttribute,
+            NSAccessibilitySelectedAttribute,
             NSAccessibilityEnabledAttribute,
             NSAccessibilityPositionAttribute,
             NSAccessibilitySizeAttribute,
@@ -125,6 +126,8 @@
     } else if ([attribute isEqualToString:NSAccessibilityEnabledAttribute]) {
         return [NSNumber numberWithBool:YES];
     } else if ([attribute isEqualToString:NSAccessibilityFocusedAttribute]) {
+        return [NSNumber numberWithBool:[[_parent window] firstResponder] == 
_parent && [_parent isIconElementSelected:self]];
+    } else if ([attribute isEqualToString:NSAccessibilitySelectedAttribute]) {
         return [NSNumber numberWithBool:[_parent isIconElementSelected:self]];
     } else {
         return nil;
@@ -132,12 +135,15 @@
 }
 
 - (BOOL)accessibilityIsAttributeSettable:(NSString *)attribute {
-    return [attribute isEqualToString:NSAccessibilityFocusedAttribute]; 
+    return [attribute isEqualToString:NSAccessibilityFocusedAttribute] || 
[attribute isEqualToString:NSAccessibilitySelectedAttribute];
 }
 
 - (void)accessibilitySetValue:(id)value forAttribute:(NSString *)attribute {
     if ([attribute isEqualToString:NSAccessibilityFocusedAttribute]) {
+        [[_parent window] makeFirstResponder:_parent];
         [_parent setSelected:[value boolValue] forIconElement:self];
+    } else if ([attribute isEqualToString:NSAccessibilityFocusedAttribute]) {
+        [_parent setSelected:[value boolValue] forIconElement:self];
     }
 }
 
@@ -238,13 +244,22 @@
 }
 
 - (BOOL)isAccessibilityFocused {
-    return [_parent isIconElementSelected:self];
+    return [[_parent window] firstResponder] == _parent && [_parent 
isIconElementSelected:self];
 }
 
 - (void)setAccessibilityFocused:(BOOL)focused {
+    [[_parent window] makeFirstResponder:_parent];
     [_parent setSelected:focused forIconElement:self];
 }
 
+- (BOOL)isAccessibilitySelected {
+    return [_parent isIconElementSelected:self];
+}
+
+- (void)setAccessibilitySelected:(BOOL)selected {
+    [_parent setSelected:selected forIconElement:self];
+}
+
 - (BOOL)accessibilityPerformPress {
     [_parent openIconElement:self];
     return YES;

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