[CMAKE]
[reactos.git] / dll / win32 / comctl32 / comctl32_ros.diff
index 079c597..d15da08 100644 (file)
@@ -143,7 +143,15 @@ Index: listview.c
 ===================================================================
 --- listview.c (revision 51320)
 +++ listview.c (working copy)
-@@ -1634,8 +1635,19 @@
+@@ -315,6 +315,7 @@
+   COLORREF clrBk;
+   COLORREF clrText;
+   COLORREF clrTextBk;
++  BOOL bDefaultBkColor;
+   /* font */
+   HFONT hDefaultFont;
+@@ -1635,8 +1636,19 @@
  /* used to handle collapse main item column case */
  static inline BOOL LISTVIEW_DrawFocusRect(const LISTVIEW_INFO *infoPtr, HDC hdc)
  {
@@ -165,7 +173,7 @@ Index: listview.c
  }
  
  /* Listview invalidation functions: use _only_ these functions to invalidate */
-@@ -5041,7 +5053,11 @@
+@@ -5042,7 +5054,11 @@
  
      /* Draw marquee rectangle if appropriate */
      if (infoPtr->bMarqueeSelect)
@@ -177,3 +185,65 @@ Index: listview.c
  
      if (cdmode & CDRF_NOTIFYPOSTPAINT)
        notify_postpaint(infoPtr, &nmlvcd);
+@@ -7856,6 +7872,7 @@
+ {
+     TRACE("(clrBk=%x)\n", clrBk);
++    infoPtr->bDefaultBkColor = FALSE;
+     if(infoPtr->clrBk != clrBk) {
+       if (infoPtr->clrBk != CLR_NONE) DeleteObject(infoPtr->hBkBrush);
+       infoPtr->clrBk = clrBk;
+@@ -9248,6 +9265,7 @@
+   infoPtr->clrText = CLR_DEFAULT;
+   infoPtr->clrTextBk = CLR_DEFAULT;
+   LISTVIEW_SetBkColor(infoPtr, comctl32_color.clrWindow);
++  infoPtr->bDefaultBkColor = TRUE;
+   /* set default values */
+   infoPtr->nFocusedItem = -1;
+@@ -11510,6 +11528,11 @@
+   case WM_SYSCOLORCHANGE:
+     COMCTL32_RefreshSysColors();
++    if (infoPtr->bDefaultBkColor)
++    {
++        LISTVIEW_SetBkColor(infoPtr, comctl32_color.clrWindow);
++        infoPtr->bDefaultBkColor = TRUE;
++    }
+     return 0;
+ /*    case WM_TIMER: */
+Index: rebar.c
+===================================================================
+--- rebar.c    (revision 51320)
++++ rebar.c    (working copy)
+@@ -51,7 +51,6 @@
+  *   - WM_QUERYNEWPALETTE
+  *   - WM_RBUTTONDOWN
+  *   - WM_RBUTTONUP
+- *   - WM_SYSCOLORCHANGE
+  *   - WM_VKEYTOITEM
+  *   - WM_WININICHANGE
+  *   Notifications:
+@@ -2540,10 +2539,8 @@
+     /* initialize band */
+     memset(lpBand, 0, sizeof(*lpBand));
+-    lpBand->clrFore = infoPtr->clrText == CLR_NONE ? infoPtr->clrBtnText :
+-                                                     infoPtr->clrText;
+-    lpBand->clrBack = infoPtr->clrBk == CLR_NONE ? infoPtr->clrBtnFace :
+-                                                   infoPtr->clrBk;
++    lpBand->clrFore = infoPtr->clrText;
++    lpBand->clrBack = infoPtr->clrBk;
+     lpBand->iImage = -1;
+     REBAR_CommonSetupBand(infoPtr->hwndSelf, lprbbi, lpBand);
+@@ -3793,6 +3790,8 @@
+         case WM_SYSCOLORCHANGE:
+             COMCTL32_RefreshSysColors();
++            infoPtr->clrBtnText = comctl32_color.clrBtnText;
++            infoPtr->clrBtnFace = comctl32_color.clrBtnFace;
+             return 0;
+ /*      case WM_VKEYTOITEM:     supported according to ControlSpy */