fix: ignore autodesk fusion internal panels (closes #4578)

This commit is contained in:
Gregory authored and lwouis committed 2025-07-01 10:34:54 +02:00
1 parent b325cc75c0
commit f67d182a92
1 file changed
+6
+6
View File
@@ -269,12 +269,18 @@ extension AXUIElement {
) && (
mustHaveIfJetbrainApp(app, title, subrole, size!) &&
mustHaveIfSteam(app, title, role) &&
mustHaveIfFusion360(app, title, role) &&
mustHaveIfColorSlurp(app, subrole)
)
)
)
}
private static func mustHaveIfFusion360(_ app: Application, _ title: String?, _ role: String?) -> Bool {
// filter out Autodesk Fusion side panels "Browser" and "Comments" with subrole AXDialog but with no title
return app.bundleIdentifier != "com.autodesk.fusion360" || (title != nil && title != "")
}
private static func mustHaveIfJetbrainApp(_ app: Application, _ title: String?, _ subrole: String?, _ size: NSSize) -> Bool {
// jetbrain apps sometimes generate non-windows that pass all checks in isActualWindow
// they have no title, so we can filter them out based on that