Author: jimtabor
Date: Fri Dec 12 20:28:20 2014
New Revision: 65619

URL: http://svn.reactos.org/svn/reactos?rev=65619&view=rev
Log:
[Win32k]
- Fix double click on application icons. See CORE-3269.


Modified:
    trunk/reactos/win32ss/user/ntuser/msgqueue.c
    trunk/reactos/win32ss/user/user32/windows/menu.c

Modified: trunk/reactos/win32ss/user/ntuser/msgqueue.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/user/ntuser/msgqueue.c?rev=65619&r1=65618&r2=65619&view=diff
==============================================================================
--- trunk/reactos/win32ss/user/ntuser/msgqueue.c        [iso-8859-1] (original)
+++ trunk/reactos/win32ss/user/ntuser/msgqueue.c        [iso-8859-1] Fri Dec 12 
20:28:20 2014
@@ -1488,7 +1488,7 @@
         if (hittest != HTCLIENT)
         {
             message += WM_NCMOUSEMOVE - WM_MOUSEMOVE;
-            msg->wParam = hittest;
+            msg->wParam = hittest; // Caution! This might break wParam check 
in DblClk.
         }
         else
         {
@@ -1522,7 +1522,8 @@
         {
            if ((msg->message == clk_msg.message) &&
                (msg->hwnd == clk_msg.hwnd) &&
-               (msg->wParam == clk_msg.wParam) &&
+               // Only worry about XButton wParam.
+               (msg->message != WM_XBUTTONDOWN || 
GET_XBUTTON_WPARAM(msg->wParam) == GET_XBUTTON_WPARAM(clk_msg.wParam)) &&
                ((msg->time - clk_msg.time) < (ULONG)gspv.iDblClickTime) &&
                (abs(msg->pt.x - clk_msg.pt.x) < 
UserGetSystemMetrics(SM_CXDOUBLECLK)/2) &&
                (abs(msg->pt.y - clk_msg.pt.y) < 
UserGetSystemMetrics(SM_CYDOUBLECLK)/2))

Modified: trunk/reactos/win32ss/user/user32/windows/menu.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/user/user32/windows/menu.c?rev=65619&r1=65618&r2=65619&view=diff
==============================================================================
--- trunk/reactos/win32ss/user/user32/windows/menu.c    [iso-8859-1] (original)
+++ trunk/reactos/win32ss/user/user32/windows/menu.c    [iso-8859-1] Fri Dec 12 
20:28:20 2014
@@ -3830,6 +3830,7 @@
                     /* Else, end menu tracking */
                     fRemove = MENU_ButtonDown(&mt, hmenu, wFlags);
                     fEndMenu = !fRemove;
+                    if (msg.message == WM_LBUTTONDBLCLK) fEndMenu = TRUE; // 
Must exit or loop forever!
                     break;
 
                 case WM_RBUTTONUP:


Reply via email to