Using a combination of XInterAtom(disp, "_NET_CLIENT_LIST", False)
and XGetWindowProperty
, I can successfully obtain a list of running windows.
However, is there a way to convert that data to a pointer to a shell or widget, to be able to determine when a given window is closed, or what it's children are, or to create any callbacks?
I have tried to use XtWindowToWidget
and XtHooksOfDisplay
to no avail, but I could have been using them incorrectly as well.
Or, is there another way to do this... knowing that the shell and window creation is part of a different application that I cannot modify?