我正在运行 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+ 正确设置了此属性。:)