components/desktop/pidgin/patches/pidgin-11-gtkstatusicon.patch
changeset 5091 81e5d6b75c3c
equal deleted inserted replaced
5090:5f131162e136 5091:81e5d6b75c3c
       
     1 # date:2009-10-08 owner:migi type:bug bugster:6888304
       
     2 # Bug 15594310 SUNBT6888304 panel applets should use transparent background
       
     3 #
       
     4 # These changes should be submitted upstream.
       
     5 
       
     6 --- pidgin-2.7.0/pidgin/pidginstock.c.orig2	2010-05-13 15:50:55.216839611 +0800
       
     7 +++ pidgin-2.7.0/pidgin/pidginstock.c	2010-05-13 16:01:04.013877323 +0800
       
     8 @@ -334,7 +334,8 @@
       
     9  
       
    10  static void
       
    11  add_sized_icon(GtkIconSet *iconset, GtkIconSize sizeid, PidginIconTheme *theme,
       
    12 -		const char *size, SizedStockIcon sized_icon, gboolean translucent)
       
    13 +		const char *size, SizedStockIcon sized_icon, gboolean translucent,
       
    14 +                gboolean size_wildcarded)
       
    15  {
       
    16  	char *filename;
       
    17  	GtkIconSource *source;
       
    18 @@ -355,7 +356,7 @@
       
    19  	gtk_icon_source_set_direction(source, GTK_TEXT_DIR_LTR);
       
    20  	gtk_icon_source_set_direction_wildcarded(source, !sized_icon.rtl);
       
    21  	gtk_icon_source_set_size(source, sizeid);
       
    22 -	gtk_icon_source_set_size_wildcarded(source, FALSE);
       
    23 +	gtk_icon_source_set_size_wildcarded(source, size_wildcarded);
       
    24  	gtk_icon_source_set_state_wildcarded(source, TRUE);
       
    25  	gtk_icon_set_add_source(iconset, source);
       
    26  	gtk_icon_source_free(source);
       
    27 @@ -365,7 +366,7 @@
       
    28  		gtk_icon_source_set_pixbuf(source, pixbuf);
       
    29  		gtk_icon_source_set_direction_wildcarded(source, TRUE);
       
    30  		gtk_icon_source_set_size(source, GTK_ICON_SIZE_MENU);
       
    31 -		gtk_icon_source_set_size_wildcarded(source, FALSE);
       
    32 +		gtk_icon_source_set_size_wildcarded(source, size_wildcarded);
       
    33  		gtk_icon_source_set_state_wildcarded(source, TRUE);
       
    34  		gtk_icon_set_add_source(iconset, source);
       
    35  		gtk_icon_source_free(source);
       
    36 @@ -389,7 +390,7 @@
       
    37  		gtk_icon_source_set_filename(source, filename);
       
    38  		gtk_icon_source_set_direction(source, GTK_TEXT_DIR_RTL);
       
    39  		gtk_icon_source_set_size(source, sizeid);
       
    40 -		gtk_icon_source_set_size_wildcarded(source, FALSE);
       
    41 +		gtk_icon_source_set_size_wildcarded(source, size_wildcarded);
       
    42  		gtk_icon_source_set_state_wildcarded(source, TRUE);
       
    43  		gtk_icon_set_add_source(iconset, source);
       
    44  		g_free(filename);
       
    45 @@ -445,9 +446,9 @@
       
    46  
       
    47  #define ADD_SIZED_ICON(name, size) \
       
    48  		if (sized_status_icons[i].name) { \
       
    49 -			add_sized_icon(normal, name, PIDGIN_ICON_THEME(theme), size, sized_status_icons[i], FALSE); \
       
    50 +			add_sized_icon(normal, name, PIDGIN_ICON_THEME(theme), size, sized_status_icons[i], FALSE,FALSE); \
       
    51  			if (sized_status_icons[i].translucent_name) \
       
    52 -				add_sized_icon(translucent, name, PIDGIN_ICON_THEME(theme), size, sized_status_icons[i], TRUE); \
       
    53 +				add_sized_icon(translucent, name, PIDGIN_ICON_THEME(theme), size, sized_status_icons[i], TRUE,FALSE); \
       
    54  		}
       
    55  		ADD_SIZED_ICON(microscopic, "11");
       
    56  		ADD_SIZED_ICON(extra_small, "16");
       
    57 @@ -474,9 +475,9 @@
       
    58  
       
    59  #define ADD_SIZED_ICON(name, size) \
       
    60  		if (sized_tray_icons[i].name) { \
       
    61 -			add_sized_icon(normal, name, PIDGIN_ICON_THEME(theme), size, sized_tray_icons[i], FALSE); \
       
    62 +			add_sized_icon(normal, name, PIDGIN_ICON_THEME(theme), size, sized_tray_icons[i], FALSE,TRUE); \
       
    63  			if (sized_tray_icons[i].translucent_name) \
       
    64 -				add_sized_icon(translucent, name, PIDGIN_ICON_THEME(theme), size, sized_tray_icons[i], TRUE); \
       
    65 +				add_sized_icon(translucent, name, PIDGIN_ICON_THEME(theme), size, sized_tray_icons[i], TRUE,TRUE); \
       
    66  		}
       
    67  		ADD_SIZED_ICON(extra_small, "16x16");
       
    68  		ADD_SIZED_ICON(small, "22x22");
       
    69 @@ -564,7 +565,7 @@
       
    70  
       
    71  #define ADD_SIZED_ICON(name, size) \
       
    72  		if (sized_stock_icons[i].name) \
       
    73 -			add_sized_icon(iconset, name, PIDGIN_ICON_THEME(theme), size, sized_stock_icons[i], FALSE);
       
    74 +			add_sized_icon(iconset, name, PIDGIN_ICON_THEME(theme), size, sized_stock_icons[i], FALSE,FALSE);
       
    75  		ADD_SIZED_ICON(microscopic, "11");
       
    76  		ADD_SIZED_ICON(extra_small, "16");
       
    77  		ADD_SIZED_ICON(small, "22");