From f9fe8b978a275424a41e34bb4d79c747a4907695 Mon Sep 17 00:00:00 2001 From: Johnny Jacob Date: Tue, 11 Jul 2006 16:36:50 +0000 Subject: ** Patch by Not Zed ** See bug #262003 2006-07-11 Johnny Jacob ** Patch by Not Zed ** See bug #262003 * em-format-html-display.c (efhd_xpkcs7mime_validity_clicked): put the potentially long descriptions into a textbuffer so it's scrollable. svn path=/trunk/; revision=32287 --- mail/em-format-html-display.c | 45 +++++++++++++++++++++++++++++++++++-------- 1 file changed, 37 insertions(+), 8 deletions(-) (limited to 'mail/em-format-html-display.c') diff --git a/mail/em-format-html-display.c b/mail/em-format-html-display.c index 689461f4d2..8a0dd3caf4 100644 --- a/mail/em-format-html-display.c +++ b/mail/em-format-html-display.c @@ -52,6 +52,7 @@ #include #include #include +#include #include #include #include @@ -1086,10 +1087,24 @@ efhd_xpkcs7mime_validity_clicked(GtkWidget *button, EMFormatHTMLPObject *pobject gtk_label_set_line_wrap((GtkLabel *)w, TRUE); gtk_box_pack_start((GtkBox *)vbox, w, TRUE, TRUE, 6); if (po->valid->sign.description) { - w = gtk_label_new(po->valid->sign.description); - gtk_misc_set_alignment((GtkMisc *)w, 0.0, 0.5); - gtk_label_set_line_wrap((GtkLabel *)w, FALSE); - gtk_label_set_selectable((GtkLabel *)w, TRUE); + GtkTextBuffer *buffer; + + buffer = gtk_text_buffer_new(NULL); + gtk_text_buffer_set_text(buffer, po->valid->sign.description, strlen(po->valid->sign.description)); + w = g_object_new(gtk_scrolled_window_get_type(), + "hscrollbar_policy", GTK_POLICY_AUTOMATIC, + "vscrollbar_policy", GTK_POLICY_AUTOMATIC, + "shadow_type", GTK_SHADOW_IN, + "child", g_object_new(gtk_text_view_get_type(), + "buffer", buffer, + "cursor_visible", FALSE, + "editable", FALSE, + "width_request", 500, + "height_request", 160, + NULL), + NULL); + g_object_unref(buffer); + gtk_box_pack_start((GtkBox *)vbox, w, TRUE, TRUE, 6); } @@ -1104,10 +1119,24 @@ efhd_xpkcs7mime_validity_clicked(GtkWidget *button, EMFormatHTMLPObject *pobject gtk_label_set_line_wrap((GtkLabel *)w, TRUE); gtk_box_pack_start((GtkBox *)vbox, w, TRUE, TRUE, 6); if (po->valid->encrypt.description) { - w = gtk_label_new(po->valid->encrypt.description); - gtk_misc_set_alignment((GtkMisc *)w, 0.0, 0.5); - gtk_label_set_line_wrap((GtkLabel *)w, FALSE); - gtk_label_set_selectable((GtkLabel *)w, TRUE); + GtkTextBuffer *buffer; + + buffer = gtk_text_buffer_new(NULL); + gtk_text_buffer_set_text(buffer, po->valid->encrypt.description, strlen(po->valid->encrypt.description)); + w = g_object_new(gtk_scrolled_window_get_type(), + "hscrollbar_policy", GTK_POLICY_AUTOMATIC, + "vscrollbar_policy", GTK_POLICY_AUTOMATIC, + "shadow_type", GTK_SHADOW_IN, + "child", g_object_new(gtk_text_view_get_type(), + "buffer", buffer, + "cursor_visible", FALSE, + "editable", FALSE, + "width_request", 500, + "height_request", 160, + NULL), + NULL); + g_object_unref(buffer); + gtk_box_pack_start((GtkBox *)vbox, w, TRUE, TRUE, 6); } -- cgit v1.2.3