BT Sözlüğü › Programlama › WM_CLIENT_LEADER

WM_CLIENT_LEADER

Programlama Svenska → Güncellendi: 2026-10-12

Bir programın lider penceresini gösteren ICCCM özelliği; oturum kimliğini yalnızca o taşır, böylece oturum yöneticisi hangi pencerelerin aynı programa ait olduğunu bilir.

Bir programın beş üst düzey penceresi olabilir, ama oturum yöneticisi pencere başına değil program başına tek bir komut ister. ICCCM 2.0 bunu 1994’te, XSMP ile aynı hamlede çözdü: her istemci bir lider pencere atar — tercihen hiç haritalanmayan görünmez bir pencere —, oturum yöneticisinin verdiği kimliği onun SM_CLIENT_ID özelliğine yazar ve her üst düzey pencerenin, lider dahil, WM_CLIENT_LEADER özelliğini liderin pencere kimliğine ayarlar. Bir pencereden doğru yeniden başlatma komutuna giden yol böylece iki aramadır. Pencere yöneticisi yeniden başlatmadan sonra doğru pencereyi doğru yere koyabilsin diye her pencere ayrıca ana pencereyi tercihler iletişim kutusundan ayıran bir dize olan WM_WINDOW_ROLE aldı.

GTK ve Qt bunların hepsini programcı fark etmeden yapar: GDK ekran başına, WM_CLASS’ı da taşıyan görünmez bir lider pencere oluşturur ve hemen her GTK penceresinde xprop WM_CLIENT_LEADER(WINDOW): window id # 0x… gösterir. Pencere yöneticileri özelliği grup işareti olarak yeniden kullandı: KWin, WM_HINTS içindeki eski gruba ek olarak aynı lidere sahip pencereleri görev çubuğunda toplar. Oturum tarafı pek kullanılmaz, çünkü az sayıda program SaveYourself’e anlamlı karşılık verir; özellik çoğunlukla ikinci hayatını yaşar. Wayland ikisini de, oturum kimliği olmayan, üst düzey pencere başına tek dizelik app_id ile değiştirdi.

← Sözlüğe dön