Harmonize icons a bit more (for plug-ins)
This commit is contained in:
parent
a5da094aa3
commit
69d0e558bb
|
@ -35,8 +35,8 @@ typedef struct _BrowserPluginHelper
|
||||||
{
|
{
|
||||||
Browser * browser;
|
Browser * browser;
|
||||||
int (*error)(Browser * browser, char const * message, int ret);
|
int (*error)(Browser * browser, char const * message, int ret);
|
||||||
GdkPixbuf * (*get_icon)(Browser * browser, char const * type,
|
GdkPixbuf * (*get_icon)(Browser * browser, char const * filename,
|
||||||
struct stat * st, int size);
|
char const * type, struct stat * st, int size);
|
||||||
Mime * (*get_mime)(Browser * browser);
|
Mime * (*get_mime)(Browser * browser);
|
||||||
int (*set_location)(Browser * browser, char const * path);
|
int (*set_location)(Browser * browser, char const * path);
|
||||||
} BrowserPluginHelper;
|
} BrowserPluginHelper;
|
||||||
|
|
|
@ -224,8 +224,8 @@ unsigned int browser_cnt = 0;
|
||||||
/* accessors */
|
/* accessors */
|
||||||
static gboolean _browser_plugin_is_enabled(Browser * browser,
|
static gboolean _browser_plugin_is_enabled(Browser * browser,
|
||||||
char const * plugin);
|
char const * plugin);
|
||||||
static GdkPixbuf * _browser_get_icon(Browser * browser, char const * type,
|
static GdkPixbuf * _browser_get_icon(Browser * browser, char const * filename,
|
||||||
struct stat * st, int size);
|
char const * type, struct stat * st, int size);
|
||||||
static Mime * _browser_get_mime(Browser * browser);
|
static Mime * _browser_get_mime(Browser * browser);
|
||||||
static void _browser_set_status(Browser * browser, char const * status);
|
static void _browser_set_status(Browser * browser, char const * status);
|
||||||
|
|
||||||
|
@ -2773,9 +2773,17 @@ static gboolean _browser_plugin_is_enabled(Browser * browser,
|
||||||
|
|
||||||
|
|
||||||
/* browser_get_icon */
|
/* browser_get_icon */
|
||||||
static GdkPixbuf * _browser_get_icon(Browser * browser, char const * type,
|
static GdkPixbuf * _browser_get_icon(Browser * browser, char const * filename,
|
||||||
struct stat * st, int size)
|
char const * type, struct stat * st, int size)
|
||||||
{
|
{
|
||||||
|
struct stat s;
|
||||||
|
|
||||||
|
if(st == NULL && lstat(filename, &s) == 0)
|
||||||
|
st = &s;
|
||||||
|
if(st != NULL && S_ISDIR(st->st_mode))
|
||||||
|
return vfs_mime_folder_icon(browser->mime, filename, st, size);
|
||||||
|
if(filename != NULL && type == NULL)
|
||||||
|
type = mime_type(browser->mime, filename);
|
||||||
return vfs_mime_icon(browser->mime, type, st, size);
|
return vfs_mime_icon(browser->mime, type, st, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -461,8 +461,8 @@ static void _refresh_type(Properties * properties, struct stat * st)
|
||||||
properties->filename)) == NULL
|
properties->filename)) == NULL
|
||||||
&& st->st_mode & S_IXUSR)
|
&& st->st_mode & S_IXUSR)
|
||||||
type = "application/x-executable";
|
type = "application/x-executable";
|
||||||
if(type != NULL && pixbuf == NULL
|
if(pixbuf == NULL && (pixbuf = helper->get_icon(helper->browser,
|
||||||
&& (pixbuf = helper->get_icon(helper->browser, type, st,
|
properties->filename, type, st,
|
||||||
iconsize)) != NULL)
|
iconsize)) != NULL)
|
||||||
image = gtk_image_new_from_pixbuf(pixbuf);
|
image = gtk_image_new_from_pixbuf(pixbuf);
|
||||||
if(type == NULL)
|
if(type == NULL)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user