xprop не может снять декорацию с окна

xprop не может снять декорацию с окна

Я использую Ubuntu 16.04. Я хочу снять декор (удалить границы и заголовок) окна. Я нашел старый скрипт в сети, который, как утверждается, работает, но сейчас он не работает.

Чтобы убрать декор:

xprop -f _MOTIF_WM_HINTS 32c -set _MOTIF_WM_HINTS "0x2, 0x0, 0x0, 0x0, 0x0"

Для перепланировки:

xprop -f _MOTIF_WM_HINTS 32c -set _MOTIF_WM_HINTS "0x2, 0x0, 0x1, 0x0, 0x0"

Хотя этот скрипт на Python работает

#! /usr/bin/python2
import gtk.gdk
w = gtk.gdk.window_foreign_new( gtk.gdk.get_default_root_window().property_get("_NET_ACTIVE_WINDOW")[2][0] )
w.set_decorations( (w.get_decorations()+1)%2 ) # toggle between 0 and 1
gtk.gdk.window_process_all_updates()
gtk.gdk.flush()

Как можно включить или отключить декорирование окон из терминала без Python?

решение1

Это не будет работать в compiz! Compiz ожидает, что _MOTIF_WM_HINTSтип свойства — _MOTIF_WM_HINTS, но xpropкоманда устанавливает его в CARDINAL. Если вы используете, xprop | grep _MOTIF_WM_HINTSто увидите это:

_MOTIF_WM_HINTS(КАРДИНАЛЬНЫЙ) = 2, 0, 0, 0, 0

Должно быть так:

_MOTIF_WM_HINTS(_MOTIF_WM_HINTS) = 2, 0, 0, 0, 0

Ваш скрипт Python работает, потому что GTK+ правильно устанавливает это свойство. :)

Связанный контент