IT-lexicon › Programmeren › _NET_WM_OPAQUE_REGION

_NET_WM_OPAQUE_REGION

Programmeren Svenska → Bijgewerkt: 2026-10-10

De EWMH-eigenschap waarmee een venster met alfakanaal aangeeft welke rechthoeken echt ondoorzichtig zijn, zodat de compositor alles daarachter niet hoeft te tekenen.

Een venster met een ARGB-visual kan overal transparant zijn, en de compositor weet niet waar. Hij moet het ergste aannemen en alles achter het venster tekenen — elk venster eronder, het bureaublad, alles — voordat hij het venster er bovenop mengt. Dat deed er niet toe zolang transparante vensters een curiositeit waren, maar met de client-side decorations van GTK 3 kreeg elk gewoon programmavenster een alfakanaal voor zijn afgeronde hoeken en schaduw, en plotseling was geen enkel venster meer massief. EWMH 1.5 antwoordde met _NET_WM_OPAQUE_REGION: een lijst rechthoeken van elk vier getallen, die de client op zijn toplevelvenster zet en die beloven dat de pixels erbinnen volledig ondoorzichtig zijn.

De compositor kan die gebieden dan van zijn tekenlijst schrappen en het venster behandelen als elk massief venster, met alleen een dunne doorschijnende rand over. GTK 3 zet de eigenschap automatisch, en Mutter en KWin lezen haar. Wayland nam de les mee en nam het equivalent, wl_surface.set_opaque_region, van meet af aan op in het kernprotocol in plaats van als bijzaak achteraf.

← Terug naar het lexicon