Avoid resetting the background color when clearing out blank areas, as it may have been set to something other than COLOR_WINDOW by the application.
diff --git a/controls/listbox.c b/controls/listbox.c index 4f489cb..5f9f281 100644 --- a/controls/listbox.c +++ b/controls/listbox.c
@@ -988,7 +988,6 @@ if (!IS_OWNERDRAW(descr)) { /* Clear the bottom of the column */ - SetBkColor( hdc, GetSysColor( COLOR_WINDOW ) ); if (rect.top < descr->height) { rect.bottom = descr->height; @@ -1018,7 +1017,6 @@ if (!IS_OWNERDRAW(descr)) { /* Clear the remainder of the client area */ - SetBkColor( hdc, GetSysColor( COLOR_WINDOW ) ); if (rect.top < descr->height) { rect.bottom = descr->height;