Pregunta

Estoy tratando de encontrar la manera de detectar cuando el usuario actual ha cambiado su espacio de trabajo en Mono. Ni siquiera estoy seguro de cómo el aspecto de espacio de trabajo Gnome opera. Un breve vistazo a través de Monodoc no resultó nada, y yo no podía localizar una clave de GConf que me dio lo que quería tampoco.

Actualizar : El siguiente método sólo funcionará si Compiz no se fija para tener un tamaño virtual. Por ejemplo, si se establece el número de escritorios en Compiz a 1 con un tamaño virtual horizontal de 2, Gdk.Global.CurrentDesktop devolverá 0 para ambos espacios de trabajo.

Así que ¿alguien sabe de un método para encontrar si el espacio de trabajo se ha cambiado cuando Compiz tiene escritorios virtuales habilitados?

¿Fue útil?

Solución

Esto es en realidad una función del gestor de ventanas, y cómo funciona exactamente varía entre los gestores de ventanas. No estoy familiarizado con la forma de acceder xlib en mono, pero usted está buscando la _NET_NUMBER_OF_DESKTOPS, _NET_DESKTOP_NAMES, _NET_CURRENT_DESKTOP, etc. propiedades X en la ventana raíz.

especificación de los gestores de ventanas extendido contiene muchos de los detalles.

Otros consejos

Uso libwnck. Estoy bastante seguro de que es un envoltorio Mono para ello.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top