about summary refs log tree commit diff
path: root/src/engine/client
diff options
context:
space:
mode:
authorJakob Fries <jakob.fries@gmail.com>2007-05-27 18:14:24 +0000
committerJakob Fries <jakob.fries@gmail.com>2007-05-27 18:14:24 +0000
commit741d700907ab35eb09b81eda3fda7baae32a8726 (patch)
tree86f2f0db5300ae29b5ba7cf329c39e649e1aa62b /src/engine/client
parent9ec0459741784dc59509a1789b0f427f878cd53b (diff)
downloadzcatch-741d700907ab35eb09b81eda3fda7baae32a8726.tar.gz
zcatch-741d700907ab35eb09b81eda3fda7baae32a8726.zip
new gui things
Diffstat (limited to 'src/engine/client')
-rw-r--r--src/engine/client/ui.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/engine/client/ui.cpp b/src/engine/client/ui.cpp
index 3353feca..0f42e435 100644
--- a/src/engine/client/ui.cpp
+++ b/src/engine/client/ui.cpp
@@ -97,12 +97,19 @@ int ui_do_button(void *id, const char *text, int checked, float x, float y, floa
 			ui_set_active_item(id);
 	}
 
+	// this gets rid of an annoying bug :<
+	if (!inside && ui_active_item() == id && !ui_mouse_button(0))
+		ui_set_active_item(0);
+
 	if(ui_active_item() == id && ui_hot_item() == id && !ui_mouse_button(0))
 	{
 		ui_set_active_item(0);
 		r = 1;
 	}
 
+	if (!inside && ui_hot_item() == id)
+		ui_set_hot_item(0);
+
     draw_func(id, text, checked, x, y, w, h, extra);
 
     return r;