IT用語集 › プログラミング › xdg-shell

xdg-shell

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

Waylandのサーフェスを実際の「ウィンドウ」にするプロトコル。タイトル、最大化、フルスクリーン、サイズ交渉、ポップアップメニューを扱い、貧弱だったコアのwl_shellに取って代わった。

Waylandのコアが知っているのはサーフェス、つまりピクセルのバッファだけだ。タイトルバーを持つか、最小化できるかは拡張が決める。最初の試みである2012年のWayland 1.0のwl_shellは、Weston自身の必要すら満たさなかった。2013年頃にGNOMEとKDEがWayland対応を始めると、xdg_shellがゼロから設計し直され、不安定版を重ねて2017年末にwayland-protocolsで安定版となった。

オブジェクトは三つ。入口のxdg_wm_base、共通基盤のxdg_surface、そしてロールとして、アプリ窓のxdg_toplevelか、xdg_positionerで親に対して配置するメニューやツールチップ用のxdg_popupを選ぶ。要はハンドシェイクだ。コンポジターがconfigureでサイズと状態を提案し、クライアントはack_configureで応じて一致するバッファをコミットする。中途半端な状態の窓が描かれることはない。X側の対応物はICCCMとEWMHで、ウィンドウプロパティに散らばり、ハンドシェイクはない。

← 用語集に戻る