Listview X11

Dimitrie O. Paun dpaun at rogers.com
Thu Oct 24 13:59:26 CDT 2002


This one reintroduces some of the flicker eliminated
by X7 :/

ChangeLog
  We can avoid flicker on column resize only if it's left align.

--- dlls/comctl32/listview.c.X10	Thu Oct 24 14:29:46 2002
+++ dlls/comctl32/listview.c	Thu Oct 24 14:33:33 2002
@@ -7665,8 +7665,12 @@
 		LISTVIEW_ScrollColumns(infoPtr, lpnmh->iItem + 1, dx);
 		if (uView == LVS_REPORT && is_redrawing(infoPtr))
 		{
-		    rcCol.right = min (rcCol.right, lpColumnInfo->rcHeader.right);
-		    rcCol.left = max (rcCol.left, rcCol.right - 3 * infoPtr->ntmAveCharWidth);
+		    /* this trick works for left aligned columns only */
+		    if ((lpColumnInfo->fmt & LVCFMT_JUSTIFYMASK) == LVCFMT_LEFT)
+		    {
+			rcCol.right = min (rcCol.right, lpColumnInfo->rcHeader.right);
+			rcCol.left = max (rcCol.left, rcCol.right - 3 * infoPtr->ntmAveCharWidth);
+		    }
 		    rcCol.top = infoPtr->rcList.top;
 		    rcCol.bottom = infoPtr->rcList.bottom;
 		    LISTVIEW_InvalidateRect(infoPtr, &rcCol);


-- 
Dimi.




More information about the wine-patches mailing list