Mouse clicks have to be <10 pixels apart to be considered a double click. Closes #170
This commit is contained in:
@@ -10,8 +10,10 @@ namespace Barotrauma
|
|||||||
static KeyboardState keyboardState, oldKeyboardState;
|
static KeyboardState keyboardState, oldKeyboardState;
|
||||||
|
|
||||||
static double timeSinceClick;
|
static double timeSinceClick;
|
||||||
|
static Point lastClickPosition;
|
||||||
|
|
||||||
const double doubleClickDelay = 0.4;
|
const float DoubleClickDelay = 0.4f;
|
||||||
|
const float MaxDoubleClickDistance = 10.0f;
|
||||||
|
|
||||||
static bool doubleClicked;
|
static bool doubleClicked;
|
||||||
|
|
||||||
@@ -147,11 +149,16 @@ namespace Barotrauma
|
|||||||
|
|
||||||
oldKeyboardState = keyboardState;
|
oldKeyboardState = keyboardState;
|
||||||
keyboardState = Keyboard.GetState();
|
keyboardState = Keyboard.GetState();
|
||||||
|
|
||||||
doubleClicked = false;
|
doubleClicked = false;
|
||||||
if (LeftButtonClicked())
|
if (LeftButtonClicked())
|
||||||
{
|
{
|
||||||
if (timeSinceClick < doubleClickDelay) doubleClicked = true;
|
if (timeSinceClick < DoubleClickDelay &&
|
||||||
|
(mouseState.Position - lastClickPosition).ToVector2().Length() < MaxDoubleClickDistance)
|
||||||
|
{
|
||||||
|
doubleClicked = true;
|
||||||
|
}
|
||||||
|
lastClickPosition = mouseState.Position;
|
||||||
timeSinceClick = 0.0;
|
timeSinceClick = 0.0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user