我通过使用kAXSelectedTextAttribute
设置AXUIElementSetAttributeValue
,使用辅助功能API在最前面的应用程序中插入文本。在大多数现代可可应用中,它的效果非常好。
但是,它在某些应用中并不存在,我想以编程方式知道活动应用(或给定的AXUIElement
)是否支持它。
我尝试使用AXUIElementIsAttributeSettable
,但是当某些应用正确返回false
(Terminal.app)时,许多应用程序错误地返回true
(IntelliJ,Sublime Text,FoldingText ...)。后者在设置属性时也会错误地返回AXError.Success
。
有没有其他方法可以知道设置辅助功能属性是否会/正常工作?