X11

包裝程序以重新父應用程序視窗,不帶視窗框架

  • November 26, 2017

我正在使用Cinnamon桌面環境(在 Debian Sid 上),它的視窗管理器無法選擇取消裝飾應用程序視窗。

我看到許多程序設法告訴上面的視窗管理器它們將自己提供框架和什麼(例如,Google瀏覽器),我想知道它是否存在或可以編寫一個像這樣呼叫的包裝器

$ noframes mupdf my16:9slides.pdf

開始,告訴視窗管理器不要擔心框架等,啟動我的應用程序並重新設置它。

(可能是微不足道的)好處是,在我的範例中,視窗縱橫比將更近似等於 16:9,並且在使用縮放至 1/4 螢幕功能時,視窗幾乎完全適合可用空間。

PS:來自我的.twmrc

NoTitle {"mupdf" ...}

可能您可以使用以下程式碼禁用/啟用標題欄:

#!/usr/bin/python2
from gtk.gdk import *

w=window_foreign_new((get_default_root_window().property_get("_NET_ACTIVE_WINDOW")[2][0])

if w.get_decorations() == 0 :
   w.set_decorations(DECOR_ALL)
else:
   w.set_decorations(0)

window_process_all_updates()

它來自這個要點。這是基於這篇關於刪除特定 WM 上的裝飾的文章。

正如文章中提到的,您可以創建一個快捷方式來刪除您感興趣的視窗的裝飾。

在 Cinnamon Keyboard Shorcuts 中,將序列(我使用Super+U)綁定到該腳本,前提是它是可執行的並且在您的PATH. 在活動視窗上,點擊序列,它將刪除裝飾。再打一次它就會回來。

引用自:https://unix.stackexchange.com/questions/274682