[PATCH 1/1] Update item width every time new item is inserted. This prevents retaining previously stored width and unexpected item displaying collapsing with ending ellipsis.

Nikolay Sivov bunglehead at gmail.com
Wed Dec 9 06:17:12 CST 2009


---
 dlls/comctl32/listview.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/dlls/comctl32/listview.c b/dlls/comctl32/listview.c
index 8f6db54..3d32708 100644
--- a/dlls/comctl32/listview.c
+++ b/dlls/comctl32/listview.c
@@ -2834,6 +2834,8 @@ static INT LISTVIEW_CalculateItemWidth(const LISTVIEW_INFO *infoPtr)
 	    nItemWidth += WIDTH_PADDING;
     }
 
+    TRACE("nItemWidth=%d\n", nItemWidth);
+
     return nItemWidth;
 }
 
@@ -7476,7 +7478,7 @@ static INT LISTVIEW_InsertItemT(LISTVIEW_INFO *infoPtr, const LVITEMW *lpLVItem,
     TRACE(" inserting at %d, sorted=%d, count=%d, iItem=%d\n", nItem, is_sorted, infoPtr->nItemCount, lpLVItem->iItem);
     nItem = DPA_InsertPtr( infoPtr->hdpaItems, nItem, hdpaSubItems );
     if (nItem == -1) goto fail;
-    if (infoPtr->nItemCount++ == 0) LISTVIEW_UpdateItemSize(infoPtr);
+    if (++infoPtr->nItemCount > 0) LISTVIEW_UpdateItemSize(infoPtr);
 
     /* shift indices first so they don't get tangled */
     LISTVIEW_ShiftIndices(infoPtr, nItem, 1);
-- 
1.5.6.5


--=-copTB6PwKz0Fn7Crt957--




More information about the wine-patches mailing list