diff src/conversation.c @ 3951:32942c49dced

[gaim-migrate @ 4132] finally someone (faceprint) decided to fix the entry focus problem :-) yay faceprint! faceprint: (22:37:45) faceprint: frogs have feets for hands (22:38:05) faceprint: that's about as meaningful as anything else i can come up with committer: Tailor Script <tailor@pidgin.im>
author Luke Schierer <lschiere@pidgin.im>
date Tue, 12 Nov 2002 03:40:19 +0000
parents 0e85ca4516ef
children f118d61fb89a
line wrap: on
line diff
--- a/src/conversation.c	Mon Nov 11 21:57:19 2002 +0000
+++ b/src/conversation.c	Tue Nov 12 03:40:19 2002 +0000
@@ -2581,9 +2581,10 @@
 		c = g_list_nth_data(conversations, page_num);
 	else
 		c = g_list_nth_data(chats, page_num);
+
 	if (c && c->window && c->entry)
-		gtk_window_set_focus(GTK_WINDOW(c->window), c->entry);
-	
+		gtk_widget_grab_focus(c->entry);
+
 	label = c->tab_label;
 
 	if (!label)
@@ -2888,8 +2889,6 @@
 	g_object_set_data(G_OBJECT(c->entry_buffer), "user_data", c);
 	entry = gtk_text_view_new_with_buffer(c->entry_buffer);
 	c->entry = entry;
-	if (!(im_options & OPT_IM_ONE_WINDOW))
-		gtk_window_set_focus(GTK_WINDOW(c->window), c->entry);
 
 	gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(c->entry), GTK_WRAP_WORD);
 
@@ -2995,13 +2994,15 @@
 	gtk_box_reorder_child(GTK_BOX(bbox), c->block, 2);
 	gtk_box_reorder_child(GTK_BOX(bbox), c->add, 3);
 	gtk_box_reorder_child(GTK_BOX(bbox), c->info, 4);
-	
+
 
 	update_buttons_by_protocol(c);
 
-	if (!(im_options & OPT_IM_ONE_WINDOW))
+	gtk_widget_show(win);
+
+	if (!(im_options & OPT_IM_ONE_WINDOW)
+			|| gtk_notebook_get_current_page(GTK_NOTEBOOK(convo_notebook)) == 0)
 		gtk_widget_grab_focus(c->entry);
-	gtk_widget_show(win);
 }
 
 
@@ -3166,7 +3167,7 @@
 					m = m->next;
 				}
 				c = chats->data;
-				gtk_window_set_focus(GTK_WINDOW(c->window), c->entry);
+				gtk_widget_grab_focus(c->entry);
 			} else {
 				if (all_convos)
 					gtk_widget_destroy(all_convos);