Mouse clicks have to be <10 pixels apart to be considered a double click. Closes #170

This commit is contained in:
Joonas Rikkonen
2018-01-09 11:07:37 +02:00
parent 093fb12d0b
commit ac704cdaae

View File

@@ -10,8 +10,10 @@ namespace Barotrauma
static KeyboardState keyboardState, oldKeyboardState;
static double timeSinceClick;
static Point lastClickPosition;
const double doubleClickDelay = 0.4;
const float DoubleClickDelay = 0.4f;
const float MaxDoubleClickDistance = 10.0f;
static bool doubleClicked;
@@ -147,11 +149,16 @@ namespace Barotrauma
oldKeyboardState = keyboardState;
keyboardState = Keyboard.GetState();
doubleClicked = false;
if (LeftButtonClicked())
{
if (timeSinceClick < doubleClickDelay) doubleClicked = true;
if (timeSinceClick < DoubleClickDelay &&
(mouseState.Position - lastClickPosition).ToVector2().Length() < MaxDoubleClickDistance)
{
doubleClicked = true;
}
lastClickPosition = mouseState.Position;
timeSinceClick = 0.0;
}
}