diff src/gtkconv.c @ 7949:b356e2a9d7fc

[gaim-migrate @ 8623] Add scrollbars to the text input widgets for away messages and conversations. committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Mon, 29 Dec 2003 05:14:16 +0000
parents 4eb96e3cf633
children fb66c2ee4446
line wrap: on
line diff
--- a/src/gtkconv.c	Mon Dec 29 02:30:38 2003 +0000
+++ b/src/gtkconv.c	Mon Dec 29 05:14:16 2003 +0000
@@ -3514,10 +3514,9 @@
 	GtkWidget *vbox, *hbox;
 	GtkWidget *lbox, *bbox;
 	GtkWidget *label;
-	GtkWidget *sw2;
 	GtkWidget *list;
 	GtkWidget *button;
-	GtkWidget *frame;
+	GtkWidget *sw;
 	GtkListStore *ls;
 	GtkCellRenderer *rend;
 	GtkTreeViewColumn *col;
@@ -3600,12 +3599,12 @@
 	gtk_widget_show(gtkchat->count);
 
 	/* Setup the list of users. */
-	sw2 = gtk_scrolled_window_new(NULL, NULL);
-	gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw2),
+	sw = gtk_scrolled_window_new(NULL, NULL);
+	gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw),
 								   GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
-	gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw2), GTK_SHADOW_IN);
-	gtk_box_pack_start(GTK_BOX(lbox), sw2, TRUE, TRUE, 0);
-	gtk_widget_show(sw2);
+	gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw), GTK_SHADOW_IN);
+	gtk_box_pack_start(GTK_BOX(lbox), sw, TRUE, TRUE, 0);
+	gtk_widget_show(sw);
 
 	ls = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_STRING);
 	gtk_tree_sortable_set_sort_column_id(GTK_TREE_SORTABLE(ls), 1,
@@ -3636,7 +3635,7 @@
 
 	gtkchat->list = list;
 
-	gtk_container_add(GTK_CONTAINER(sw2), list);
+	gtk_container_add(GTK_CONTAINER(sw), list);
 
 	/* Setup the user list toolbar. */
 	bbox = gtk_hbox_new(TRUE, 5);
@@ -3689,36 +3688,37 @@
 					   FALSE, FALSE, 0);
 
 	/* Setup the entry widget. */
-	frame = gtk_frame_new(NULL);
-	gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN);
-	gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, TRUE, 0);
-	gtk_widget_show(frame);
+	sw = gtk_scrolled_window_new(NULL, NULL);
+	gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw),
+								   GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
+	gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw),
+										GTK_SHADOW_IN);
+	gtk_box_pack_start(GTK_BOX(vbox), sw, TRUE, TRUE, 0);
+	gtk_widget_show(sw);
 
 	gtkconv->entry = gtk_imhtml_new(NULL, NULL);
 	gtkconv->entry_buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(gtkconv->entry));
-	g_object_set_data(G_OBJECT(gtkconv->entry_buffer), "user_data", conv);
+	gaim_setup_imhtml(gtkconv->entry);
 	gtk_imhtml_set_editable(GTK_IMHTML(gtkconv->entry), TRUE);
-	gaim_setup_imhtml(gtkconv->entry);
 	default_formatize(conv);
-
 	gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(gtkconv->entry), GTK_WRAP_WORD_CHAR);
 	gtk_widget_set_size_request(gtkconv->entry, -1,
 			MAX(gaim_prefs_get_int("/gaim/gtk/conversations/chat/entry_height"),
 				25));
-
-	/* Connect the signal handlers. */
+	g_object_set_data(G_OBJECT(gtkconv->entry_buffer), "user_data", conv);
+
 	g_signal_connect_swapped(G_OBJECT(gtkconv->entry), "key_press_event",
 							 G_CALLBACK(entry_key_pressed_cb_1),
 							 gtkconv->entry_buffer);
+	g_signal_connect(G_OBJECT(gtkconv->entry), "key_press_event",
+					 G_CALLBACK(entry_key_pressed_cb_2), conv);
 	g_signal_connect_after(G_OBJECT(gtkconv->entry), "button_press_event",
 						   G_CALLBACK(entry_stop_rclick_cb), NULL);
-	g_signal_connect(G_OBJECT(gtkconv->entry), "key_press_event",
-					 G_CALLBACK(entry_key_pressed_cb_2), conv);
 
 	if (gaim_prefs_get_bool("/gaim/gtk/conversations/spellcheck"))
 		gaim_gtk_setup_gtkspell(GTK_TEXT_VIEW(gtkconv->entry));
 
-	gtk_container_add(GTK_CONTAINER(frame), GTK_WIDGET(gtkconv->entry));
+	gtk_container_add(GTK_CONTAINER(sw), GTK_WIDGET(gtkconv->entry));
 	gtk_widget_show(gtkconv->entry);
 
 	/* Setup the bottom button box. */
@@ -3739,7 +3739,7 @@
 	GtkWidget *paned;
 	GtkWidget *vbox;
 	GtkWidget *vbox2;
-	GtkWidget *frame;
+	GtkWidget *sw;
 
 	gtkconv = GAIM_GTK_CONVERSATION(conv);
 	gtkim   = gtkconv->u.im;
@@ -3778,7 +3778,6 @@
 			gaim_prefs_get_bool("/gaim/gtk/conversations/show_timestamps"));
 
 	gaim_setup_imhtml(gtkconv->imhtml);
-
 	gtk_widget_show(gtkconv->imhtml);
 
 	vbox2 = gtk_vbox_new(FALSE, 5);
@@ -3791,21 +3790,24 @@
 					   FALSE, FALSE, 0);
 
 	/* Setup the entry widget. */
-	frame = gtk_frame_new(NULL);
-	gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN);
-	gtk_box_pack_start(GTK_BOX(vbox2), frame, TRUE, TRUE, 0);
-	gtk_widget_show(frame);
+	sw = gtk_scrolled_window_new(NULL, NULL);
+	gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw),
+								   GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
+	gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw),
+										GTK_SHADOW_IN);
+	gtk_box_pack_start(GTK_BOX(vbox2), sw, TRUE, TRUE, 0);
+	gtk_widget_show(sw);
 
 	gtkconv->entry = gtk_imhtml_new(NULL, NULL);
+	gtkconv->entry_buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(gtkconv->entry));
+	gaim_setup_imhtml(gtkconv->entry);
 	gtk_imhtml_set_editable(GTK_IMHTML(gtkconv->entry), TRUE);
-	gaim_setup_imhtml(gtkconv->entry);
 	default_formatize(conv);
-	gtkconv->entry_buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(gtkconv->entry));
-	g_object_set_data(G_OBJECT(gtkconv->entry_buffer), "user_data", conv);
 	gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(gtkconv->entry), GTK_WRAP_WORD_CHAR);
 	gtk_widget_set_size_request(gtkconv->entry, -1,
 			MAX(gaim_prefs_get_int("/gaim/gtk/conversations/im/entry_height"),
 				25));
+	g_object_set_data(G_OBJECT(gtkconv->entry_buffer), "user_data", conv);
 
 	g_signal_connect_swapped(G_OBJECT(gtkconv->entry), "key_press_event",
 							 G_CALLBACK(entry_key_pressed_cb_1),
@@ -3823,7 +3825,7 @@
 	if (gaim_prefs_get_bool("/gaim/gtk/conversations/spellcheck"))
 		gaim_gtk_setup_gtkspell(GTK_TEXT_VIEW(gtkconv->entry));
 
-	gtk_container_add(GTK_CONTAINER(frame), GTK_WIDGET(gtkconv->entry));
+	gtk_container_add(GTK_CONTAINER(sw), GTK_WIDGET(gtkconv->entry));
 	gtk_widget_show(gtkconv->entry);
 
 	gtkconv->bbox = gtk_hbox_new(FALSE, 5);