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/msgque…
==============================================================================
--- 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/window…
==============================================================================
--- 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: