_NET_WM_STRUT
Свойство EWMH, позволяющее панели зарезервировать край экрана, чтобы развёрнутые окна останавливались над панелью задач, а не закрывали её.
В X панель — просто ещё одно окно. Без договорённости развёрнутая программа закрыла бы её или панель закрыла бы программу — смотря кто рисовал последним. EWMH дал панели возможность заявить о себе: свойство _NET_WM_STRUT на окне панели содержит четыре числа — сколько пикселей зарезервировать слева, справа, сверху и снизу. Оконный менеджер вычитает их из экрана и публикует остаток как _NET_WORKAREA на корневом окне. Разворачивание, тайлинг и размещение новых окон считаются от рабочей области, а не от экрана. Само окно панели помечается типом DOCK, чтобы оно не получало рамки и оставалось сверху.
Проблемы начались с несколькими мониторами. Короткая панель вдоль низа левого экрана четырьмя числами резервировала весь нижний край, включая правый экран. Так появился _NET_WM_STRUT_PARTIAL с двенадцатью числами: у каждого края есть ещё начало и конец вдоль него, так что резерв покрывает только занятый панелью участок. Оконный менеджер, понимающий частичный вариант, должен игнорировать старый. То, что «развёрнутое окно оказывается за панелью», всплывает на форумах раз в десять лет, почти всегда означает, что какая-то панель выставила неверные числа.