listview

Ulrich Czekalla ulrich.czekalla at utoronto.ca
Thu Sep 2 16:28:31 CDT 2004


ChangeLog:
        Ulrich Czekalla <ulrich at codeweavers.com>
        Handle WM_BUTTONDOWN operations before dragging test
        Don't eat WM_LBUTTONUP message
-------------- next part --------------
Index: dlls/comctl32/listview.c
===================================================================
RCS file: /home/wine/wine/dlls/comctl32/listview.c,v
retrieving revision 1.393
diff -u -r1.393 listview.c
--- dlls/comctl32/listview.c	25 Aug 2004 17:33:01 -0000	1.393
+++ dlls/comctl32/listview.c	2 Sep 2004 21:21:32 -0000
@@ -7927,6 +7927,7 @@
 	    else if (msg.message >= WM_LBUTTONDOWN &&
 		     msg.message <= WM_RBUTTONDBLCLK)
 	    {
+	        DispatchMessageW(&msg);
 		break;
 	    }
 
@@ -8026,20 +8027,6 @@
         }
         return 0;
     }
-    if (LISTVIEW_TrackMouse(infoPtr, lvHitTestInfo.pt))
-    {
-        NMLISTVIEW nmlv;
-
-	ZeroMemory(&nmlv, sizeof(nmlv));
-        nmlv.iItem = nItem;
-        nmlv.ptAction.x = lvHitTestInfo.pt.x;
-        nmlv.ptAction.y = lvHitTestInfo.pt.y;
-
-        notify_listview(infoPtr, LVN_BEGINDRAG, &nmlv);
-
-        return 0;
-    }
-
     if (infoPtr->dwStyle & LVS_SINGLESEL)
     {
       if (LISTVIEW_GetItemState(infoPtr, nItem, LVIS_SELECTED))
@@ -8091,6 +8078,19 @@
 	/* set selection (clears other pre-existing selections) */
         LISTVIEW_SetSelection(infoPtr, nItem);
       }
+    }
+    if (LISTVIEW_TrackMouse(infoPtr, lvHitTestInfo.pt))
+    {
+        NMLISTVIEW nmlv;
+
+	ZeroMemory(&nmlv, sizeof(nmlv));
+        nmlv.iItem = nItem;
+        nmlv.ptAction.x = lvHitTestInfo.pt.x;
+        nmlv.ptAction.y = lvHitTestInfo.pt.y;
+
+        notify_listview(infoPtr, LVN_BEGINDRAG, &nmlv);
+
+        return 0;
     }
   }
   else


More information about the wine-patches mailing list