src/gtkconv.c

changeset 13281
3558cb15ebb9
parent 13234
1d8e569b2053
child 13326
003ca6d4c290
equal deleted inserted replaced
13280:8d45d67480e6 13281:3558cb15ebb9
3787 GaimConversation *conv = gtkconv->active_conv; 3787 GaimConversation *conv = gtkconv->active_conv;
3788 GaimGtkChatPane *gtkchat; 3788 GaimGtkChatPane *gtkchat;
3789 GaimConnection *gc; 3789 GaimConnection *gc;
3790 GtkWidget *vpaned, *hpaned; 3790 GtkWidget *vpaned, *hpaned;
3791 GtkWidget *vbox, *hbox, *frame; 3791 GtkWidget *vbox, *hbox, *frame;
3792 GtkWidget *imhtml_sw;
3793 GtkPolicyType imhtml_sw_hscroll;
3792 GtkWidget *lbox, *bbox; 3794 GtkWidget *lbox, *bbox;
3793 GtkWidget *label; 3795 GtkWidget *label;
3794 GtkWidget *list; 3796 GtkWidget *list;
3795 GtkWidget *button; 3797 GtkWidget *button;
3796 GtkWidget *sw; 3798 GtkWidget *sw;
3842 hpaned = gtk_hpaned_new(); 3844 hpaned = gtk_hpaned_new();
3843 gtk_box_pack_start(GTK_BOX(vbox), hpaned, TRUE, TRUE, 0); 3845 gtk_box_pack_start(GTK_BOX(vbox), hpaned, TRUE, TRUE, 0);
3844 gtk_widget_show(hpaned); 3846 gtk_widget_show(hpaned);
3845 3847
3846 /* Setup gtkihmtml. */ 3848 /* Setup gtkihmtml. */
3847 frame = gaim_gtk_create_imhtml(FALSE, &gtkconv->imhtml, NULL); 3849 frame = gaim_gtk_create_imhtml(FALSE, &gtkconv->imhtml, NULL, &imhtml_sw);
3848 gtk_widget_set_name(gtkconv->imhtml, "gaim_gtkconv_imhtml"); 3850 gtk_widget_set_name(gtkconv->imhtml, "gaim_gtkconv_imhtml");
3849 gtk_imhtml_show_comments(GTK_IMHTML(gtkconv->imhtml), TRUE); 3851 gtk_imhtml_show_comments(GTK_IMHTML(gtkconv->imhtml), TRUE);
3850 gtk_paned_pack1(GTK_PANED(hpaned), frame, TRUE, TRUE); 3852 gtk_paned_pack1(GTK_PANED(hpaned), frame, TRUE, TRUE);
3851 gtk_widget_show(frame); 3853 gtk_widget_show(frame);
3854 gtk_scrolled_window_get_policy(GTK_SCROLLED_WINDOW(imhtml_sw),
3855 &imhtml_sw_hscroll, NULL);
3856 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(imhtml_sw),
3857 imhtml_sw_hscroll, GTK_POLICY_ALWAYS);
3852 3858
3853 gtk_widget_set_size_request(gtkconv->imhtml, 3859 gtk_widget_set_size_request(gtkconv->imhtml,
3854 gaim_prefs_get_int("/gaim/gtk/conversations/chat/default_width"), 3860 gaim_prefs_get_int("/gaim/gtk/conversations/chat/default_width"),
3855 gaim_prefs_get_int("/gaim/gtk/conversations/chat/default_height")); 3861 gaim_prefs_get_int("/gaim/gtk/conversations/chat/default_height"));
3856 g_signal_connect(G_OBJECT(gtkconv->imhtml), "size-allocate", 3862 g_signal_connect(G_OBJECT(gtkconv->imhtml), "size-allocate",
3991 vbox = gtk_vbox_new(FALSE, GAIM_HIG_BOX_SPACE); 3997 vbox = gtk_vbox_new(FALSE, GAIM_HIG_BOX_SPACE);
3992 gtk_box_pack_end(GTK_BOX(gtkconv->lower_hbox), vbox, TRUE, TRUE, 0); 3998 gtk_box_pack_end(GTK_BOX(gtkconv->lower_hbox), vbox, TRUE, TRUE, 0);
3993 gtk_widget_show(vbox); 3999 gtk_widget_show(vbox);
3994 4000
3995 /* Setup the toolbar, entry widget and all signals */ 4001 /* Setup the toolbar, entry widget and all signals */
3996 frame = gaim_gtk_create_imhtml(TRUE, &gtkconv->entry, &gtkconv->toolbar); 4002 frame = gaim_gtk_create_imhtml(TRUE, &gtkconv->entry, &gtkconv->toolbar, NULL);
3997 gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, TRUE, 0); 4003 gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, TRUE, 0);
3998 gtk_widget_show(frame); 4004 gtk_widget_show(frame);
3999 4005
4000 g_signal_connect(G_OBJECT(gtkconv->entry), "populate-popup", 4006 g_signal_connect(G_OBJECT(gtkconv->entry), "populate-popup",
4001 G_CALLBACK(entry_popup_menu_cb), gtkconv); 4007 G_CALLBACK(entry_popup_menu_cb), gtkconv);
4034 static GtkWidget * 4040 static GtkWidget *
4035 setup_im_pane(GaimGtkConversation *gtkconv) 4041 setup_im_pane(GaimGtkConversation *gtkconv)
4036 { 4042 {
4037 GaimConversation *conv = gtkconv->active_conv; 4043 GaimConversation *conv = gtkconv->active_conv;
4038 GtkWidget *frame; 4044 GtkWidget *frame;
4045 GtkWidget *imhtml_sw;
4046 GtkPolicyType imhtml_sw_hscroll;
4039 GtkWidget *paned; 4047 GtkWidget *paned;
4040 GtkWidget *vbox; 4048 GtkWidget *vbox;
4041 GtkWidget *vbox2; 4049 GtkWidget *vbox2;
4042 GList *focus_chain = NULL; 4050 GList *focus_chain = NULL;
4043 4051
4049 vbox = gtk_vbox_new(FALSE, GAIM_HIG_BOX_SPACE); 4057 vbox = gtk_vbox_new(FALSE, GAIM_HIG_BOX_SPACE);
4050 gtk_paned_pack1(GTK_PANED(paned), vbox, TRUE, TRUE); 4058 gtk_paned_pack1(GTK_PANED(paned), vbox, TRUE, TRUE);
4051 gtk_widget_show(vbox); 4059 gtk_widget_show(vbox);
4052 4060
4053 /* Setup the gtkimhtml widget */ 4061 /* Setup the gtkimhtml widget */
4054 frame = gaim_gtk_create_imhtml(FALSE, &gtkconv->imhtml, NULL); 4062 frame = gaim_gtk_create_imhtml(FALSE, &gtkconv->imhtml, NULL, &imhtml_sw);
4055 gtk_widget_set_name(gtkconv->imhtml, "gaim_gtkconv_imhtml"); 4063 gtk_widget_set_name(gtkconv->imhtml, "gaim_gtkconv_imhtml");
4056 gtk_imhtml_show_comments(GTK_IMHTML(gtkconv->imhtml),TRUE); 4064 gtk_imhtml_show_comments(GTK_IMHTML(gtkconv->imhtml),TRUE);
4057 gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, TRUE, 0); 4065 gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, TRUE, 0);
4058 gtk_widget_show(frame); 4066 gtk_widget_show(frame);
4067 gtk_scrolled_window_get_policy(GTK_SCROLLED_WINDOW(imhtml_sw),
4068 &imhtml_sw_hscroll, NULL);
4069 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(imhtml_sw),
4070 imhtml_sw_hscroll, GTK_POLICY_ALWAYS);
4059 4071
4060 gtk_widget_set_size_request(gtkconv->imhtml, 4072 gtk_widget_set_size_request(gtkconv->imhtml,
4061 gaim_prefs_get_int("/gaim/gtk/conversations/im/default_width"), 4073 gaim_prefs_get_int("/gaim/gtk/conversations/im/default_width"),
4062 gaim_prefs_get_int("/gaim/gtk/conversations/im/default_height")); 4074 gaim_prefs_get_int("/gaim/gtk/conversations/im/default_height"));
4063 g_signal_connect(G_OBJECT(gtkconv->imhtml), "size-allocate", 4075 g_signal_connect(G_OBJECT(gtkconv->imhtml), "size-allocate",
4082 vbox2 = gtk_vbox_new(FALSE, GAIM_HIG_BOX_SPACE); 4094 vbox2 = gtk_vbox_new(FALSE, GAIM_HIG_BOX_SPACE);
4083 gtk_box_pack_end(GTK_BOX(gtkconv->lower_hbox), vbox2, TRUE, TRUE, 0); 4095 gtk_box_pack_end(GTK_BOX(gtkconv->lower_hbox), vbox2, TRUE, TRUE, 0);
4084 gtk_widget_show(vbox2); 4096 gtk_widget_show(vbox2);
4085 4097
4086 /* Setup the toolbar, entry widget and all signals */ 4098 /* Setup the toolbar, entry widget and all signals */
4087 frame = gaim_gtk_create_imhtml(TRUE, &gtkconv->entry, &gtkconv->toolbar); 4099 frame = gaim_gtk_create_imhtml(TRUE, &gtkconv->entry, &gtkconv->toolbar, NULL);
4088 gtk_box_pack_start(GTK_BOX(vbox2), frame, TRUE, TRUE, 0); 4100 gtk_box_pack_start(GTK_BOX(vbox2), frame, TRUE, TRUE, 0);
4089 gtk_widget_show(frame); 4101 gtk_widget_show(frame);
4090 4102
4091 g_signal_connect(G_OBJECT(gtkconv->entry), "populate-popup", 4103 g_signal_connect(G_OBJECT(gtkconv->entry), "populate-popup",
4092 G_CALLBACK(entry_popup_menu_cb), gtkconv); 4104 G_CALLBACK(entry_popup_menu_cb), gtkconv);

mercurial