Replace eel_create_spotlight_pixbuf()

We use the normal gtk_style_context_set_state() machinery to set a
prelighted state.  Hopefully even symbolic icons will be rendered
prelighted properly.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
This commit is contained in:
Federico Mena Quintero 2011-10-05 07:26:26 -05:00
parent f404eb41b5
commit cbd3c6ca12

View File

@ -274,17 +274,18 @@ get_eject_icon (GtkPlacesSidebar *sidebar,
icon_info = gtk_icon_theme_lookup_by_gicon (icon_theme, icon, icon_size, 0); icon_info = gtk_icon_theme_lookup_by_gicon (icon_theme, icon, icon_size, 0);
style = gtk_widget_get_style_context (GTK_WIDGET (sidebar)); style = gtk_widget_get_style_context (GTK_WIDGET (sidebar));
gtk_style_context_save (style);
if (highlighted)
gtk_style_context_set_state (style, GTK_STATE_FLAG_PRELIGHT);
eject = gtk_icon_info_load_symbolic_for_context (icon_info, eject = gtk_icon_info_load_symbolic_for_context (icon_info,
style, style,
NULL, NULL,
NULL); NULL);
if (highlighted) { gtk_style_context_restore (context);
GdkPixbuf *high;
high = eel_create_spotlight_pixbuf (eject);
g_object_unref (eject);
eject = high;
}
g_object_unref (icon); g_object_unref (icon);
gtk_icon_info_free (icon_info); gtk_icon_info_free (icon_info);