32
GdkWindowObject *private = (GdkWindowObject *)window;
33
GdkWindowImplQuartz *impl = (GdkWindowImplQuartz *)private->impl;
36
GdkRegion *intersection;
39
/* We will intersect the known region that needs display with the given
40
* area. This intersection will be translated by dx, dy. For the end
41
* result, we will also set that it needs display.
44
if (!impl->needs_display_region)
47
intersection = gdk_region_copy (impl->needs_display_region);
48
gdk_region_intersect (intersection, area);
49
gdk_region_offset (intersection, dx, dy);
51
gdk_region_get_rectangles (intersection, &rects, &n_rects);
53
for (i = 0; i < n_rects; i++)
54
_gdk_quartz_window_set_needs_display_in_rect (window, &rects[i]);
57
gdk_region_destroy (intersection);