Jump to content

Подсказки расширенного оконного менеджера

Расширенные подсказки оконного менеджера , также известные как NetWM , [1] — это стандарт X Window System для связи между оконными менеджерами и приложениями . Он основан на функциональности Руководства по соглашениям межклиентского общения (ICCCM).

Эти стандарты формулируют протоколы для обеспечения доступа к общим X-ресурсам, таким как экран и фокус ввода . Приложения запрашивают доступ, а оконный менеджер разрешает или запрещает его. Связь происходит через свойства X и сообщения клиента .EWMH — это комплексный набор протоколов для реализации среды рабочего стола . Он определяет как обязательные, так и дополнительные протоколы. Оконный менеджер может выбрать реализацию виртуальных рабочих столов или многоуровневый порядок наложения , но если это так, то EWMH определяет, как это передается.

Обзор протокола

[ редактировать ]

Все идентификаторы протоколов EWMH начинаются с пяти букв.префикс _NET_.

Свойства корневого окна

[ редактировать ]

WM должен обновить набор свойств корневого окна:

_NET_SUPPORTED
перечисляет все протоколы EWMH, поддерживаемые этим WM.
_NET_CLIENT_LIST
выводит список всех окон приложений, управляемых этим WM.
_NET_NUMBER_OF_DESKTOPS
указывает количество виртуальных рабочих столов.
_NET_DESKTOP_GEOMETRY
определяет общий размер всех рабочих столов.
_NET_DESKTOP_VIEWPORT
определяет верхний левый угол каждого рабочего стола.
_NET_CURRENT_DESKTOP
дает индекс текущего рабочего стола.
_NET_DESKTOP_NAMES
выводит список имен всех виртуальных рабочих столов.
_NET_ACTIVE_WINDOW
дает текущее активное окно.
_NET_WORKAREA
содержит геометрию для каждого рабочего стола.
_NET_SUPPORTING_WM_CHECK
выдает окно активного WM.
_NET_VIRTUAL_ROOTS
если WM поддерживает виртуальные корневые окна.
_NET_DESKTOP_LAYOUT
показывает макет активного пейджера.
_NET_SHOWING_DESKTOP
равен 1 для режима «показа рабочего стола».

Клиентские сообщения

[ редактировать ]

Приложение может отправлять клиентские сообщения оконному менеджеру:

_NET_WM_STATE
изменить состояние окна приложения.
_NET_ACTIVE_WINDOW
для активации окна приложения.
_NET_SHOWING_DESKTOP
переключает отображение окон приложений.
_NET_CLOSE_WINDOW
закрыть окно приложения.
_NET_WM_MOVERESIZE
для интерактивного изменения размера окна приложения.
_NET_MOVERESIZE_WINDOW
для немедленного изменения размера окна приложения.
_NET_REQUEST_FRAME_EXTENTS
сверяется с размерами границ кадра.
_NET_WM_FULLSCREEN_MONITORS
определяет мониторы для полноэкранного окна.

Если WM поддерживает стекирование окон:

_NET_RESTACK_WINDOW
просит изменить порядок расположения окон.

Если WM поддерживает виртуальные рабочие столы:

_NET_CURRENT_DESKTOP
меняет текущий рабочий стол.
_NET_NUMBER_OF_DESKTOPS
меняет количество рабочих столов.

WM может игнорировать эти сообщения:

_NET_DESKTOP_GEOMETRY
изменяет размер всех рабочих столов.
_NET_DESKTOP_VIEWPORT
изменяет область просмотра текущего рабочего стола.

Свойства окна

[ редактировать ]

EWMH определяет следующие свойства окна приложения:

_NET_WM_NAME
заголовок окна.
_NET_WM_VISIBLE_NAME
заголовок окна, показанный WM.
_NET_WM_ICON_NAME
название иконы.
_NET_WM_VISIBLE_ICON_NAME
заголовок значка, показанный WM.
_NET_WM_DESKTOP
рабочий стол, на котором находится окно.
_NET_WM_WINDOW_TYPE
функциональный тип окна.
_NET_WM_STATE
текущее состояние окна.
_NET_WM_ALLOWED_ACTIONS
список поддерживаемых пользовательских операций.
_NET_WM_STRUT
если окно желает зарезервировать место по краю.
_NET_WM_STRUT_PARTIAL
Детали зарезервированного пространства по краю экрана.
_NET_WM_ICON_GEOMETRY
геометрия возможной иконки.
_NET_WM_ICON
массив возможных иконок для клиента.
_NET_WM_PID
идентификатор процесса клиента, владеющего этим окном.
_NET_WM_HANDLED_ICONS
предоставляет ли пейджер значки.
_NET_WM_USER_TIME
время последней активности пользователя в этом окне.
_NET_WM_USER_TIME_WINDOW
окно, в котором отображается активность пользователя.
_NET_FRAME_EXTENTS
размеры левого, правого, верхнего и нижнего кадра.
_NET_WM_OPAQUE_REGION
какие области окна полностью непрозрачны.
_NET_WM_BYPASS_COMPOSITOR
запрашивает, чтобы окно было некомпозитным.

Состояния окон

[ редактировать ]

ICCCM определяет только три различных состояния, в которых может находиться окно:

  1. Снято,
  2. Нормальный,
  3. Знаковый.

Кроме того, он поддерживает Urgent флагдля запроса внимания пользователя.

EWMH определяет тринадцать флагов состояния окна:

  • Вверху: показать окно поверх других,
  • Ниже: показать окно ниже других,
  • DemandsAttention: то же, что и флаг срочности,
  • В фокусе: окно имеет фокус ввода,
  • Полноэкранный режим: показать окно в полноэкранном режиме,
  • Скрыто: окно не отображается,
  • MaximizedHorizontal: окно растягивается по горизонтали,
  • MaximizedVertical: окно растягивается вертикально,
  • Модальное: окно представляет собой модальное всплывающее окно,
  • Затененный: окно закатано,
  • SkipPager: окно не должно отображаться на пейджере,
  • SkipTaskbar: окно должно игнорироваться панелью задач,
  • Прикреплено: окно должно отображаться на всех виртуальных рабочих столах.

Дополнительные протоколы

[ редактировать ]
_NET_WM_PING
WM может использовать это, чтобы проверить, жив ли клиент.
_NET_WM_SYNC_REQUEST
для синхронизации перерисовки при изменении размера.
_NET_WM_FULL_PLACEMENT
WM будет обрабатывать любое размещение окон.

Список оконных менеджеров, поддерживающих расширенные подсказки оконного менеджера

[ редактировать ]

Тайлинг и динамические оконные менеджеры

[ редактировать ]

Стекирование оконных менеджеров

[ редактировать ]

Другие оконные менеджеры

[ редактировать ]

Примечания и ссылки

[ редактировать ]
  1. ^ «Нет WM — Черный ящик» . Архивировано из оригинала 1 октября 2007 г. Проверено 29 сентября 2007 г.
  2. ^ "polachok/echinus: README - 3. О панелях и пейджерах" . Гитхаб . Проверено 19 августа 2022 г.
  3. ^ «i3 _NET_SUPPORTED» . Гитхаб . Проверено 14 февраля 2021 г.
  4. ^ «Исправлена ​​настройка свойств _NET_SUPPORTING_WM_CHECK и _NET_SUPPORTED» . Гитхаб . Проверено 19 августа 2022 г.
  5. ^ «Что такое тонкое?» . Проверено 19 августа 2022 г.
  6. ^ «BurntSushi/wingo: СОБЛЮДЕНИЕ – EWMH» . Гитхаб . Проверено 19 августа 2022 г.
  7. ^ «Черный ящик СООТВЕТСТВИЕ» . Гитхаб . Проверено 15 февраля 2021 г.
  8. ^ «Изменения в ctwm 4.0.0» .
  9. ^ «Поддержка Fluxbox EWMH» . Архивировано из оригинала 19 августа 2009 г. Проверено 9 сентября 2009 г.
  10. ^ «Расширенный оконный менеджер намекает на поддержку FVWM» .
  11. ^ «ФВВМ – Особенности» .
  12. ^ «IceWM СООТВЕТСТВИЕ» . Гитхаб . Проверено 28 декабря 2020 г.
  13. ^ «joewing.net | Поддержка JWM EWMH» . Проверено 15 февраля 2021 г.
  14. ^ «Метасити КОМПЛААНС» . Проверено 15 февраля 2021 г.
  15. ^ «СООТВЕТСТВИЕ Openbox» . Гитхаб . Проверено 15 февраля 2021 г.
  16. ^ стандарты xfwm4
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 216eedc51cf17d6ddc1bf56968270244__1717101420
URL1:https://arc.ask3.ru/arc/aa/21/44/216eedc51cf17d6ddc1bf56968270244.html
Заголовок, (Title) документа по адресу, URL1:
Extended Window Manager Hints - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)