From 9b057494d082094162ac796cbc7f059d9b21e9ec Mon Sep 17 00:00:00 2001 From: Lei Zhang Date: Wed, 29 Oct 2008 01:57:54 -0700 Subject: [PATCH] comctl32: Get rid of DragDetect. --- dlls/comctl32/listview.c | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/dlls/comctl32/listview.c b/dlls/comctl32/listview.c index 55fb8487738..d218a5ca7f0 100644 --- a/dlls/comctl32/listview.c +++ b/dlls/comctl32/listview.c @@ -3326,16 +3326,20 @@ static LRESULT LISTVIEW_MouseMove(LISTVIEW_INFO *infoPtr, WORD fwKeys, INT x, IN if (infoPtr->bLButtonDown) { - MSG msg; - BOOL skip = FALSE; - /* Check to see if we got a WM_LBUTTONUP, and skip the DragDetect. - * Otherwise, DragDetect will eat it. - */ - if (PeekMessageW(&msg, 0, WM_MOUSEFIRST, WM_MOUSELAST, PM_NOREMOVE)) - if (msg.message == WM_LBUTTONUP) - skip = TRUE; + POINT tmp; + RECT rect; + WORD wDragWidth = GetSystemMetrics(SM_CXDRAG); + WORD wDragHeight= GetSystemMetrics(SM_CYDRAG); - if (!skip && DragDetect(infoPtr->hwndSelf, infoPtr->ptClickPos)) + rect.left = infoPtr->ptClickPos.x - wDragWidth; + rect.right = infoPtr->ptClickPos.x + wDragWidth; + rect.top = infoPtr->ptClickPos.y - wDragHeight; + rect.bottom = infoPtr->ptClickPos.y + wDragHeight; + + tmp.x = x; + tmp.y = y; + + if (!PtInRect(&rect, tmp)) { LVHITTESTINFO lvHitTestInfo; NMLISTVIEW nmlv;