Bug 528320 - Incorrect icons displayed for files with custom mimetype

2008-10-23  Alexander Larsson  <alexl@redhat.com>

	Bug 528320 - Incorrect icons displayed for files with custom mimetype icons
	
        * glocalfileinfo.c:
        (_g_local_file_info_get):
	Don't return the fallback icon (text-x-generic) for all files.
	This is causing problems with theme icon lookup and custom mime
	icons, as the generic fallback overrides custom mime icons in
	inherited themes.

	This is a slight change as applications might not get an icon wher
	they previously did. But there is no guarantee to get on neither before
	or after this change, so it should not break applications. Changes
	to nautilus and gtk+ will be done to manually use the generic fallback
	icon if no icon is found, but this is only required for rare cases.


svn path=/trunk/; revision=7620
This commit is contained in:
Alexander Larsson 2008-10-23 09:10:01 +00:00 committed by Alexander Larsson
parent 17c1241103
commit 8286387779
2 changed files with 19 additions and 6 deletions

View File

@ -1,3 +1,20 @@
2008-10-23 Alexander Larsson <alexl@redhat.com>
Bug 528320 - Incorrect icons displayed for files with custom mimetype icons
* glocalfileinfo.c:
(_g_local_file_info_get):
Don't return the fallback icon (text-x-generic) for all files.
This is causing problems with theme icon lookup and custom mime
icons, as the generic fallback overrides custom mime icons in
inherited themes.
This is a slight change as applications might not get an icon wher
they previously did. But there is no guarantee to get on neither before
or after this change, so it should not break applications. Changes
to nautilus and gtk+ will be done to manually use the generic fallback
icon if no icon is found, but this is only required for rare cases.
2008-10-21 Alexander Larsson <alexl@redhat.com>
* gfileinfo.h:

View File

@ -1577,12 +1577,8 @@ _g_local_file_info_get (const char *basename,
if (S_ISDIR (statbuf.st_mode))
type_icon = "folder";
else if (statbuf.st_mode & S_IXUSR)
type_icon = "application-x-executable";
else
type_icon = "text-x-generic";
g_themed_icon_append_name (G_THEMED_ICON (icon), type_icon);
if (type_icon)
g_themed_icon_append_name (G_THEMED_ICON (icon), type_icon);
}
}