aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Tari <robert@tari.in>2023-08-05 02:03:39 +0200
committerRobert Tari <robert@tari.in>2023-08-05 02:04:19 +0200
commite487b162ba82a1a454657a8ab5dbd6d04a17b591 (patch)
tree89f3201214321fbc0384562f70164f2f057d0711
parentebb915b50119f79968a8e93697a90660eab93872 (diff)
downloadayatana-ido-e487b162ba82a1a454657a8ab5dbd6d04a17b591.tar.gz
ayatana-ido-e487b162ba82a1a454657a8ab5dbd6d04a17b591.tar.bz2
ayatana-ido-e487b162ba82a1a454657a8ab5dbd6d04a17b591.zip
Do not hardcode icon sizes
fixes https://github.com/AyatanaIndicators/ayatana-indicator-sound/issues/89
-rw-r--r--src/idobasicmenuitem.c23
-rw-r--r--src/idolevelmenuitem.c19
-rw-r--r--src/idomediaplayermenuitem.c2
-rw-r--r--src/idoremovablemenuitem.c21
4 files changed, 11 insertions, 54 deletions
diff --git a/src/idobasicmenuitem.c b/src/idobasicmenuitem.c
index 5077546..5106144 100644
--- a/src/idobasicmenuitem.c
+++ b/src/idobasicmenuitem.c
@@ -1,6 +1,6 @@
/*
* Copyright 2013 Canonical Ltd.
- * Copyright 2021-2022 Robert Tari
+ * Copyright 2021-2023 Robert Tari
*
* Authors:
* Charles Kerr <charles.kerr@canonical.com>
@@ -163,25 +163,8 @@ ido_basic_menu_item_update_image (IdoBasicMenuItem *self)
}
else if (p->icon)
{
- GtkIconInfo *info;
- const gchar *filename;
-
- info = gtk_icon_theme_lookup_by_gicon (gtk_icon_theme_get_default (), p->icon, 16, 0);
- filename = gtk_icon_info_get_filename (info);
-
- if (filename)
- {
- GdkPixbuf *pixbuf;
-
- pixbuf = gdk_pixbuf_new_from_file_at_scale (filename, -1, 16, TRUE, NULL);
- gtk_image_set_from_pixbuf (GTK_IMAGE (p->image), pixbuf);
-
- g_object_unref (pixbuf);
- }
-
- gtk_widget_set_visible (p->image, filename != NULL);
-
- g_object_unref (info);
+ gtk_image_set_from_gicon (GTK_IMAGE (p->image), p->icon, GTK_ICON_SIZE_MENU);
+ gtk_widget_set_visible (p->image, TRUE);
}
}
}
diff --git a/src/idolevelmenuitem.c b/src/idolevelmenuitem.c
index b7ce543..5f4f5bb 100644
--- a/src/idolevelmenuitem.c
+++ b/src/idolevelmenuitem.c
@@ -143,23 +143,8 @@ static void idoLevelMenuItemStyleUpdateImage (IdoLevelMenuItem *self)
}
else
{
- GtkIconInfo *pInfo;
- const gchar *sFilename;
-
- pInfo = gtk_icon_theme_lookup_by_gicon (gtk_icon_theme_get_default(), pPrivate->pIcon, 16, 0);
- sFilename = gtk_icon_info_get_filename (pInfo);
-
- if (sFilename)
- {
- GdkPixbuf *pPixbuf;
-
- pPixbuf = gdk_pixbuf_new_from_file_at_scale (sFilename, -1, 16, TRUE, NULL);
- gtk_image_set_from_pixbuf (GTK_IMAGE (pPrivate->pImage), pPixbuf);
- g_object_unref (pPixbuf);
- }
-
- gtk_widget_set_visible (pPrivate->pImage, sFilename != NULL);
- g_object_unref (pInfo);
+ gtk_image_set_from_gicon (GTK_IMAGE (pPrivate->pImage), pPrivate->pIcon, GTK_ICON_SIZE_MENU);
+ gtk_widget_set_visible (pPrivate->pImage, TRUE);
}
}
diff --git a/src/idomediaplayermenuitem.c b/src/idomediaplayermenuitem.c
index 801d57b..071c4af 100644
--- a/src/idomediaplayermenuitem.c
+++ b/src/idomediaplayermenuitem.c
@@ -1,5 +1,6 @@
/*
* Copyright 2013 Canonical Ltd.
+ * Copyright 2023 Robert Tari
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 3, as published
@@ -17,6 +18,7 @@
* Conor Curran <conor.curran@canonical.com>
* Mirco Müller <mirco.mueller@canonical.com>
* Lars Uebernickel <lars.uebernickel@canonical.com>
+ * Robert Tari <robert@tari.in>
*/
#include "idomediaplayermenuitem.h"
diff --git a/src/idoremovablemenuitem.c b/src/idoremovablemenuitem.c
index 946ffb3..d857fd4 100644
--- a/src/idoremovablemenuitem.c
+++ b/src/idoremovablemenuitem.c
@@ -1,8 +1,10 @@
/*
* Copyright 2013 Canonical Ltd.
+ * Copyright 2023 Robert Tari
*
* Authors:
* Charles Kerr <charles.kerr@canonical.com>
+ * Robert Tari <robert@tari.in>
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 3, as published
@@ -131,23 +133,8 @@ static void idoRemovableMenuItemStyleUpdateImage(IdoRemovableMenuItem *self)
}
else
{
- GtkIconInfo *pInfo;
- const gchar *sFilename;
-
- pInfo = gtk_icon_theme_lookup_by_gicon(gtk_icon_theme_get_default(), pPrivate->pIcon, 16, 0);
- sFilename = gtk_icon_info_get_filename(pInfo);
-
- if (sFilename)
- {
- GdkPixbuf *pPixbuf;
-
- pPixbuf = gdk_pixbuf_new_from_file_at_scale(sFilename, -1, 16, TRUE, NULL);
- gtk_image_set_from_pixbuf(GTK_IMAGE(pPrivate->pImage), pPixbuf);
- g_object_unref (pPixbuf);
- }
-
- gtk_widget_set_visible(pPrivate->pImage, sFilename != NULL);
- g_object_unref(pInfo);
+ gtk_image_set_from_gicon (GTK_IMAGE (pPrivate->pImage), pPrivate->pIcon, GTK_ICON_SIZE_MENU);
+ gtk_widget_set_visible (pPrivate->pImage, TRUE);
}
}