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:
parent
f8727daf08
commit
aa22abfbe1
@ -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;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user