Revision: 12986 http://sourceforge.net/p/skim-app/code/12986 Author: hofman Date: 2022-07-06 17:09:16 +0000 (Wed, 06 Jul 2022) Log Message: ----------- Implement required methods for accessibility protocols, use isAccessibilityElement rather rthan accessibilityElement
Modified Paths: -------------- trunk/SKAnimatedBorderlessWindow.m trunk/SKColorSwatch.h trunk/SKColorSwatch.m trunk/SKLineWell.h trunk/SKLineWell.m trunk/SKNavigationWindow.m trunk/SKStatusBar.h trunk/SKStatusBar.m Modified: trunk/SKAnimatedBorderlessWindow.m =================================================================== --- trunk/SKAnimatedBorderlessWindow.m 2022-07-06 16:35:55 UTC (rev 12985) +++ trunk/SKAnimatedBorderlessWindow.m 2022-07-06 17:09:16 UTC (rev 12986) @@ -76,7 +76,7 @@ - (BOOL)canBecomeMainWindow { return NO; } -- (BOOL)accessibilityIsIgnored { return YES; } +- (BOOL)isccessibilityElement { return NO; } - (NSTimeInterval)fadeInDuration { return FADE_IN_DURATION; } Modified: trunk/SKColorSwatch.h =================================================================== --- trunk/SKColorSwatch.h 2022-07-06 16:35:55 UTC (rev 12985) +++ trunk/SKColorSwatch.h 2022-07-06 17:09:16 UTC (rev 12986) @@ -42,7 +42,7 @@ @class SKColorSwatchBackgroundView; -@interface SKColorSwatch : NSControl <NSDraggingSource> { +@interface SKColorSwatch : NSControl <NSDraggingSource, NSAccessibilityGroup> { NSMutableArray *colors; NSMutableArray *itemViews; SKColorSwatchBackgroundView *backgroundView; Modified: trunk/SKColorSwatch.m =================================================================== --- trunk/SKColorSwatch.m 2022-07-06 16:35:55 UTC (rev 12985) +++ trunk/SKColorSwatch.m 2022-07-06 17:09:16 UTC (rev 12986) @@ -76,7 +76,7 @@ SKColorSwatchDropAfter }; -@interface SKColorSwatchItemView : NSView { +@interface SKColorSwatchItemView : NSView <NSAccessibilityElement> { NSColor *color; BOOL highlighted; BOOL selected; @@ -758,11 +758,7 @@ #pragma mark Accessibility -- (BOOL)accessibilityIsIgnored { - return NO; -} - -- (BOOL)accessibilityElement { +- (BOOL)isAccessibilityElement { return YES; } @@ -774,6 +770,14 @@ return NSAccessibilityRoleDescriptionForUIElement(self); } +- (NSRect)accessibilityFrame { + return [self convertRectToScreen:[self bounds]]; +} + +- (id)accessibilityParent { + return NSAccessibilityUnignoredAncestor([self superview]); +} + - (NSArray *)accessibilityChildren { return NSAccessibilityUnignoredChildren(itemViews); } @@ -1003,11 +1007,7 @@ [NSGraphicsContext restoreGraphicsState]; } -- (BOOL)accessibilityIsIgnored { - return NO; -} - -- (BOOL)accessibilityElement { +- (BOOL)isAccessibilityElement { return YES; } @@ -1019,6 +1019,14 @@ return NSAccessibilityRoleDescriptionForUIElement(self); } +- (NSRect)accessibilityFrame { + return [self convertRectToScreen:[self bounds]]; +} + +- (id)accessibilityParent { + return NSAccessibilityUnignoredAncestor([self superview]); +} + - (id)accessibilityValue { return [color accessibilityValue]; } Modified: trunk/SKLineWell.h =================================================================== --- trunk/SKLineWell.h 2022-07-06 16:35:55 UTC (rev 12985) +++ trunk/SKLineWell.h 2022-07-06 17:09:16 UTC (rev 12986) @@ -54,7 +54,7 @@ SKLineWellDisplayStyleOval }; -@interface SKLineWell : NSControl <NSDraggingSource> { +@interface SKLineWell : NSControl <NSDraggingSource, NSAccessibilityCheckBox> { CGFloat lineWidth; PDFBorderStyle style; NSArray *dashPattern; Modified: trunk/SKLineWell.m =================================================================== --- trunk/SKLineWell.m 2022-07-06 16:35:55 UTC (rev 12985) +++ trunk/SKLineWell.m 2022-07-06 17:09:16 UTC (rev 12986) @@ -614,11 +614,7 @@ #pragma mark Accessibility -- (BOOL)accessibilityIsIgnored { - return NO; -} - -- (BOOL)accessibilityElement { +- (BOOL)isAccessibilityElement { return YES; } @@ -630,10 +626,22 @@ return NSAccessibilityRoleDescription(NSAccessibilityCheckBoxRole, nil); } +- (NSRect)accessibilityFrame { + return [self convertRectToScreen:[self bounds]]; +} + +- (id)accessibilityParent { + return NSAccessibilityUnignoredAncestor([self superview]); +} + - (id)accessibilityValue { return [NSNumber numberWithInteger:[self isActive]]; } +- (NSString *)accessibilityLabel { + return [NSString stringWithFormat:@"%@ %ld", NSLocalizedString(@"line width", @"Accessibility description"), (long)[self lineWidth]]; +} + - (NSString *)accessibilityTitle { return [NSString stringWithFormat:@"%@ %ld", NSLocalizedString(@"line width", @"Accessibility description"), (long)[self lineWidth]]; } Modified: trunk/SKNavigationWindow.m =================================================================== --- trunk/SKNavigationWindow.m 2022-07-06 16:35:55 UTC (rev 12985) +++ trunk/SKNavigationWindow.m 2022-07-06 17:09:16 UTC (rev 12986) @@ -276,8 +276,8 @@ SKDESTROY(view); } -- (BOOL)accessibilityIsIgnored { - return YES; +- (BOOL)isAccessibilityElement { + return NO; } @end Modified: trunk/SKStatusBar.h =================================================================== --- trunk/SKStatusBar.h 2022-07-06 16:35:55 UTC (rev 12985) +++ trunk/SKStatusBar.h 2022-07-06 17:09:16 UTC (rev 12986) @@ -45,7 +45,7 @@ }; -@interface SKStatusBar : NSView { +@interface SKStatusBar : NSView <NSAccessibilityGroup> { NSTextField *leftField; NSTextField *rightField; NSImageView *iconView; Modified: trunk/SKStatusBar.m =================================================================== --- trunk/SKStatusBar.m 2022-07-06 16:35:55 UTC (rev 12985) +++ trunk/SKStatusBar.m 2022-07-06 17:09:16 UTC (rev 12986) @@ -335,11 +335,7 @@ #pragma mark Accessibility -- (BOOL)accessibilityIsIgnored { - return NO; -} - -- (BOOL)accessibilityElement { +- (BOOL)isAccessibilityElement { return YES; } @@ -351,6 +347,14 @@ return NSAccessibilityRoleDescription(NSAccessibilityGroupRole, nil); } +- (NSRect)accessibilityFrame { + return [self convertRectToScreen:[self bounds]]; +} + +- (id)accessibilityParent { + return NSAccessibilityUnignoredAncestor([self superview]); +} + @end #pragma mark - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. _______________________________________________ Skim-app-commit mailing list Skim-app-commit@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/skim-app-commit