Mikołaj Zalewski : comctl32: header: Invalidate the control after a WM_SETREDRAW with wParam == TRUE.

Alexandre Julliard julliard at wine.codeweavers.com
Thu Oct 12 15:28:44 CDT 2006


Module: wine
Branch: master
Commit: 3f89a71323edbeb528272e3c49ed615c9fa9fbb8
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=3f89a71323edbeb528272e3c49ed615c9fa9fbb8

Author: Mikołaj Zalewski <mikolaj at zalewski.pl>
Date:   Wed Oct 11 20:55:31 2006 +0200

comctl32: header: Invalidate the control after a WM_SETREDRAW with wParam == TRUE.

---

 dlls/comctl32/header.c |   15 +++++++++++++++
 1 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/dlls/comctl32/header.c b/dlls/comctl32/header.c
index 63f91d8..820e72e 100644
--- a/dlls/comctl32/header.c
+++ b/dlls/comctl32/header.c
@@ -1945,6 +1945,18 @@ HEADER_SetFont (HWND hwnd, WPARAM wParam
     return 0;
 }
 
+static LRESULT HEADER_SetRedraw(HWND hwnd, WPARAM wParam, LPARAM lParam)
+{
+    /* ignoring the InvalidateRect calls is handled by user32. But some apps expect
+     * that we invalidate the header and this has to be done manually  */
+    LRESULT ret;
+
+    ret = DefWindowProcW(hwnd, WM_SETREDRAW, wParam, lParam);
+    if (wParam)
+        InvalidateRect(hwnd, NULL, TRUE);
+    return ret;
+}
+
 /* Update the theme handle after a theme change */
 static LRESULT HEADER_ThemeChanged(HWND hwnd)
 {
@@ -2081,6 +2093,9 @@ HEADER_WindowProc (HWND hwnd, UINT msg, 
         case WM_SETFONT:
             return HEADER_SetFont (hwnd, wParam, lParam);
 
+        case WM_SETREDRAW:
+            return HEADER_SetRedraw(hwnd, wParam, lParam);
+
         default:
             if ((msg >= WM_USER) && (msg < WM_APP))
 		ERR("unknown msg %04x wp=%04x lp=%08lx\n",




More information about the wine-cvs mailing list