public void invalidate_maybe_recurse (Region region, WindowChildFunc? child_func)

Adds region to the update area for this.

The update area is the region that needs to be redrawn, or “dirty region.” The call process_updates sends one or more expose events to the window, which together cover the entire update area. An application would normally redraw the contents of this in response to those expose events.

GDK will call process_all_updates on your behalf whenever your program returns to the main loop and becomes idle, so normally there’s no need to do that manually, you just need to invalidate regions that you know should be redrawn.

The child_func parameter controls whether the region of each child window that intersects region will also be invalidated. Only children for which child_func returns TRUE will have the area invalidated.



a Window


a Region


function to use to decide if to recurse to a child, null means never recurse.


data passed to child_func