diff --git a/src/api-wrappers/AXUIElement.swift b/src/api-wrappers/AXUIElement.swift index 2edadfa6..4f20211a 100644 --- a/src/api-wrappers/AXUIElement.swift +++ b/src/api-wrappers/AXUIElement.swift @@ -90,6 +90,7 @@ extension AXUIElement { ([kAXStandardWindowSubrole, kAXDialogSubrole].contains(subrole) || openBoard(runningApp) || adobeAudition(runningApp, subrole) || + adobeAfterEffects(runningApp, subrole) || steam(runningApp, title, role) || worldOfWarcraft(runningApp, role) || battleNetBootstrapper(runningApp, role) || @@ -136,6 +137,10 @@ extension AXUIElement { return runningApp.bundleIdentifier == "com.adobe.Audition" && subrole == kAXFloatingWindowSubrole } + private static func adobeAfterEffects(_ runningApp: NSRunningApplication, _ subrole: String?) -> Bool { + return runningApp.bundleIdentifier == "com.adobe.AfterEffects" && subrole == kAXFloatingWindowSubrole + } + private static func books(_ runningApp: NSRunningApplication) -> Bool { // Books.app has animations on window creation. This means windows are originally created with subrole == AXUnknown or isOnNormalLevel == false return runningApp.bundleIdentifier == "com.apple.iBooksX"