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

MapNotify

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

События X11 MapNotify и UnmapNotify сообщают, что окно получило право появиться на экране — или перестало его иметь.

Создание окна в X не делает его видимым. Окно отображается (mapped) только после вызова XMapWindow, да и тогда оно видно лишь при условии, что отображены и все предки, — в X такое окно называют viewable. Тот, кто выбрал StructureNotifyMask на окне или SubstructureNotifyMask на его родителе, получает MapNotify, когда это происходит, и UnmapNotify, когда окно снова уходит с экрана. Если оконный менеджер уже держит SubstructureRedirect на корневом окне, отображения не происходит вовсе: менеджер получает MapRequest и решает сам.

Неприятный частный случай — изъятие окна (withdrawal). Свёрнутый клиент уже не отображён, так что обычный UnmapNotify просто не придёт. Поэтому ICCCM требует, чтобы клиент, изымающий окно, отправил ещё и синтетический UnmapNotify корневому окну — иначе оконный менеджер продолжит считать, что значок принадлежит живой программе.

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