_NET_WM_STRUT
パネルが画面の一辺を確保するためのEWMHプロパティ。最大化したウィンドウがタスクバーを隠さず、その上で止まるようにする。
Xではパネルも単なるウィンドウの1つにすぎない。取り決めがなければ、最大化したプログラムがパネルを覆うか、パネルがプログラムを覆うか、最後に描いたほうが勝つ。EWMHは、パネルが自分で声を上げる方法を用意した。パネルのウィンドウに付ける_NET_WM_STRUTプロパティは4つの数値を持ち、左・右・上・下で確保するピクセル数を表す。ウィンドウマネージャはこれを画面から差し引き、残りをルートウィンドウの_NET_WORKAREAとして公開する。最大化、タイリング、新しいウィンドウの配置は、画面ではなくこの作業領域を基準に行われる。パネル自身にはDOCKウィンドウタイプが付き、枠なしで常に最前面に留まる。
複数モニタになって問題が起きた。左画面の下端に沿った短いパネルが、4つの数値では下辺全体、つまり右画面の分まで確保してしまう。そこで12個の数値を持つ_NET_WM_STRUT_PARTIALが生まれた。各辺に、その辺に沿った開始値と終了値が加わり、確保する範囲がパネルが実際に占める区間だけになる。部分版を理解するウィンドウマネージャは、古いほうを無視することになっている。「最大化したウィンドウがパネルの裏に潜る」という相談が10年に一度ほどフォーラムに現れるのは、たいていどこかのパネルが誤った数値を設定しているからだ。