Teo Choong Ping
Teo Choong Ping

Reputation: 12808

How to get a list of all open NSWindow from all running application?

Is there a way to get list of open or visible NSWindow from mac desktop?

Upvotes: 13

Views: 10818

Answers (3)

Chuck
Chuck

Reputation: 237040

Note that not all windows are necessarily NSWindows, and that NSWindow only provides an interface to windows in your own address space.

The supported way to access every window is the CGWindow API. Take a look at the Son of Grab sample code to see how it's done.

Upvotes: 26

bosmacs
bosmacs

Reputation: 7483

You can use the accessibility API (accessibility must be enabled under System Preferences for it to work) to get information on windows (and other UI elements) from other processes. This question might be just what you're looking for.

Upvotes: 5

JWWalker
JWWalker

Reputation: 22707

ALL running applications? No. You can only get the NSWindows of your own app. You may be able to use Universal Access or Core Graphics APIs to get some information about windows of other apps, but not full access.

Upvotes: 2

Related Questions