tmandry/Swindler

"Safari Web Content (Cached)" processes causing 20 second+ initialization times

Opened this issue · 1 comments

shuw commented

My Configuration:

  • Monterey 12.0.1
  • Safari 15.1

I have encountered very slow Swindler initialization times at times, and have traced it to "Safari Web Content (Cached)" processes. These NSRunningApplication have the activation policy NSApplicationActivationPolicyAccessory.

Any accessibility API query to retrieve an attribute from such a process throws an AXError.cannotComplete after 6 seconds. If there are many of such processes, and many attribute queries, Swindler can take minutes to initialize.

I have not been able to root cause this issue, as what's going on in AXUIElementCopyAttributeValue is a black box to me. This could be a bug in Apple's accessibility API, or who knows what.

One workaround is allowing the consumer to specify a filter for which applications to observer. Or a robust way of filtering out "Safari Web Content" processes, which AFAIK do not have any UI.

I had this problem too, but it wasn't Safari because I didn't have Safari open.
I don't know which program caused it. The slow initialization really affects the experience.