about summary refs log tree commit diff
diff options
context:
space:
mode:
authorChoupom <andycootlapin@hotmail.fr>2010-09-03 19:39:20 +0200
committeroy <Tom_Adams@web.de>2010-09-05 13:50:10 +0200
commit25be8b1be3bfe57a3d7a2c86be68dec4e51b93c3 (patch)
treeb4862995271000997f1baf3f61d38c963e76bbea
parent4123f28bbaa169ba8bb273f813fd7165e4f3a867 (diff)
downloadzcatch-25be8b1be3bfe57a3d7a2c86be68dec4e51b93c3.tar.gz
zcatch-25be8b1be3bfe57a3d7a2c86be68dec4e51b93c3.zip
fixed so clicking 3 times doesn't generate 2 double-clicks
-rw-r--r--src/engine/client/input.cpp8
-rw-r--r--src/game/client/components/menus_demo.cpp1
2 files changed, 8 insertions, 1 deletions
diff --git a/src/engine/client/input.cpp b/src/engine/client/input.cpp
index c6d3f58e..195b78aa 100644
--- a/src/engine/client/input.cpp
+++ b/src/engine/client/input.cpp
@@ -87,7 +87,13 @@ void CInput::MouseModeRelative()
 
 int CInput::MouseDoubleClick()
 {
-	return m_ReleaseDelta < (time_freq() >> 2);
+	if(m_ReleaseDelta >= 0 && m_ReleaseDelta < (time_freq() >> 2))
+	{
+		m_LastRelease = 0;
+		m_ReleaseDelta = -1;
+		return 1;
+	}
+	return 0;
 }
 
 void CInput::ClearKeyStates()
diff --git a/src/game/client/components/menus_demo.cpp b/src/game/client/components/menus_demo.cpp
index 82be758d..45a96d80 100644
--- a/src/game/client/components/menus_demo.cpp
+++ b/src/game/client/components/menus_demo.cpp
@@ -342,6 +342,7 @@ CMenus::CListboxItem CMenus::UiDoListboxNextItem(void *pId, bool Selected)
 			if(m_EnterPressed || (Input()->MouseDoubleClick() && UI()->ActiveItem() == pId))
 			{
 				gs_ListBoxItemActivated = true;
+				UI()->SetActiveItem(0);
 			}
 			else
 			{