gtk+ r20980 - in trunk: . gtk



Author: matthiasc
Date: Mon Aug  4 16:36:28 2008
New Revision: 20980
URL: http://svn.gnome.org/viewvc/gtk+?rev=20980&view=rev

Log:
Update to handle GEmblem`


Modified:
   trunk/ChangeLog
   trunk/gtk/gtkicontheme.c

Modified: trunk/gtk/gtkicontheme.c
==============================================================================
--- trunk/gtk/gtkicontheme.c	(original)
+++ trunk/gtk/gtkicontheme.c	Mon Aug  4 16:36:28 2008
@@ -3458,19 +3458,21 @@
   else if (G_IS_EMBLEMED_ICON (icon))
     {
       GIcon *base, *emblem;
+      GList *list, *l;
+      GtkIconInfo *emblem_info;
 
       base = g_emblemed_icon_get_icon (G_EMBLEMED_ICON (icon));
-      emblem = g_emblemed_icon_get_emblem (G_EMBLEMED_ICON (icon));
-
-      /* recursively collect information for all emblems */
       info = gtk_icon_theme_lookup_by_gicon (icon_theme, base, size, flags);
       if (info)
         {
-          GtkIconInfo *emblem_info;
-
-          emblem_info = gtk_icon_theme_lookup_by_gicon (icon_theme, emblem, size / 2, flags);
-          if (emblem_info)
-            info->emblem_infos = g_slist_prepend (info->emblem_infos, emblem_info);
+          list = g_emblemed_icon_get_emblems (G_EMBLEMED_ICON (icon));
+          for (l = list; l; l = l->next)
+            {
+              emblem = g_emblem_get_icon (G_EMBLEM (l->data));
+              emblem_info = gtk_icon_theme_lookup_by_gicon (icon_theme, emblem, size / 2, flags);
+              if (emblem_info)
+                info->emblem_infos = g_slist_prepend (info->emblem_infos, emblem_info);
+            }
         }
 
       return info;



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