gdk: Rewrite background handling

Now the window background is a cairo_pattern_t. The backends will try to
set this as good as they can on the windowing system, but no guarantees
are made on wether the windowing system supports the pattern.

Also gets rid of GDK_NO_BG as undefined behavior is not a good idea to
support, and GDK_NO_BG effectively made the window's contents undefined.
It wasn't effectively used in GTK anyway.
This commit is contained in:
Benjamin Otte
2010-08-15 13:49:30 +02:00
parent c250b3fe1d
commit 2c1633699f
11 changed files with 144 additions and 288 deletions

View File

@ -152,18 +152,6 @@ tmp_unset_bg (GdkWindow *window)
impl = GDK_WINDOW_IMPL_WIN32 (obj->impl);
impl->no_bg = TRUE;
/*
* The X version sets background = None to avoid updateing for a moment.
* Not sure if this could really emulate it.
*/
if (obj->bg_pixmap != GDK_NO_BG)
{
///* handled in WM_ERASEBKGRND proceesing */;
//HDC hdc = GetDC (GDK_WINDOW_HWND (window));
//erase_background (window, hdc);
}
}
static void