Submitted by Owen Taylor
Describes a plan for adding the ability to close displays to GTK+-2.2. Some additional particular items that need fixing:
gdk_x11_display_finalize() needs some careful going over; there is a lot of stuff it leaves un-freed. For instance the ClientFilter objects in the client_filters list.
gdk_x11_screen_finalize() also needs a lot of attention.
gdk_display_close() just unrefs currently; it should unref (if the display hasn't already been closed) but has to do a lot more as well.
A lot of caches need to be freed when the display is dispposed; along with ones mentioned in the mail message, a few others are the scratch_image information in gdkimage.c and the pixmap catch in gtktree.c. (Although gtktree.c could just be left, since it's a GTK_ENABLE_BROKEN widget.)