IT用語集 › プログラミング › _NET_RESTACK_WINDOW

_NET_RESTACK_WINDOW

プログラミング Svenska → 更新: 2026-10-24

ページャーがあるウィンドウを別のウィンドウの上または下に置くためのEWMHメッセージ。ウィンドウマネージャがすべてをフレームで包んだあとは、通常のX経由の方法が通用しなくなるからである。

コアプロトコルにも重ね順を変える手段はある。兄弟ウィンドウと Above や Below といったモードを指定した ConfigureWindow リクエストだ。ただし要点は「兄弟」という語にある。二つのウィンドウを比べるには同じ親が必要なのに、リペアレント型のウィンドウマネージャの下では、各クライアントウィンドウは自分専用のフレームの子になっている。ページャーがFirefoxをターミナルの上に置こうとしても、二つはもう兄弟ではないので BadMatch が返る。

EWMHの解決策は、対象ウィンドウ、兄弟ウィンドウ、モードをすべてクライアントウィンドウの言葉で書いた ClientMessage をルートウィンドウに送ることだ。ウィンドウマネージャがそれを自分のフレームに読み替え、ConfigureRequest として届いたかのように重ね替えを行う。ソース指示は「ページャー」を意味する2にすべきで、そうすればフォーカス奪取防止などのルールが、ユーザーが明示的に頼んだ操作を妨げずに済む。

← 用語集に戻る