IT-lexikon › Programmering › ConfigureNotify

ConfigureNotify

Programmering In English → Uppdaterad: 2026-10-10

X11-händelsen som berättar att ett fönster faktiskt fått ny position, storlek, kantbredd eller plats i staplingsordningen — efter det att det hänt, inte före.

Ett X-program som vill veta sin egen storlek väljer StructureNotifyMask på fönstret och får en ConfigureNotify varje gång geometrin ändras, med x, y, bredd, höjd, kantbredd, syskonet det ligger ovanför och flaggan för override-redirect. Det är signalen att räkna om layouten och rita om. En förälder som väljer SubstructureNotifyMask får samma händelse för alla sina barn. Programmen lärde sig snabbt att slå ihop dem: ett musdrag i ett fönsterhörn ger dussintals i sekunden, och den som ritar om för varje hinner aldrig ikapp.

Fällan kommer med reparenting. När fönsterhanteraren lagt en ram runt klienten är koordinaterna i händelsen relativa ramen, inte skärmen, och flyttas ramen flyttas klienten inte alls i förälderns ögon. ICCCM kräver därför att fönsterhanteraren skickar en syntetisk ConfigureNotify, igenkänd på send_event, med rotrelativa koordinater. Program som litar på den riktiga händelsen och ignorerar den syntetiska placerar sina menyer konsekvent några pixlar fel.

← Tillbaka till lexikonet