QueryTree
X11で、あるウィンドウがツリーのどこにあるか、つまりルート、親、すべての子を教えてくれるリクエスト。
Xのクライアントが知っているのは、自分で作ったウィンドウと、ごくわずかなことだけだ。XQueryTreeはウィンドウを一つ受け取り、ルートウィンドウ、親、そしてスタック順(下から順)に並んだ子のリストを返す。コアプロトコルで構造を見る唯一の方法であり、呼び出しのたびにラウンドトリップが発生する。ツリー全体を一つずつたどると、SSH越しでは速いプログラムでも確実に遅く感じる。
すでにプログラムが動いているデスクトップで起動したウィンドウマネージャーは、引き取るべきウィンドウを探すため、まずルートに対してQueryTreeを呼ぶ。xwininfo -treeのようなツールも、人間のために同じことをする。ただしリペアレンティングには注意が要る。ルートの子はアプリケーションではなくウィンドウマネージャーのフレームなので、クライアントのウィンドウを探すなら一段下りてWM_STATEを確認しなければならない。