Package: gdk

Function gdk-window-composited

Lambda List

gdk-window-composited (window)

Syntax

(gdk-window-composited window) => composited
(setf (gdk-window-composited window) composited)

Arguments

window -- a gdk-window object
composited -- true to set window as composited

Details

The function gdk-window-compositeddetermines whether window is composited. The function (setf gdk-window-composited) sets a window as composited, or unsets it.

Composited windows do not automatically have their contents drawn to the screen. Drawing is redirected to an offscreen buffer and an expose event is emitted on the parent of the composited window. It is the responsibility of the parent's expose handler to manually merge the off-screen content onto the screen in whatever way it sees fit.

It only makes sense for child windows to be composited. See the function gdk-window-set-opacity if you need translucent toplevel windows.

An additional effect of this call is that the area of this window is no longer clipped from regions marked for invalidation on its parent. Draws done on the parent window are also no longer clipped by the child.

This call is only supported on some systems, currently, only X11 with new enough Xcomposite and Xdamage extensions. You must call the function gdk-display-supports-composite to check if setting a window as composited is supported before attempting to do so.

Warning

The function gdk-window-composited has been deprecated since version 3.16 and should not be used in newly written code. Compositing is an outdated technology that only ever worked on X11.
 

See also

2020-9-22