I would like to programmatically be able to communicate with the Window Manager in Gnome 3, using D-Bus. The tasks I would like to accomplish are:
- listening for new windows
- get window flags (e.g. skip pager flag)
- get X window IDs
- maximise, minimise windows
- raise, lower windows
- hide windows The aim is to create an task-bar-like application.
I know of tools such as xdotools or wmctrl, but those are very thorough tools: there are no listeners to find out if new windows have been instantiated / mapped, the latte works with window title strings.
I also tried using python-xlib, but lack of documentation or too technical documentation have made it very difficult to achieve anything.
It seems D-Bus would be appropriate for such actions. Can I use D-Bus to do this, is there a way to do this using Python? Could you provide examples?