mirror of
https://github.com/textmate/textmate.git
synced 2026-04-28 03:00:34 -04:00
Use NSAccessibilityUnignoredDescendant to streamline code
This commit is contained in:
committed by
Allan Odgaard
parent
3e2df29076
commit
44a803fe7c
@@ -228,20 +228,16 @@ NSImageView* OakCreateDividerImageView ()
|
||||
|
||||
BOOL OakSetAccessibilityLabel (NSObject* element, NSObject* label)
|
||||
{
|
||||
if([element isKindOfClass:[NSControl class]])
|
||||
element = [(NSControl*)element cell] ?: element; // e.g. NSTableView is an NSControl with a nil cell
|
||||
else if(!([element isKindOfClass:[NSView class]] || [element isKindOfClass:[NSCell class]]))
|
||||
if(!(element = NSAccessibilityUnignoredDescendant(element)))
|
||||
return NO;
|
||||
|
||||
NSString* attribute = NSAccessibilityDescriptionAttribute;
|
||||
if([label isKindOfClass:[NSView class]] || [label isKindOfClass:[NSCell class]])
|
||||
if(![label isKindOfClass:NSString.class])
|
||||
{
|
||||
attribute = NSAccessibilityTitleUIElementAttribute;
|
||||
if([label isKindOfClass:[NSControl class]])
|
||||
label = [(NSControl*)label cell] ?: label;
|
||||
if(!(label = NSAccessibilityUnignoredDescendant(label)))
|
||||
return NO;
|
||||
}
|
||||
else if(![label isKindOfClass:[NSString class]])
|
||||
return NO;
|
||||
|
||||
return [element accessibilitySetOverrideValue:label forAttribute:attribute];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user