リペアレンティング型ウィンドウマネージャは、X Window Systemのウィンドウマネージャで、他のすべてのウィンドウを取り込むものである。
X Window Systemでは、すべてのウィンドウに対して親 (ペアレント) ウィンドウとなるルートウィンドウ
または別のウィンドウのいずれかが存在する。ルートウィンドウの子であるウィンドウは、トップレベルウィンドウ (top-level window) という。トップレベルウィンドウが作成されると、リペアレンティング型ウィンドウマネージャはそのウィンドウに対してさらに専用のウィンドウを新しく作成して親とする。こうすることで、ウィンドウマネージャはウィンドウをウィンドウ装飾やタイトルバーで装飾することや、たとえば仮想ウィンドウマネージャが必要とするウィンドウ操作の高度な制御が可能になる。厳密には、リペアレンティング型ウィンドウマネージャはトップレベルウィンドウがマッピングされた (可視化を試みた) 時に通知を受けるようXサーバに登録される。そのようなイベントが発生すると、ウィンドウマネージャはフレームウィンドウを作成し、また大抵の場合でタイトルバーウィンドウも作成する。続いてフレームウィンドウはメインウィンドウとタイトルバーウィンドウの両方の親となる。ボタンやウィンドウタイトル等の他の装飾も作成される場合があるが、これらについては通常、タイトルバーウィンドウが親となる。[1]
uwmウィンドウマネージャ等の初期のウィンドウマネージャはリペアレンティング型ではなかったものの、モダンなウィンドウマネージャは実質的にすべてリペアレンティング型である。例外はdwm、cwm、PLWM、ratpoison、stumpwm、そしてxmonadであるが、これらのウィンドウマネージャが典型的なウィンドウ装飾を一切使用しないためである。また、Compizはバージョン0.9.0まで装飾を別に作成していたが、これ以降はリペアレンティング型ウィンドウマネージャとなり、ノンコンポジットモードでも動作するようになった。
出典^ ⇒Xlib Programming Manual Chapter 10
表
話
編
歴
X Window System
アーキテクチャ
コアプロトコル
Xlib
XCB
X Window selection
Xウィンドウマネージャ
X session manager
Xディスプレイマネージャ
X Toolkit Intrinsics
X Window authorization
X11 color names
ウィンドウマネージャ
の方式
コンポジット型
リペアレンティング型
スタック型
タイル型
拡張
X Image Extension
X keyboard extension
X video extension
Shape extension
Shared memory extension
GLX
XRender
MPX
XRandR
実装
Cygwin/X
XQuartz
X.Org Server
X-Win32
XFree86
XDarwin
Xming
Xsun
Xgl
標準
ICCCM
EWMH
XDS
ウィンドウマネージャ
9wm
AfterStep
Amiwm
awesome
Beryl
Blackbox
CTWM
cwm
dwm
Enlightenment
evilwm
Fluxbox
FVWM
FVWM95
i3
IceWM
Ion
JWM
KWin
larswm
Mlvwm
Metacity
Mwm
Mutter
OpenBox
PekWM
Qvwm
Ratpoison
Sawfish
Scwm
Stumpwm
Twm
Window Maker
wmii
xmonad
関連項目
デスクトップ環境
関連組織
The Open Group
X.Org Foundation