Removed dependencies on the internals of the CLASS structure.
Added support for having both ASCII and Unicode window procedures for
builtin classes.
diff --git a/controls/desktop.c b/controls/desktop.c
index 72e41de..a1b70c1 100644
--- a/controls/desktop.c
+++ b/controls/desktop.c
@@ -96,10 +96,12 @@
(!desktopPtr->fTileWallPaper && ((desktopPtr->bitmapSize.cx < rect.right) ||
(desktopPtr->bitmapSize.cy < rect.bottom))))
{
+ HBRUSH brush = desktopPtr->hbrushPattern;
+ if (!brush) brush = GetClassLongA( hwnd, GCL_HBRBACKGROUND );
/* Set colors in case pattern is a monochrome bitmap */
SetBkColor( hdc, RGB(0,0,0) );
SetTextColor( hdc, GetSysColor(COLOR_BACKGROUND) );
- FillRect( hdc, &rect, desktopPtr->hbrushPattern );
+ FillRect( hdc, &rect, brush );
}
/* Paint wall paper */
@@ -289,7 +291,7 @@
desktopPtr->hbrushPattern = CreatePatternBrush( hbitmap );
DeleteObject( hbitmap );
}
- else desktopPtr->hbrushPattern = CreateSolidBrush( GetSysColor(COLOR_BACKGROUND) );
+ else desktopPtr->hbrushPattern = 0;
WIN_ReleaseDesktop();
return TRUE;
}