diff src/buddy.c @ 935:5e6ca3dd4d02

[gaim-migrate @ 945] yay. thanks bmiller committer: Tailor Script <tailor@pidgin.im>
author Eric Warmenhoven <eric@warmenhoven.org>
date Fri, 22 Sep 2000 10:16:40 +0000
parents d2e865d64dd8
children 9fca1293f871
line wrap: on
line diff
--- a/src/buddy.c	Thu Sep 21 19:21:35 2000 +0000
+++ b/src/buddy.c	Fri Sep 22 10:16:40 2000 +0000
@@ -1045,6 +1045,30 @@
 	show_add_group();
 }
 
+static void im_callback(GtkWidget *widget, GtkTree *tree)
+{
+	GList *i;
+	struct buddy *b = NULL;
+	struct conversation *c;
+	i = GTK_TREE_SELECTION(tree);
+	if (i) {
+		b = gtk_object_get_user_data(GTK_OBJECT(i->data));
+        } else {
+		show_im_dialog();
+		return;
+        }
+	if (!b->name)
+		return;
+
+        c = find_conversation(b->name);
+	if (c == NULL) {
+		c = new_conversation(b->name);
+	} else {
+		gdk_window_raise(c->window->window);
+	}
+}
+	
+
 static void info_callback(GtkWidget *widget, GtkTree *tree)
 {
 	GList *i;
@@ -1053,6 +1077,7 @@
 	if (i) {
 		b = gtk_object_get_user_data(GTK_OBJECT(i->data));
         } else {
+		show_info_dialog();
 		return;
         }
 	if (!b->name)
@@ -1771,7 +1796,7 @@
 		gtk_box_pack_start(GTK_BOX(imchatbox), chatbutton, TRUE, TRUE, 0);
 		gtk_container_border_width(GTK_CONTAINER(imchatbox), 10);
 
-		gtk_signal_connect(GTK_OBJECT(imbutton), "clicked", GTK_SIGNAL_FUNC(show_im_dialog), buddies);
+		gtk_signal_connect(GTK_OBJECT(imbutton), "clicked", GTK_SIGNAL_FUNC(im_callback), buddies);
 		gtk_signal_connect(GTK_OBJECT(infobutton), "clicked", GTK_SIGNAL_FUNC(info_callback), buddies);
 		gtk_signal_connect(GTK_OBJECT(chatbutton), "clicked", GTK_SIGNAL_FUNC(chat_callback), buddies);