Index: gaim/src/gtkroomlist.c
===================================================================
--- gaim.orig/src/gtkroomlist.c	2005-08-13 01:53:28.000000000 +0200
+++ gaim/src/gtkroomlist.c	2005-08-19 21:37:26.225117816 +0200
@@ -129,7 +129,9 @@
 	gtk_container_add(GTK_CONTAINER(dialog->sw), rl->tree);
 
 	gtk_widget_set_sensitive(dialog->stop_button, TRUE);
+	gtk_widget_show(dialog->stop_button);
 	gtk_widget_set_sensitive(dialog->list_button, FALSE);
+	gtk_widget_hide(dialog->list_button);
 	gtk_widget_set_sensitive(dialog->join_button, FALSE);
 }
 
@@ -141,7 +143,9 @@
 		gtk_widget_set_sensitive(dialog->account_widget, TRUE);
 
 	gtk_widget_set_sensitive(dialog->stop_button, FALSE);
+	gtk_widget_hide(dialog->stop_button);
 	gtk_widget_set_sensitive(dialog->list_button, TRUE);
+	gtk_widget_show(dialog->list_button);
 	gtk_widget_set_sensitive(dialog->join_button, FALSE);
 }
 
@@ -396,7 +400,7 @@
 	g_signal_connect(G_OBJECT(dialog->stop_button), "clicked",
 	                 G_CALLBACK(stop_button_cb), dialog);
 	gtk_widget_set_sensitive(dialog->stop_button, FALSE);
-	gtk_widget_show(dialog->stop_button);
+	//gtk_widget_show(dialog->stop_button);
 
 	/* list button */
 	dialog->list_button = gtk_button_new_with_mnemonic(_("_Get List"));
@@ -415,11 +419,12 @@
 	gtk_widget_show(dialog->join_button);
 
 	/* close button */
-	dialog->close_button = gtk_button_new_from_stock(GTK_STOCK_CLOSE);
+	//We can do without the close button to save screen estate
+	/*dialog->close_button = gtk_button_new_from_stock(GTK_STOCK_CLOSE);
 	gtk_box_pack_start(GTK_BOX(bbox), dialog->close_button, FALSE, FALSE, 0);
 	g_signal_connect(G_OBJECT(dialog->close_button), "clicked",
 					 G_CALLBACK(close_button_cb), dialog);
-	gtk_widget_show(dialog->close_button);
+	gtk_widget_show(dialog->close_button);*/
 
 	/* show the dialog window and return the dialog */
 	gtk_widget_show(dialog->window);
@@ -683,14 +688,18 @@
 		if (rl->dialog->account_widget)
 			gtk_widget_set_sensitive(rl->dialog->account_widget, FALSE);
 		gtk_widget_set_sensitive(rl->dialog->stop_button, TRUE);
+		gtk_widget_show(rl->dialog->stop_button);
 		gtk_widget_set_sensitive(rl->dialog->list_button, FALSE);
+		gtk_widget_hide(rl->dialog->list_button);
 	} else {
 		rl->dialog->pg_needs_pulse = FALSE;
 		gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(rl->dialog->progress), 0.0);
 		if (rl->dialog->account_widget)
 			gtk_widget_set_sensitive(rl->dialog->account_widget, TRUE);
 		gtk_widget_set_sensitive(rl->dialog->stop_button, FALSE);
+		gtk_widget_hide(rl->dialog->stop_button);
 		gtk_widget_set_sensitive(rl->dialog->list_button, TRUE);
+		gtk_widget_show(rl->dialog->list_button);
 	}
 }