Suppress NS_MOUSE move on WIN32 if the mouse hasn't actually moved. b=113627 r=rod sr=attinasi

git-svn-id: svn://10.0.0.236/trunk@109793 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
kmcclusk%netscape.com 2001-12-06 02:55:06 +00:00
parent f8727daf08
commit aa22abfbe1

View File

@ -202,6 +202,7 @@ static UINT gHookTimerId = 0;
// for figuring out 1 - 3 Clicks
////////////////////////////////////////////////////
static POINT gLastMousePoint;
static POINT gLastMouseMovePoint;
static LONG gLastMouseDownTime = 0L;
static LONG gLastClickCount = 0L;
////////////////////////////////////////////////////
@ -4327,6 +4328,17 @@ PRBool nsWindow::DispatchMouseEvent(PRUint32 aEventType, nsPoint* aPoint)
PRBool insideMovementThreshold = (abs(gLastMousePoint.x - mp.x) < (short)::GetSystemMetrics(SM_CXDOUBLECLK)) &&
(abs(gLastMousePoint.y - mp.y) < (short)::GetSystemMetrics(SM_CYDOUBLECLK));
// Supress mouse moves caused by widget creation
if ((aEventType == NS_MOUSE_MOVE) &&
(gLastMouseMovePoint.x == mp.x) &&
(gLastMouseMovePoint.y == mp.y))
{
return result;
} else {
gLastMouseMovePoint.x = mp.x;
gLastMouseMovePoint.y = mp.y;
}
// we're going to time double-clicks from mouse *up* to next mouse *down*
if (aEventType == NS_MOUSE_LEFT_DOUBLECLICK) {
event.message = NS_MOUSE_LEFT_BUTTON_DOWN;