[balsa/wip/gtk4] Pixbuf-to-Texture cleanup



commit 14eac190d566d0a3fe850742627a6d061425ec19
Author: Peter Bloomfield <PeterBloomfield bellsouth net>
Date:   Wed Sep 11 12:17:58 2019 -0400

    Pixbuf-to-Texture cleanup
    
    and renaming of GtkLabel functions.

 libbalsa/files.c                         |  9 ++++++++-
 libbalsa/html.c                          |  4 ++--
 libbalsa/identity-widgets.c              |  2 +-
 libbalsa/libbalsa-gpgme-widgets.c        |  8 ++++----
 libbalsa/libbalsa-progress.c             |  2 +-
 libbalsa/misc.c                          |  2 +-
 libinit_balsa/assistant_page_defclient.c |  2 +-
 libinit_balsa/assistant_page_directory.c |  2 +-
 libinit_balsa/assistant_page_user.c      |  4 ++--
 libinit_balsa/assistant_page_welcome.c   |  2 +-
 src/balsa-icons.c                        |  8 +++++---
 src/balsa-message.c                      |  9 +++++++--
 src/balsa-mime-widget-message.c          |  4 ++--
 src/balsa-mime-widget-text.c             |  2 +-
 src/balsa-mime-widget-vcalendar.c        |  2 +-
 src/balsa-print-object-default.c         | 16 ++++++++++++++--
 src/compose-window.c                     |  9 ++++++---
 src/pref-manager.c                       |  4 ++--
 src/print-gtk.c                          | 12 ++++++------
 src/toolbar-prefs.c                      |  6 +++++-
 20 files changed, 71 insertions(+), 38 deletions(-)
---
diff --git a/libbalsa/files.c b/libbalsa/files.c
index 88715d78b..acf332361 100644
--- a/libbalsa/files.c
+++ b/libbalsa/files.c
@@ -134,9 +134,16 @@ libbalsa_icon_finder(GtkWidget         * widget,
 
             if (icon_names != NULL) {
                 for (i = 0; pixbuf == NULL && icon_names[i] != NULL; i++) {
-                    pixbuf =
+                    GdkPaintable *paintable =
                         gtk_icon_theme_load_icon(icon_theme, icon_names[i], width,
                                                  GTK_ICON_LOOKUP_FORCE_SIZE, NULL);
+
+                    if (paintable != NULL) {
+                        if (pixbuf != NULL)
+                            g_object_unref(pixbuf);
+                        pixbuf = gdk_pixbuf_get_from_texture(GDK_TEXTURE(paintable));
+                        g_object_unref(paintable);
+                    }
                 }
             }
         }
diff --git a/libbalsa/html.c b/libbalsa/html.c
index 4a77c3942..0ff20f8bd 100644
--- a/libbalsa/html.c
+++ b/libbalsa/html.c
@@ -425,7 +425,7 @@ lbh_info_bar(LibBalsaWebKitInfo * info)
                                     (info_bar)), GTK_ORIENTATION_VERTICAL);
 
     label = gtk_label_new(_(text));
-    gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
+    gtk_label_set_wrap(GTK_LABEL(label), TRUE);
 
     content_area = gtk_info_bar_get_content_area(info_bar);
     gtk_container_add(GTK_CONTAINER(content_area), label);
@@ -1094,7 +1094,7 @@ lbh_show_info_bar(LibBalsaWebKitInfo * info)
     info_bar = GTK_INFO_BAR(info_bar_widget);
 
     label = gtk_label_new(text);
-    gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
+    gtk_label_set_wrap(GTK_LABEL(label), TRUE);
 
     content_area = gtk_info_bar_get_content_area(info_bar);
     gtk_container_add(GTK_CONTAINER(content_area), label);
diff --git a/libbalsa/identity-widgets.c b/libbalsa/identity-widgets.c
index a426f0e10..f8533b4aa 100644
--- a/libbalsa/identity-widgets.c
+++ b/libbalsa/identity-widgets.c
@@ -554,7 +554,7 @@ append_ident_notebook_page(GtkNotebook * notebook,
        GtkWidget *label;
 
        label = gtk_label_new(footnote);
-       gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
+       gtk_label_set_wrap(GTK_LABEL(label), TRUE);
         gtk_container_add(GTK_CONTAINER(vbox), label);
     }
     gtk_notebook_append_page(notebook, vbox, gtk_label_new(tab_label));
diff --git a/libbalsa/libbalsa-gpgme-widgets.c b/libbalsa/libbalsa-gpgme-widgets.c
index eacd7a5d6..4e8ed7197 100644
--- a/libbalsa/libbalsa-gpgme-widgets.c
+++ b/libbalsa/libbalsa-gpgme-widgets.c
@@ -393,14 +393,14 @@ libbalsa_key_dialog(GtkWindow            *parent,
                gtk_label_set_markup(GTK_LABEL(label), markup);
                g_free(markup);
                gtk_container_add(GTK_CONTAINER(vbox), label);
-               gtk_label_set_line_wrap(GTK_LABEL(label), FALSE);
+               gtk_label_set_wrap(GTK_LABEL(label), FALSE);
        }
 
        if (message2 != NULL) {
                label = gtk_label_new(message2);
                gtk_widget_set_halign(label, GTK_ALIGN_START);
                gtk_container_add(GTK_CONTAINER(vbox), label);
-               gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
+               gtk_label_set_wrap(GTK_LABEL(label), TRUE);
        }
 
        scrolledw = gtk_scrolled_window_new(NULL, NULL);
@@ -579,7 +579,7 @@ create_key_label_with_warn(const gchar *text,
                g_free(buf);
                gtk_widget_set_halign(label, GTK_ALIGN_START);
                gtk_widget_set_hexpand(label, TRUE);
-               gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
+               gtk_label_set_wrap(GTK_LABEL(label), TRUE);
                gtk_label_set_selectable(GTK_LABEL(label), TRUE);
                gtk_container_add(GTK_CONTAINER(result), label);
        } else {
@@ -587,7 +587,7 @@ create_key_label_with_warn(const gchar *text,
                gtk_widget_set_halign(result, GTK_ALIGN_START);
                gtk_widget_set_hexpand(result, TRUE);
                gtk_label_set_selectable(GTK_LABEL(result), TRUE);
-               gtk_label_set_line_wrap(GTK_LABEL(result), TRUE);
+               gtk_label_set_wrap(GTK_LABEL(result), TRUE);
        }
 
        return result;
diff --git a/libbalsa/libbalsa-progress.c b/libbalsa/libbalsa-progress.c
index 11d1a2002..69e5e026a 100644
--- a/libbalsa/libbalsa-progress.c
+++ b/libbalsa/libbalsa-progress.c
@@ -295,7 +295,7 @@ create_progress_widget(const gchar *progress_id)
        gtk_container_add(GTK_CONTAINER(box), label);
 
        widget_data->label = gtk_label_new(" ");
-       gtk_label_set_line_wrap(GTK_LABEL(widget_data->label), TRUE);
+       gtk_label_set_wrap(GTK_LABEL(widget_data->label), TRUE);
         g_object_set(G_OBJECT(widget_data->label), "margin", 2, NULL);
        gtk_container_add(GTK_CONTAINER(box), widget_data->label);
 
diff --git a/libbalsa/misc.c b/libbalsa/misc.c
index 885c14e88..8803a36ea 100644
--- a/libbalsa/misc.c
+++ b/libbalsa/misc.c
@@ -901,7 +901,7 @@ libbalsa_create_grid_label(const gchar * text, GtkWidget * grid, gint row)
     GtkWidget *label;
 
     label = gtk_label_new_with_mnemonic(text);
-    gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
+    gtk_label_set_wrap(GTK_LABEL(label), TRUE);
     gtk_widget_set_halign(label, GTK_ALIGN_START);
 
     gtk_grid_attach(GTK_GRID(grid), label, 0, row, 1, 1);
diff --git a/libinit_balsa/assistant_page_defclient.c b/libinit_balsa/assistant_page_defclient.c
index 79bc29ab2..8916ce22e 100644
--- a/libinit_balsa/assistant_page_defclient.c
+++ b/libinit_balsa/assistant_page_defclient.c
@@ -51,7 +51,7 @@ balsa_druid_page_defclient_init(BalsaDruidPageDefclient * defclient,
 
     label = gtk_label_new(_("Use Balsa as default email client?"));
     gtk_label_set_justify((GtkLabel *) label, GTK_JUSTIFY_CENTER);
-    gtk_label_set_line_wrap((GtkLabel *) label, TRUE);
+    gtk_label_set_wrap((GtkLabel *) label, TRUE);
 
     yes = gtk_radio_button_new_with_mnemonic(NULL, _("_Yes"));
     no  = gtk_radio_button_new_with_mnemonic_from_widget(GTK_RADIO_BUTTON(yes),
diff --git a/libinit_balsa/assistant_page_directory.c b/libinit_balsa/assistant_page_directory.c
index 42faa068d..47f868184 100644
--- a/libinit_balsa/assistant_page_directory.c
+++ b/libinit_balsa/assistant_page_directory.c
@@ -263,7 +263,7 @@ balsa_druid_page_directory_init(BalsaDruidPageDirectory * dir,
                                    "These will be created if necessary."));
     label = GTK_LABEL(label_widget);
     gtk_label_set_justify(label, GTK_JUSTIFY_RIGHT);
-    gtk_label_set_line_wrap(label, TRUE);
+    gtk_label_set_wrap(label, TRUE);
     gtk_widget_set_hexpand(label_widget, TRUE);
     gtk_widget_set_vexpand(label_widget, TRUE);
 
diff --git a/libinit_balsa/assistant_page_user.c b/libinit_balsa/assistant_page_user.c
index b784ac4de..c758b6050 100644
--- a/libinit_balsa/assistant_page_user.c
+++ b/libinit_balsa/assistant_page_user.c
@@ -86,7 +86,7 @@ balsa_druid_page_user_init(BalsaDruidPageUser * user,
     user->ed3.master = &(user->emaster);
     user->ed4.master = &(user->emaster);
     label = GTK_LABEL(gtk_label_new(_(header2)));
-    gtk_label_set_line_wrap(label, TRUE);
+    gtk_label_set_wrap(label, TRUE);
     gtk_container_add(GTK_CONTAINER(page), GTK_WIDGET(label));
 
     grid = GTK_GRID(gtk_grid_new());
@@ -96,7 +96,7 @@ balsa_druid_page_user_init(BalsaDruidPageUser * user,
 #if 0
     label = GTK_LABEL(gtk_label_new(_(header21)));
     gtk_label_set_justify(label, GTK_JUSTIFY_CENTER);
-    gtk_label_set_line_wrap(label, TRUE);
+    gtk_label_set_wrap(label, TRUE);
     gtk_grid_attach(grid, GTK_WIDGET(label), 0, 2, 0, 1,
                      GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 8, 4);
 #endif
diff --git a/libinit_balsa/assistant_page_welcome.c b/libinit_balsa/assistant_page_welcome.c
index fc750a086..7def26491 100644
--- a/libinit_balsa/assistant_page_welcome.c
+++ b/libinit_balsa/assistant_page_welcome.c
@@ -37,7 +37,7 @@ balsa_druid_page_welcome(GtkAssistant * druid)
          "connect to the network.");
 
     page = gtk_label_new(_(text));
-    gtk_label_set_line_wrap(GTK_LABEL(page), TRUE);
+    gtk_label_set_wrap(GTK_LABEL(page), TRUE);
     
     gtk_assistant_append_page(druid, page);
     gtk_assistant_set_page_title(druid, page, _(title));
diff --git a/src/balsa-icons.c b/src/balsa-icons.c
index cf402fcb3..8df412aed 100644
--- a/src/balsa-icons.c
+++ b/src/balsa-icons.c
@@ -221,19 +221,21 @@ balsa_register_pixbufs(GtkWidget * widget)
     GtkIconTheme *icon_theme = gtk_icon_theme_get_default();
 
     for (i = 0; i < G_N_ELEMENTS(icons); i++) {
-        GdkPixbuf *pixbuf;
+        GdkPaintable *paintable;
         GError *err = NULL;
         gint width = 16;
         const gchar *use_id = balsa_icon_id(icons[i].icon);
 
-        pixbuf =
+        paintable =
             gtk_icon_theme_load_icon(icon_theme, use_id, width,
                                      GTK_ICON_LOOKUP_USE_BUILTIN, &err);
-        if (err) {
+        if (err != NULL) {
             g_print("%s %s size %d err %s\n", __func__, use_id,
                     width, err->message);
             g_clear_error(&err);
         } else {
+            GdkPixbuf *pixbuf = gdk_pixbuf_get_from_texture(GDK_TEXTURE(paintable));
+            g_object_unref(paintable);
             icons[i].set_icon(pixbuf);
             g_object_unref(pixbuf);
         }
diff --git a/src/balsa-message.c b/src/balsa-message.c
index b84343468..214b91971 100644
--- a/src/balsa-message.c
+++ b/src/balsa-message.c
@@ -2692,6 +2692,7 @@ static GdkPixbuf *
 get_crypto_content_icon(LibBalsaMessageBody * body, const gchar * content_type,
                        gchar ** icon_title)
 {
+    GdkPaintable *paintable;
     GdkPixbuf *icon;
     gchar * new_title;
     const gchar * icon_name;
@@ -2703,10 +2704,14 @@ get_crypto_content_icon(LibBalsaMessageBody * body, const gchar * content_type,
         return NULL;
 
     icon_name = balsa_mime_widget_signature_icon_name(libbalsa_message_body_protect_state(body));
-    if (!icon_name)
+    if (icon_name == NULL)
         return NULL;
-    icon =
+
+    paintable =
         gtk_icon_theme_load_icon(gtk_icon_theme_get_default(), icon_name, 24, 0, NULL);
+    icon = gdk_pixbuf_get_from_texture(GDK_TEXTURE(paintable));
+    g_object_unref(paintable);
+
     if (!icon_title)
         return icon;
 
diff --git a/src/balsa-mime-widget-message.c b/src/balsa-mime-widget-message.c
index ce5318b15..e162986d5 100644
--- a/src/balsa-mime-widget-message.c
+++ b/src/balsa-mime-widget-message.c
@@ -607,8 +607,8 @@ add_header_gchar(GtkGrid * grid, const gchar * header, const gchar * label,
                                        GTK_STYLE_PROVIDER(css_provider),
                                        GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
 
-        gtk_label_set_line_wrap(GTK_LABEL(value_label), TRUE);
-        gtk_label_set_line_wrap_mode(GTK_LABEL(value_label), PANGO_WRAP_WORD_CHAR);
+        gtk_label_set_wrap(GTK_LABEL(value_label), TRUE);
+        gtk_label_set_wrap_mode(GTK_LABEL(value_label), PANGO_WRAP_WORD_CHAR);
         gtk_label_set_selectable(GTK_LABEL(value_label), TRUE);
         gtk_widget_set_halign(value_label, GTK_ALIGN_START);
         gtk_widget_set_hexpand(value_label, TRUE);
diff --git a/src/balsa-mime-widget-text.c b/src/balsa-mime-widget-text.c
index 744f02283..93c790b8c 100644
--- a/src/balsa-mime-widget-text.c
+++ b/src/balsa-mime-widget-text.c
@@ -1231,7 +1231,7 @@ bm_widget_new_html(BalsaMessage * bm, LibBalsaMessageBody * mime_body)
         gtk_widget_set_halign(lbl, GTK_ALIGN_START);                \
         gtk_grid_attach(g, lbl, 0, row, 1, 1);                    \
         lbl = gtk_label_new(str);                                 \
-        gtk_label_set_line_wrap(GTK_LABEL(lbl), TRUE);            \
+        gtk_label_set_wrap(GTK_LABEL(lbl), TRUE);            \
         gtk_widget_set_halign(lbl, GTK_ALIGN_START);              \
         gtk_grid_attach(g, lbl, 1, row, 1, 1);                    \
         row++;                                                    \
diff --git a/src/balsa-mime-widget-vcalendar.c b/src/balsa-mime-widget-vcalendar.c
index 4b81e72a1..9a7e7ccdb 100644
--- a/src/balsa-mime-widget-vcalendar.c
+++ b/src/balsa-mime-widget-vcalendar.c
@@ -111,7 +111,7 @@ balsa_mime_widget_new_vcalendar(BalsaMessage * bm,
             gtk_widget_set_valign(lbl, GTK_ALIGN_START);                \
             gtk_grid_attach(g, lbl, 0, row, 1, 1);                      \
             lbl = gtk_label_new(str);                                   \
-            gtk_label_set_line_wrap(GTK_LABEL(lbl), TRUE);              \
+            gtk_label_set_wrap(GTK_LABEL(lbl), TRUE);              \
             gtk_widget_set_halign(lbl, GTK_ALIGN_START);                \
             gtk_widget_set_valign(lbl, GTK_ALIGN_START);                \
             gtk_widget_set_hexpand(lbl, TRUE);                          \
diff --git a/src/balsa-print-object-default.c b/src/balsa-print-object-default.c
index 0442e09ab..e6e17c79c 100644
--- a/src/balsa-print-object-default.c
+++ b/src/balsa-print-object-default.c
@@ -273,6 +273,7 @@ balsa_print_object_vcard(GList               *list,
 {
     BalsaPrintObjectDefault *pod;
     BalsaPrintObject *po;
+    GdkPaintable *paintable;
     PangoFontDescription *header_font;
     PangoLayout *test_layout;
     PangoTabArray *tabs;
@@ -306,10 +307,15 @@ balsa_print_object_vcard(GList               *list,
                                    - 2 * psetup->curr_depth * C_LABEL_SEP);
 
     /* get the stock contacts icon or the mime type icon on fail */
-    pod->pixbuf =
+    paintable =
         gtk_icon_theme_load_icon(gtk_icon_theme_get_default(),
                                  BALSA_PIXMAP_IDENTITY, 48,
                                  GTK_ICON_LOOKUP_USE_BUILTIN, NULL);
+    if (paintable != NULL) {
+        pod->pixbuf = gdk_pixbuf_get_from_texture(GDK_TEXTURE(paintable));
+        g_object_unref(paintable);
+    }
+
     if (!pod->pixbuf) {
         gchar *conttype = libbalsa_message_body_get_mime_type(body);
 
@@ -427,6 +433,7 @@ balsa_print_object_calendar(GList               *list,
 {
     BalsaPrintObjectDefault *pod;
     BalsaPrintObject *po;
+    GdkPaintable *paintable;
     PangoFontDescription *header_font;
     PangoLayout *test_layout;
     PangoTabArray *tabs;
@@ -455,10 +462,15 @@ balsa_print_object_calendar(GList               *list,
                                    - 2 * psetup->curr_depth * C_LABEL_SEP);
 
     /* get the stock calendar icon or the mime type icon on fail */
-    pod->pixbuf =
+    paintable =
         gtk_icon_theme_load_icon(gtk_icon_theme_get_default(),
                                  "x-office-calendar", 48,
                                  GTK_ICON_LOOKUP_USE_BUILTIN, NULL);
+    if (paintable != NULL) {
+        pod->pixbuf = gdk_pixbuf_get_from_texture(GDK_TEXTURE(paintable));
+        g_object_unref(paintable);
+    }
+
     if (!pod->pixbuf) {
         gchar *conttype = libbalsa_message_body_get_mime_type(body);
 
diff --git a/src/compose-window.c b/src/compose-window.c
index ce1895cbf..4b1d96f0d 100644
--- a/src/compose-window.c
+++ b/src/compose-window.c
@@ -2097,6 +2097,7 @@ add_urlref_attachment(BalsaComposeWindow *compose_window,
     GtkTreeModel *model;
     GtkTreeIter iter;
     BalsaAttachInfo *attach_data;
+    GdkPaintable *paintable;
     GdkPixbuf *pixbuf;
     GtkWidget *menu_item;
 
@@ -2104,9 +2105,11 @@ add_urlref_attachment(BalsaComposeWindow *compose_window,
         fprintf(stderr, "Trying to attach '%s'\n", url);
 
     /* get the pixbuf for the attachment's content type */
-    pixbuf =
+    paintable =
         gtk_icon_theme_load_icon(gtk_icon_theme_get_default(),
                                  "go-jump", 16, 0, NULL);
+    pixbuf = gdk_pixbuf_get_from_texture(GDK_TEXTURE(paintable));
+    g_object_unref(paintable);
 
     /* create a new attachment info block */
     attach_data          = balsa_attach_info_new(compose_window);
@@ -3638,7 +3641,7 @@ quote_parts_select_dlg(GtkTreeStore *tree_store,
 
     label = gtk_label_new(_("Select the parts of the message"
                             " which shall be quoted in the reply"));
-    gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
+    gtk_label_set_wrap(GTK_LABEL(label), TRUE);
     gtk_label_set_selectable(GTK_LABEL(label), TRUE);
     gtk_widget_set_halign(label, GTK_ALIGN_START);
     gtk_widget_set_valign(label, GTK_ALIGN_START);
@@ -5449,7 +5452,7 @@ subject_not_empty(BalsaComposeWindow *compose_window)
     g_free(text_str);
     gtk_container_add (GTK_CONTAINER (vbox), label);
     gtk_label_set_use_markup (GTK_LABEL (label), TRUE);
-    gtk_label_set_line_wrap (GTK_LABEL (label), TRUE);
+    gtk_label_set_wrap (GTK_LABEL (label), TRUE);
     gtk_widget_set_halign(label, GTK_ALIGN_START);
     gtk_widget_set_valign(label, GTK_ALIGN_START);
 
diff --git a/src/pref-manager.c b/src/pref-manager.c
index c5ae04e3c..5d86e7781 100644
--- a/src/pref-manager.c
+++ b/src/pref-manager.c
@@ -1249,7 +1249,7 @@ pm_group_label(const gchar * text)
     gtk_label_set_markup(GTK_LABEL(label), markup);
     g_free(markup);
 
-    gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
+    gtk_label_set_wrap(GTK_LABEL(label), TRUE);
     gtk_widget_set_halign(label, GTK_ALIGN_START);
 
     return label;
@@ -1288,7 +1288,7 @@ pm_grid_attach_label(GtkGrid     * grid,
     }
 
     gtk_label_set_justify((GtkLabel *) label, GTK_JUSTIFY_LEFT);
-    gtk_label_set_line_wrap((GtkLabel *) label, TRUE);
+    gtk_label_set_wrap((GtkLabel *) label, TRUE);
     gtk_label_set_max_width_chars((GtkLabel *) label, BALSA_MAX_WIDTH_CHARS);
     gtk_label_set_xalign((GtkLabel *) label, 0.0);
     gtk_label_set_yalign((GtkLabel *) label, 0.5);
diff --git a/src/print-gtk.c b/src/print-gtk.c
index a639e6b53..ed1a0b1b4 100644
--- a/src/print-gtk.c
+++ b/src/print-gtk.c
@@ -417,7 +417,7 @@ add_font_button(const gchar * text, const gchar * font, GtkGrid * grid,
 
     label = gtk_label_new_with_mnemonic(text);
     gtk_label_set_justify(GTK_LABEL(label), GTK_JUSTIFY_LEFT);
-    gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
+    gtk_label_set_wrap(GTK_LABEL(label), TRUE);
     gtk_widget_set_halign(label, GTK_ALIGN_START);
     gtk_grid_attach(grid, label, 0, row, 1, 1);
 
@@ -440,7 +440,7 @@ add_margin_spinbtn(const gchar * text, gdouble min, gdouble max, gdouble dflt,
 
     label = gtk_label_new_with_mnemonic(text);
     gtk_label_set_justify(GTK_LABEL(label), GTK_JUSTIFY_LEFT);
-    gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
+    gtk_label_set_wrap(GTK_LABEL(label), TRUE);
     gtk_widget_set_halign(label, GTK_ALIGN_START);
     gtk_grid_attach(grid, label, 0, row, 1, 1);
 
@@ -465,7 +465,7 @@ add_margin_spinbtn(const gchar * text, gdouble min, gdouble max, gdouble dflt,
 
     label = gtk_label_new(unit);
     gtk_label_set_justify(GTK_LABEL(label), GTK_JUSTIFY_LEFT);
-    gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
+    gtk_label_set_wrap(GTK_LABEL(label), TRUE);
     gtk_widget_set_halign(label, GTK_ALIGN_START);
     gtk_grid_attach(grid, label, 2, row, 1, 1);
 
@@ -508,7 +508,7 @@ message_prefs_widget(GtkPrintOperation * operation,
     markup = g_strdup_printf("<b>%s</b>", _("Fonts"));
     gtk_label_set_markup(GTK_LABEL(label), markup);
     g_free(markup);
-    gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
+    gtk_label_set_wrap(GTK_LABEL(label), TRUE);
     gtk_widget_set_halign(label, GTK_ALIGN_START);
     gtk_container_add(GTK_CONTAINER(group), label);
 
@@ -544,7 +544,7 @@ message_prefs_widget(GtkPrintOperation * operation,
     markup = g_strdup_printf("<b>%s</b>", _("Highlighting"));
     gtk_label_set_markup(GTK_LABEL(label), markup);
     g_free(markup);
-    gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
+    gtk_label_set_wrap(GTK_LABEL(label), TRUE);
     gtk_widget_set_halign(label, GTK_ALIGN_START);
     gtk_container_add(GTK_CONTAINER(group), label);
 
@@ -579,7 +579,7 @@ message_prefs_widget(GtkPrintOperation * operation,
     markup = g_strdup_printf("<b>%s</b>", _("Margins"));
     gtk_label_set_markup(GTK_LABEL(label), markup);
     g_free(markup);
-    gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
+    gtk_label_set_wrap(GTK_LABEL(label), TRUE);
     gtk_widget_set_halign(label, GTK_ALIGN_START);
     gtk_container_add(GTK_CONTAINER(group), label);
 
diff --git a/src/toolbar-prefs.c b/src/toolbar-prefs.c
index e786fd581..b443a7b17 100644
--- a/src/toolbar-prefs.c
+++ b/src/toolbar-prefs.c
@@ -823,10 +823,14 @@ tp_store_set(GtkListStore * store, GtkTreeIter * iter, gint item)
     replace_nl_with_space(text);
 
     if (item > 0) {
-        pixbuf =
+        GdkPaintable *paintable =
             gtk_icon_theme_load_icon(gtk_icon_theme_get_default(),
                                      balsa_icon_id(toolbar_buttons[item].pixmap_id),
                                      24, 0, NULL);
+        if (paintable != NULL) {
+            pixbuf = gdk_pixbuf_get_from_texture(GDK_TEXTURE(paintable));
+            g_object_unref(paintable);
+        }
     }
     gtk_list_store_set(store, iter,
                        TP_TEXT_COLUMN, text,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]