IT-lexicon › Programmeren › ConfigureNotify

ConfigureNotify

Programmeren Svenska → Bijgewerkt: 2026-10-10

De X11-gebeurtenis die meldt dat een venster daadwerkelijk van positie, grootte, randbreedte of stapelvolgorde is veranderd: achteraf, niet vooraf.

Een X-client die zijn eigen afmetingen wil bijhouden, selecteert StructureNotifyMask op zijn venster en krijgt bij elke geometriewijziging een ConfigureNotify, met x, y, breedte, hoogte, randbreedte, het zustervenster waarboven het nu ligt en de override-redirect-vlag. Dat is het signaal om de layout opnieuw op te bouwen en te hertekenen. Een ouder die SubstructureNotifyMask selecteert, ontvangt dezelfde gebeurtenis voor al zijn kinderen. Applicaties leerden vroeg om ze samen te voegen: wie een vensterhoek versleept, veroorzaakt tientallen events per seconde, en een programma dat bij elk daarvan hertekent, loopt nooit bij.

De valkuil komt met reparenting. Zodra de vensterbeheerder een frame om de client heeft gezet, zijn de coördinaten in de gebeurtenis relatief aan dat frame in plaats van aan het scherm, en een verplaatst frame beweegt de client voor zijn eigen ouder helemaal niet. ICCCM verplicht de vensterbeheerder daarom een synthetische ConfigureNotify te sturen, herkenbaar aan send_event, met coördinaten ten opzichte van het rootvenster. Programma's die de echte gebeurtenis vertrouwen en de synthetische negeren, plaatsen hun pop-upmenu's steevast een paar pixels ernaast.

← Terug naar het lexicon