Comando para mover una ventana a todos los escritorios

8

Me gustaría poder mover (anclar) una ventana existente a todos los escritorios utilizando un comando programable, en lugar de hacerlo a través del menú de la ventana.

wmctrl -r <WIN> -t <DESK>moverá una ventana a un escritorio diferente, pero no he encontrado una manera de usar esto para hacer que la ventana se muestre en todos los escritorios. wmctrl -lse muestra -1como el número de escritorio para las ventanas que se muestran en todos los escritorios, pero pasar -1a -tno funciona.

Un informe de error de fedora no resuelto parece abordar este problema: aparentemente el valor -1 es utilizado internamente por wmctrl, y por esta razón no se puede pasar a -t. El informe de error también menciona que la ventana se puede anclar con algunos administradores de ventanas al darle a la ventana de destino la propiedad adhesiva . Sin embargo, estoy ejecutando openbox y este enfoque no parece funcionar para mí. En realidad hay un parche publicado en ese informe de error; No he intentado usarlo. Es de 2009. Prefiero evitar parches wmctrlo cualquier otra cosa.

¿Hay alguna otra forma de escribir este comportamiento que funcione en openbox?

intuido
fuente
Tampoco funciona con Metacity 2.22.0. Me parece que el desarrollo de wmctrl está estancado. La última entrada en el Registro de cambios es de 2005. El problema es obvio. El programa necesita un nuevo responsable. Si le gusta el programa y si el programa necesita ser parcheado, hágalo. Así es como funciona el código abierto.
ceving

Respuestas:

4

Como dijo un usuario en los comentarios, wmctrlno ha sido tocado desde octubre de 2005. Es muy posible que la función funcionó en ese momento, y desde entonces se ha roto debido a que los paquetes cambian a su alrededor.

Aquí está el wmctrl registro de cambios.

n0pe
fuente
1

A partir de wmctrl v1.07, -t -2funciona para mí.

Tim Green
fuente
1
Eso solía funcionar para mí, pero ahora no (todavía en v1.07). Sin embargo, -b add,stickyfunciona
David Fraser
agregar, pegajoso no funciona en plasma kde en kubuntu. Pero -t -2 hizo el truco, gracias
Syco
Ni -ttampoco stickyme funcionan en LXQt y Openbox.
Murphy
1

xdotool search --name xyz set_desktop_for_window 4294967295

Alastair Irvine
fuente
4294967295 es -1 como un entero de 32 bits sin signo. -1 no se puede usar porque xdotool set_desktop_for_window -1se interpreta como una opción, a pesar de que sigue un comando y es el valor devuelto por xdotool get_desktop_for_window.
Alastair Irvine