Запутывает _NET_SUPPORTING_WM_CHECK
Я пытаюсь привести мой оконный менеджер в соответствие со спецификациями ICCCM. Я полностью понимаю причину атома _NET_SUPPORTING_WM_CHECK - это гарантирует, что недействительная информация не останется, когда оконный менеджер больше не работает.
Чего я не понимаю, так это того, почему в вспомогательном окне не ожидается появления других атомов, таких как _NET_NUMBER_OF_DESKTOPS, кроме _NET_WM_NAME и _NET_SUPPORTING_WM_CHECK.
Предполагается, что оконные менеджеры устанавливают и перезаписывают данные, но это может вводить в заблуждение в случае, если новый оконный менеджер не соответствует требованиям.
2 ответа
Ну, атомы, о которых вы говорите, не являются ICCCM. Они принадлежат к более новому набору EWMH
Так что в основном это так.
Сначала у нас был ICCCM. Они есть
- старый
- зрелый
- поддерживается большинством оконных менеджеров (полностью или частично)
- легко реализовать
- Unix стандарт
Тогда у нас был EWMH, которые
- новее (GNOME и KDE)
- не многие оконные менеджеры их поддерживают
- более сложный (например, виртуальные рабочие столы)
- Стандарт freedesktop.
Freedesktop хотел сделать EWMH как можно более широким (кроме GNOME и KDE), и именно поэтому большинство атомов ДОЛЖНЫ, а НЕ ДОЛЖНЫ. Они дают возможность небольшому оконному менеджеру заявить о соответствии.
Я думаю, что идея заключается в том, чтобы проверить, поддерживается ли свойство, и использовать его только из корневого окна, если оно поддерживается.
Окно _NET_SUPPORTING_WM_CHECK было добавлено позже, после того, как многие другие свойства уже существовали, если я правильно помню.