IT-словарь › Программирование › _NET_CLIENT_LIST

_NET_CLIENT_LIST

Программирование Svenska → Обновлено: 2026-10-20

Свойство корневого окна, где оконный менеджер перечисляет все управляемые окна, чтобы панелям задач и пейджерам не приходилось гадать, какие из сотен окон X-сервера — настоящие приложения.

Спросите X-сервер через XQueryTree — получите всё дерево под корнем: рамки оконного менеджера, меню, подсказки, невидимые вспомогательные окна и, при reparenting-менеджере, окна приложений как внуки двумя уровнями ниже. Панель задач, желавшая по кнопке на приложение, должна была обходить дерево, ища WM_STATE на каждой ветке; так делала и первая панель GNOME, пока _WIN_CLIENT_LIST из WIN-подсказок 1998 года не позволил менеджеру сказать это самому. EWMH перенял идею: _NET_CLIENT_LIST на корневом окне — массив ID окон, по одному на каждое управляемое окно верхнего уровня, в порядке первого отображения.

Его родственник _NET_CLIENT_LIST_STACKING содержит те же окна в порядке наложения, снизу вверх, — это нужно пейджеру для правильных миниатюр, а список Alt+Tab разворачивает его. Оба принадлежат оконному менеджеру, обновляются при каждом новом, закрытом или переставленном окне и не включают окна с override-redirect и неуправляемые. wmctrl -l по сути печатает этот список с рабочим столом и заголовком рядом с каждым ID. То, что список — свойство, а не вызов, значит, что его может прочитать любой, не спрашивая менеджер, — и что в нём останется мусор, если менеджер упал, не прибрав за собой.

← Назад к словарю