[3/4] comctl32/listview: Fix visibility computation in details view

Nikolay Sivov bunglehead at gmail.com
Mon Aug 3 15:55:32 CDT 2009


Changelog:
    - Fix visibility computation in details view

>From e0229fe8ebea14beba5dc355d95e2ce348446a1b Mon Sep 17 00:00:00 2001
From: Nikolay Sivov <bunglehead at gmail.com>
Date: Tue, 4 Aug 2009 00:34:51 +0400
Subject: Fix visibility computation in details view

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

diff --git a/dlls/comctl32/listview.c b/dlls/comctl32/listview.c
index 0a862c8..6dea474 100644
--- a/dlls/comctl32/listview.c
+++ b/dlls/comctl32/listview.c
@@ -1402,7 +1402,7 @@ static BOOL iterator_visibleitems(ITERATOR *i, const LISTVIEW_INFO *infoPtr, HDC
     while(iterator_next(i))
     {
 	LISTVIEW_GetItemOrigin(infoPtr, i->nItem, &Position);
-	rcItem.left = Position.x + Origin.x;
+	rcItem.left = (infoPtr->uView == LV_VIEW_DETAILS) ? Origin.x : Position.x + Origin.x;
 	rcItem.top = Position.y + Origin.y;
 	rcItem.right = rcItem.left + infoPtr->nItemWidth;
 	rcItem.bottom = rcItem.top + infoPtr->nItemHeight;
@@ -4376,7 +4376,7 @@ static void LISTVIEW_RefreshReport(LISTVIEW_INFO *infoPtr, ITERATOR *i, HDC hdc,
 	    {
 		rcItem.top = 0;
 	        rcItem.bottom = infoPtr->nItemHeight;
-		OffsetRect(&rcItem, Position.x, Position.y);
+		OffsetRect(&rcItem, Origin.x, Position.y);
 		if (!RectVisible(hdc, &rcItem)) continue;
 	    }
 
-- 
1.5.6.5







More information about the wine-patches mailing list