[3/3] comctl32: LVN_ITEMCHANGED notification should be sent for each item when group selected for ~LVS_OWNERDATA

Nikolay Sivov bunglehead at gmail.com
Sun Mar 8 17:57:48 CDT 2009


http://bugs.winehq.org/show_bug.cgi?id=17564

Patch fixes another part of bug 17564.

Changelog:
    - send selection notifications for each item when not in LVS_OWNERDATA style.

>From e2b7732f4d6daef4b732b9fa2ebf1398b001a233 Mon Sep 17 00:00:00 2001
From: Nikolay Sivov <bunglehead at gmail.com>
Date: Sun, 8 Mar 2009 18:45:12 -0400
Subject: LVN_ITEMCHANGED notification should be sent for each item when group selected for ~LVS_OWNERDATA

---
 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 661b74c..3c6b713 100644
--- a/dlls/comctl32/listview.c
+++ b/dlls/comctl32/listview.c
@@ -3170,8 +3170,10 @@ static void LISTVIEW_SetGroupSelection(LISTVIEW_INFO *infoPtr, INT nItem)
 	iterator_destroy(&i);
     }
 
+    /* disable per item notifications on LVS_OWNERDATA style,
+       single LVN_ODSTATECHANGED should be used */
     bOldChange = infoPtr->bDoChangeNotify;
-    infoPtr->bDoChangeNotify = FALSE;
+    if (infoPtr->dwStyle & LVS_OWNERDATA) infoPtr->bDoChangeNotify = FALSE;
 
     LISTVIEW_DeselectAllSkipItems(infoPtr, selection);
 
-- 
1.5.6.5





More information about the wine-patches mailing list