summaryrefslogtreecommitdiff
path: root/libxfce4ui/xfce-titled-dialog.c
diff options
context:
space:
mode:
authorSimon Steinbeiss <simon.steinbeiss@elfenbeinturm.at>2021-02-07 15:28:01 +0100
committerSimon Steinbeiss <simon.steinbeiss@elfenbeinturm.at>2021-02-07 15:29:03 +0100
commit9fc6c9669f6e1167a80a201afbf1baacfc129215 (patch)
tree191b77d0fbe0a4ddfce04e3b33c414c8ad9aa78e /libxfce4ui/xfce-titled-dialog.c
parent5aacc774ea923d0173e83c166b945c7eed8bfd80 (diff)
downloadlibxfce4ui-9fc6c9669f6e1167a80a201afbf1baacfc129215.tar.gz
XfceTitledDialog: Add pixbuf support as fallback
Previously only icons set via gtk_window_set_icon_name were handled, now we also handle GdkPixbufs set by gtk_window_set_icon if no icon_name was set.
Diffstat (limited to 'libxfce4ui/xfce-titled-dialog.c')
-rw-r--r--libxfce4ui/xfce-titled-dialog.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/libxfce4ui/xfce-titled-dialog.c b/libxfce4ui/xfce-titled-dialog.c
index 1111278..bdc98f2 100644
--- a/libxfce4ui/xfce-titled-dialog.c
+++ b/libxfce4ui/xfce-titled-dialog.c
@@ -260,10 +260,19 @@ xfce_titled_dialog_update_icon (XfceTitledDialog *titled_dialog)
const gchar *icon_name = gtk_window_get_icon_name (GTK_WINDOW (titled_dialog));
g_return_if_fail (GTK_IS_HEADER_BAR (titled_dialog->priv->headerbar));
- g_return_if_fail (icon_name != NULL);
- gtk_image_set_from_icon_name (GTK_IMAGE (titled_dialog->priv->icon), icon_name, GTK_ICON_SIZE_LARGE_TOOLBAR);
- gtk_image_set_pixel_size (GTK_IMAGE (titled_dialog->priv->icon), 24);
+ if (icon_name)
+ {
+ gtk_image_set_from_icon_name (GTK_IMAGE (titled_dialog->priv->icon), icon_name, GTK_ICON_SIZE_LARGE_TOOLBAR);
+ gtk_image_set_pixel_size (GTK_IMAGE (titled_dialog->priv->icon), 24);
+ }
+ else
+ {
+ GdkPixbuf *pixbuf;
+ pixbuf = gtk_window_get_icon (GTK_WINDOW (titled_dialog));
+ if (pixbuf)
+ gtk_image_set_from_pixbuf (GTK_IMAGE (titled_dialog->priv->icon), pixbuf);
+ }
}