use icon theme for app icons, bug #450777

svn path=/trunk/; revision=7784
This commit is contained in:
Michael Terry 2007-06-26 23:29:58 +00:00
parent 68295d5106
commit 6b9550b491
18 changed files with 88 additions and 69 deletions

View file

@ -1,3 +1,8 @@
2007-06-26 Michael Terry <mike@mterry.name>
* capplet-util.c, Makefile.am: Drastically simplify capplet_set_icon()
to only look in the icon theme. Part of bug #450777.
2007-06-25 Denis Washington <denisw@svn.gnome.org>
* theme-thumbnail.[ch]:

View file

@ -2,9 +2,7 @@ EXTRA_DIST = ChangeLog
INCLUDES = \
-DGNOMECC_DATA_DIR="\"$(pkgdatadir)\"" \
-DGNOMECC_ICONS_DIR="\"$(pkgdatadir)/icons\"" \
-DGNOMELOCALEDIR="\"$(datadir)/locale\"" \
-DGNOME_ICONDIR=\""$(datadir)/pixmaps"\" \
-DG_LOG_DOMAIN=\"capplet-common\" \
-DINSTALL_PREFIX=\"$(prefix)\" \
-I$(top_srcdir) \

View file

@ -356,53 +356,7 @@ capplet_help (GtkWindow *parent, char const *helpfile, char const *section)
void
capplet_set_icon (GtkWidget *window, char const *icon_file_name)
{
char *path;
char *tmp;
char *p;
GdkPixbuf *icon_pixbuf = NULL;
GtkIconTheme *icon_theme;
GtkIconInfo *icon_info;
/* First look up from the icon theme */
icon_theme = gtk_icon_theme_get_default ();
tmp = g_strdup (icon_file_name);
p = strrchr (tmp, '.');
if (p)
p[0] = '\0';
icon_info = gtk_icon_theme_lookup_icon (icon_theme, tmp, 48, 0);
if (icon_info != NULL) {
icon_pixbuf = gtk_icon_info_load_icon (icon_info, NULL);
gtk_icon_info_free (icon_info);
}
g_free (tmp);
if (icon_pixbuf == NULL) {
/* Then we fallback to the control center icon location */
path = g_build_filename (GNOMECC_ICONS_DIR, icon_file_name, NULL);
icon_pixbuf = gdk_pixbuf_new_from_file (path, NULL);
g_free (path);
}
if (icon_pixbuf == NULL) {
/* Then we fallback to the gnome program discovery stuff */
path = gnome_pixmap_file (icon_file_name);
if (path != NULL) {
icon_pixbuf = gdk_pixbuf_new_from_file (path, NULL);
g_free (path);
}
}
if (icon_pixbuf != NULL) {
/* Make sure that every window gets an icon */
gtk_window_set_default_icon (icon_pixbuf);
gtk_window_set_icon (GTK_WINDOW (window), icon_pixbuf);
g_object_unref (icon_pixbuf);
}
/* Make sure that every window gets an icon */
gtk_window_set_default_icon_name (icon_file_name);
gtk_window_set_icon_name (GTK_WINDOW (window), icon_file_name);
}

View file

@ -1,3 +1,9 @@
2007-06-26 Michael Terry <mike@mterry.name>
* Makefile.am, main.c, display-properties.desktop.in.in: Use
icon theme instead of global pixmaps dir for app icon. Closes
bug #450777.
2007-06-16 Jens Granseuer <jensgr@gmx.net>
* main.c: (run_revert_dialog), (cb_dialog_response): don't make the

View file

@ -10,11 +10,8 @@ gnome_display_properties_LDFLAGS = -export-dynamic
@INTLTOOL_DESKTOP_RULE@
iconsdir = $(pkgdatadir)/icons
icons_DATA = display-capplet.png
desktop_iconsdir = $(datadir)/pixmaps
desktop_icons_DATA = display-capplet.png
icondir = $(datadir)/icons/hicolor/48x48/apps
dist_icon_DATA = display-capplet.png
desktopdir = $(datadir)/applications
Desktop_in_files = display-properties.desktop.in
@ -27,4 +24,16 @@ INCLUDES = $(DISPLAY_CAPPLET_CFLAGS) \
-DGNOMECC_DATA_DIR="\"$(pkgdatadir)\""
CLEANFILES = $(GNOMECC_CAPPLETS_CLEANFILES) $(Desktop_in_files) $(desktop_DATA)
EXTRA_DIST = $(icons_DATA)
gtk_update_icon_cache = gtk-update-icon-cache -f -t $(datadir)/icons/hicolor
install-data-hook: update-icon-cache
uninstall-hook: update-icon-cache
update-icon-cache:
@-if test -z "$(DESTDIR)"; then \
echo "Updating Gtk icon cache."; \
$(gtk_update_icon_cache); \
else \
echo "*** Icon cache not updated. After (un)install, run this:"; \
echo "*** $(gtk_update_icon_cache)"; \
fi

View file

@ -3,7 +3,7 @@ Encoding=UTF-8
_Name=Screen Resolution
_Comment=Change screen resolution
Exec=gnome-display-properties
Icon=display-capplet.png
Icon=display-capplet
Terminal=false
Type=Application
StartupNotify=true

View file

@ -632,7 +632,7 @@ create_dialog (struct DisplayInfo *info)
gtk_window_set_resizable(GTK_WINDOW (dialog), FALSE);
gtk_container_set_border_width (GTK_CONTAINER (dialog), 5);
gtk_box_set_spacing (GTK_BOX (GTK_DIALOG (dialog)->vbox), 2);
capplet_set_icon (dialog, "display-capplet.png");
capplet_set_icon (dialog, "display-capplet");
vbox = gtk_vbox_new (FALSE, 18);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);

View file

@ -1,3 +1,9 @@
2007-06-26 Michael Terry <mike@mterry.name>
* file-types-capplet.c, mime-edit-dialog.c,
file-types-capplet.desktop.in.in, Makefile.am: Use icon theme
instead of global pixmaps dir for app icon. Closes bug #450777.
2005-07-07 Sebastien Bacher <seb128@debian.org>
* file-types.desktop.in.in:

View file

@ -16,6 +16,9 @@ gnome_file_types_properties_SOURCES = \
@INTLTOOL_DESKTOP_RULE@
icondir = $(datadir)/icons/hicolor/48x48/apps
dist_icon_DATA = file-types-capplet.png
Gladedir = $(pkgdatadir)/glade
Glade_DATA = file-types-properties.glade
@ -26,3 +29,16 @@ desktop_DATA = $(Desktop_in_files:.desktop.in=.desktop)
INCLUDES = $(GNOMECC_CAPPLETS_CFLAGS) $(VFS_CAPPLET_CFLAGS)
CLEANFILES = $(GNOMECC_CAPPLETS_CLEANFILES)
EXTRA_DIST = $(Glade_DATA) $(Desktop_in_files) $(Desktop_in_files)
gtk_update_icon_cache = gtk-update-icon-cache -f -t $(datadir)/icons/hicolor
install-data-hook: update-icon-cache
uninstall-hook: update-icon-cache
update-icon-cache:
@-if test -z "$(DESTDIR)"; then \
echo "Updating Gtk icon cache."; \
$(gtk_update_icon_cache); \
else \
echo "*** Icon cache not updated. After (un)install, run this:"; \
echo "*** $(gtk_update_icon_cache)"; \
fi

View file

@ -301,7 +301,7 @@ main (int argc, char **argv)
GtkWidget *mime_dialog = WID ("main_dialog");
gtk_dialog_set_default_response (GTK_DIALOG (mime_dialog),
GTK_RESPONSE_CLOSE);
capplet_set_icon (mime_dialog, "gnome-ccmime.png");
capplet_set_icon (mime_dialog, "file-types-capplet");
gtk_widget_show_all (mime_dialog);
} else {
MimeTypeInfo *info = NULL;

View file

@ -1,7 +1,7 @@
[Desktop Entry]
_Name=File Types and Programs
_Comment=Specify which programs are used to open or view each file type
Icon=gnome-ccmime.png
Icon=file-types-capplet
Exec=file-types-capplet
Terminal=0
Type=Application

View file

@ -209,7 +209,7 @@ mime_edit_dialog_init (MimeEditDialog *dialog, MimeEditDialogClass *class)
GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
GTK_STOCK_OK, GTK_RESPONSE_OK,
NULL);
capplet_set_icon (dialog->p->dialog_win, "gnome-ccmime.png");
capplet_set_icon (dialog->p->dialog_win, "file-types-capplet");
gtk_dialog_set_default_response (GTK_DIALOG (dialog->p->dialog_win),
GTK_RESPONSE_OK);

View file

@ -1,3 +1,9 @@
2007-06-26 Michael Terry <mike@mterry.name>
* localization.desktop.in.in, Makefile.am,
gnome-localization-properties.c: Use icon theme instead of global
pixmaps dir for app icon. Closes bug #450777.
2006-12-08 Kjartan Maraas <kmaraas@gnome.org>
* gnome-localization-properties.c: (languages_changed_cb),

View file

@ -12,9 +12,8 @@ gnome_localization_properties_LDADD = \
gladedir = $(pkgdatadir)/glade
glade_DATA = gnome-localization-properties.glade
pixmapsdir = $(pkgdatadir)/pixmaps
pixmaps_DATA = \
localization-capplet.png
icondir = $(datadir)/icons/hicolor/48x48/apps
dist_icon_DATA = localization-capplet.png
desktopdir = $(datadir)/applications
desktop_in_files = localization.desktop.in
@ -23,3 +22,16 @@ desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
INCLUDES = $(GNOMECC_CAPPLETS_CFLAGS)
CLEANFILES = $(GNOMECC_CAPPLETS_CLEANFILES)
EXTRA_DIST = $(glade_DATA) $(pixmaps_DATA) $(desktop_in_files)
gtk_update_icon_cache = gtk-update-icon-cache -f -t $(datadir)/icons/hicolor
install-data-hook: update-icon-cache
uninstall-hook: update-icon-cache
update-icon-cache:
@-if test -z "$(DESTDIR)"; then \
echo "Updating Gtk icon cache."; \
$(gtk_update_icon_cache); \
else \
echo "*** Icon cache not updated. After (un)install, run this:"; \
echo "*** $(gtk_update_icon_cache)"; \
fi

View file

@ -1101,7 +1101,7 @@ main (int argc, char **argv)
changeset = NULL;
dialog = create_dialog ();
setup_dialog (dialog, changeset);
capplet_set_icon (WID ("localization_dialog"), "localization-capplet.png");
capplet_set_icon (WID ("localization_dialog"), "localization-capplet");
gtk_widget_show (WID ("localization_dialog"));
gtk_main ();

View file

@ -3,7 +3,7 @@ Encoding=UTF-8
_Name=Language and Culture
_Comment=Set your language and culture preferences
Exec=gnome-localization-properties
Icon=localization-capplet.png
Icon=localization-capplet
Terminal=false
Type=Application
StartupNotify=true

View file

@ -1,3 +1,8 @@
2007-06-26 Michael Terry <mike@mterry.name>
* Makefile.am: Update icon cache on uninstall as well as install.
Part of bug #450777.
2007-06-08 Christian Persch <chpe@gnome.org>
* main.c: (main): NULL-terminate the options array.

View file

@ -32,11 +32,13 @@ dist_icon_DATA = typing-monitor.png
svgicondir = $(datadir)/icons/hicolor/scalable/apps
dist_svgicon_DATA = typing-monitor.svg
gtk_update_icon_cache = gtk-update-icon-cache -f -t $(datadir)/icons/hicolor
install-data-hook:
install-data-hook: update-icon-cache
uninstall-hook: update-icon-cache
update-icon-cache:
@-if test -z "$(DESTDIR)"; then \
echo "Updating Gtk icon cache."; \
$(gtk_update_icon_cache); \
else \
echo "*** Icon cache not updated. After install, run this:"; \
echo "*** Icon cache not updated. After (un)install, run this:"; \
echo "*** $(gtk_update_icon_cache)"; \
fi