此C函數可用於在許多窗口管理器中禁用或啓用Windows裝飾。如果'模式'是'd',窗口將隱藏裝飾,否則如果'模式'是'D',窗口會顯示它們。檢測X11窗口是否有裝飾品
void window_tune_decorations(Display *disp, Window win, char mode) {
long hints[5] = { 2, 0, 0, 0, 0};
Atom motif_hints = XInternAtom(disp, "_MOTIF_WM_HINTS", False);
switch (mode) {
case 'D':
hints[2] = 1;
/* fall through */
case 'd':
XChangeProperty(disp, win, motif_hints, motif_hints, 32, PropModeReplace, (unsigned char *)hints, 5);
break;
default:
fputs("Invalid mode.\n", stderr);
}
}
我想實現一個「切換模式」。所以我的問題是,有一種方法可以檢測窗戶是否有裝飾物? 我試着用_MOTIF_WM_HINTS使用XGetWindowProperty,但我不知道如何解釋輸出。