IT-lexikon › Programmering › _NET_CLIENT_LIST

_NET_CLIENT_LIST

Programmering In English → Uppdaterad: 2026-10-09

Rotfönsteregenskapen där fönsterhanteraren räknar upp alla fönster den hanterar, så att aktivitetsfält och pagers slipper gissa vilka av X-serverns hundratals fönster som är riktiga program.

Frågar man X-servern med XQueryTree får man hela trädet under rotfönstret: fönsterhanterarens ramar, menyer, verktygstips, osynliga hjälpfönster och, under en reparenting-hanterare, programfönstren som barnbarn två nivåer ned. Ett aktivitetsfält som ville visa en knapp per program fick vandra trädet och leta efter WM_STATE på varje gren, och GNOME:s första panel gjorde just det tills _WIN_CLIENT_LIST i WIN-tipsen 1998 lät fönsterhanteraren tala om saken själv. EWMH tog över idén: _NET_CLIENT_LIST på rotfönstret är en array av fönster-ID:n, ett per hanterat toppfönster, i den ordning de först visades.

Systern _NET_CLIENT_LIST_STACKING innehåller samma fönster i staplingsordning, nederst först, vilket är vad en pager behöver för att rita miniatyrerna rätt och vad en Alt+Tab-lista vänder på. Båda ägs av fönsterhanteraren, uppdateras vid varje nytt, stängt eller omflyttat fönster, och utelämnar sådant som har override-redirect eller aldrig blivit hanterat. wmctrl -l är i praktiken bara en utskrift av listan, med skrivbord och titel bredvid varje ID. Att listan är en egenskap och inte ett anrop betyder att vem som helst kan läsa den utan att fönsterhanteraren tillfrågas — och att den innehåller skräp om fönsterhanteraren kraschat utan att städa.

← Tillbaka till lexikonet