forked from enlightenment/terminology
terminology - make wp display more than basic img formats (edj, scale etc.)
This commit is contained in:
parent
bcdfbbadfb
commit
7f92258ee4
|
@ -45,7 +45,7 @@ utf8.c utf8.h \
|
||||||
win.c win.h \
|
win.c win.h \
|
||||||
utils.c utils.h \
|
utils.c utils.h \
|
||||||
dbus.c dbus.h \
|
dbus.c dbus.h \
|
||||||
extns.h \
|
extns.c extns.h \
|
||||||
app_server.c app_server.h \
|
app_server.c app_server.h \
|
||||||
app_server_eet.c app_server_eet.h
|
app_server_eet.c app_server_eet.h
|
||||||
|
|
||||||
|
@ -87,7 +87,7 @@ tyq_LDADD =
|
||||||
|
|
||||||
tycat_SOURCES = \
|
tycat_SOURCES = \
|
||||||
tycat.c \
|
tycat.c \
|
||||||
extns.h
|
extns.c extns.h
|
||||||
|
|
||||||
tycat_CPPFLAGS = -I. \
|
tycat_CPPFLAGS = -I. \
|
||||||
-DPACKAGE_BIN_DIR=\"$(bindir)\" -DPACKAGE_LIB_DIR=\"$(libdir)\" \
|
-DPACKAGE_BIN_DIR=\"$(bindir)\" -DPACKAGE_LIB_DIR=\"$(libdir)\" \
|
||||||
|
|
|
@ -0,0 +1,41 @@
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
const char *extn_img[] =
|
||||||
|
{
|
||||||
|
".png", ".jpg", ".jpeg", ".jpe", ".jfif", ".tif", ".tiff", ".gif", ".thm",
|
||||||
|
".bmp", ".ico", ".ppm", ".pgm", ".pbm", ".pnm", ".xpm", ".psd", ".wbmp",
|
||||||
|
".cur", ".xcf", ".xcf.gz", ".arw", ".cr2", ".crw", ".dcr", ".dng", ".k25",
|
||||||
|
".kdc", ".erf", ".mrw", ".nef", ".nrf", ".nrw", ".orf", ".raw", ".rw2",
|
||||||
|
".pef", ".raf", ".sr2", ".srf", ".x3f", ".webp", ".ppt", ".pptx", ".odp",
|
||||||
|
NULL
|
||||||
|
};
|
||||||
|
|
||||||
|
const char *extn_scale[] =
|
||||||
|
{
|
||||||
|
".svg", ".svgz", ".svg.gz", ".ps", ".ps.gz", ".pdf",
|
||||||
|
NULL
|
||||||
|
};
|
||||||
|
|
||||||
|
const char *extn_edj[] =
|
||||||
|
{
|
||||||
|
".edj",
|
||||||
|
NULL
|
||||||
|
};
|
||||||
|
|
||||||
|
const char *extn_mov[] =
|
||||||
|
{
|
||||||
|
".asf", ".avi", ".bdm", ".bdmv", ".clpi", ".cpi", ".dv", ".fla", ".flv",
|
||||||
|
".m1v", ".m2t", ".m2v", ".m4v", ".mkv", ".mov", ".mp2", ".mp2ts", ".mp4",
|
||||||
|
".mpe", ".mpeg", ".mpg", ".mpl", ".mpls", ".mts", ".mxf", ".nut", ".nuv",
|
||||||
|
".ogg", ".ogm", ".ogv", ".qt", ".rm", ".rmj", ".rmm", ".rms", ".rmvb",
|
||||||
|
".rmx", ".rv", ".swf", ".ts", ".weba", ".webm", ".wmv", ".3g2", ".3gp",
|
||||||
|
".3gp2", ".3gpp", ".3gpp2", ".3p2", ".264",
|
||||||
|
".mp3", ".aac", ".wav",
|
||||||
|
NULL
|
||||||
|
};
|
||||||
|
|
||||||
|
const char *extn_aud[] =
|
||||||
|
{
|
||||||
|
".mp3", ".aac", ".wav",
|
||||||
|
NULL
|
||||||
|
};
|
|
@ -1,39 +1,5 @@
|
||||||
static const char *extn_img[] =
|
extern const char *extn_img[];
|
||||||
{
|
extern const char *extn_scale[];
|
||||||
".png", ".jpg", ".jpeg", ".jpe", ".jfif", ".tif", ".tiff", ".gif", ".thm",
|
extern const char *extn_edj[];
|
||||||
".bmp", ".ico", ".ppm", ".pgm", ".pbm", ".pnm", ".xpm", ".psd", ".wbmp",
|
extern const char *extn_mov[];
|
||||||
".cur", ".xcf", ".xcf.gz", ".arw", ".cr2", ".crw", ".dcr", ".dng", ".k25",
|
extern const char *extn_aud[];
|
||||||
".kdc", ".erf", ".mrw", ".nef", ".nrf", ".nrw", ".orf", ".raw", ".rw2",
|
|
||||||
".pef", ".raf", ".sr2", ".srf", ".x3f", ".webp", ".ppt", ".pptx", ".odp",
|
|
||||||
NULL
|
|
||||||
};
|
|
||||||
|
|
||||||
static const char *extn_scale[] =
|
|
||||||
{
|
|
||||||
".svg", ".svgz", ".svg.gz", ".ps", ".ps.gz", ".pdf",
|
|
||||||
NULL
|
|
||||||
};
|
|
||||||
|
|
||||||
static const char *extn_edj[] =
|
|
||||||
{
|
|
||||||
".edj",
|
|
||||||
NULL
|
|
||||||
};
|
|
||||||
|
|
||||||
static const char *extn_mov[] =
|
|
||||||
{
|
|
||||||
".asf", ".avi", ".bdm", ".bdmv", ".clpi", ".cpi", ".dv", ".fla", ".flv",
|
|
||||||
".m1v", ".m2t", ".m2v", ".m4v", ".mkv", ".mov", ".mp2", ".mp2ts", ".mp4",
|
|
||||||
".mpe", ".mpeg", ".mpg", ".mpl", ".mpls", ".mts", ".mxf", ".nut", ".nuv",
|
|
||||||
".ogg", ".ogm", ".ogv", ".qt", ".rm", ".rmj", ".rmm", ".rms", ".rmvb",
|
|
||||||
".rmx", ".rv", ".swf", ".ts", ".weba", ".webm", ".wmv", ".3g2", ".3gp",
|
|
||||||
".3gp2", ".3gpp", ".3gpp2", ".3p2", ".264",
|
|
||||||
".mp3", ".aac", ".wav",
|
|
||||||
NULL
|
|
||||||
};
|
|
||||||
|
|
||||||
static const char *extn_aud[] =
|
|
||||||
{
|
|
||||||
".mp3", ".aac", ".wav",
|
|
||||||
NULL
|
|
||||||
};
|
|
||||||
|
|
|
@ -57,7 +57,18 @@ _grid_content_get(void *data, Evas_Object *obj, const char *part)
|
||||||
{
|
{
|
||||||
if (item->path)
|
if (item->path)
|
||||||
{
|
{
|
||||||
return media_add(obj, item->path, config, MEDIA_THUMB, TYPE_IMG);
|
int len0, len = strlen(item->path);
|
||||||
|
int i, ret = 0;
|
||||||
|
|
||||||
|
for (i = 0; extn_edj[i]; i++)
|
||||||
|
{
|
||||||
|
len0 = strlen(extn_edj[i]);
|
||||||
|
if ((len > len0) &&
|
||||||
|
(!strcasecmp(&(item->path[len - len0]), extn_edj[i])))
|
||||||
|
return media_add(obj, item->path, config,
|
||||||
|
MEDIA_BG, &ret);
|
||||||
|
}
|
||||||
|
return media_add(obj, item->path, config, MEDIA_THUMB, &ret);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -83,7 +94,7 @@ _item_selected(void *data, Evas_Object *obj EINA_UNUSED, void *event EINA_UNUSED
|
||||||
if (!config) return;
|
if (!config) return;
|
||||||
if (!item->path)
|
if (!item->path)
|
||||||
{
|
{
|
||||||
//no background
|
// no background
|
||||||
eina_stringshare_del(config->background);
|
eina_stringshare_del(config->background);
|
||||||
config->background = NULL;
|
config->background = NULL;
|
||||||
config_save(config, NULL);
|
config_save(config, NULL);
|
||||||
|
@ -272,8 +283,8 @@ static Eina_List*
|
||||||
_rec_read_directorys(Eina_List *list, char *root_path, Evas_Object *term)
|
_rec_read_directorys(Eina_List *list, char *root_path, Evas_Object *term)
|
||||||
{
|
{
|
||||||
Eina_List *childs = ecore_file_ls(root_path);
|
Eina_List *childs = ecore_file_ls(root_path);
|
||||||
char *file_name, *ext;
|
char *file_name;
|
||||||
int i;
|
int i, j, len, len0;
|
||||||
char path[PATH_MAX];
|
char path[PATH_MAX];
|
||||||
Background_Item *item;
|
Background_Item *item;
|
||||||
|
|
||||||
|
@ -281,20 +292,32 @@ _rec_read_directorys(Eina_List *list, char *root_path, Evas_Object *term)
|
||||||
EINA_LIST_FREE(childs, file_name)
|
EINA_LIST_FREE(childs, file_name)
|
||||||
{
|
{
|
||||||
snprintf(path, PATH_MAX, "%s/%s", root_path, file_name);
|
snprintf(path, PATH_MAX, "%s/%s", root_path, file_name);
|
||||||
ext = strchr(file_name, '.');
|
len = strlen(file_name);
|
||||||
if ((!ecore_file_is_dir(path)) && (file_name[0] != '.') && (ext))
|
if ((!ecore_file_is_dir(path)) && (file_name[0] != '.'))
|
||||||
{
|
{
|
||||||
for (i = 0; extn_img[i]; i++)
|
const char **extns[5] =
|
||||||
|
{ extn_img, extn_scale, extn_edj, extn_mov, NULL };
|
||||||
|
|
||||||
|
for (j = 0; extns[j]; j++)
|
||||||
{
|
{
|
||||||
if (strcasecmp(extn_img[i], ext)) continue;
|
const char **ex = extns[j];
|
||||||
item = calloc(1, sizeof(Background_Item));
|
|
||||||
if (item)
|
for (i = 0; ex[i]; i++)
|
||||||
{
|
{
|
||||||
item->path = eina_stringshare_add(path);
|
len0 = strlen(ex[i]);
|
||||||
item->term = term;
|
if ((len > len0) &&
|
||||||
list = eina_list_append(list, item);
|
(!strcasecmp(&(file_name[len - len0]), ex[i])))
|
||||||
|
{
|
||||||
|
item = calloc(1, sizeof(Background_Item));
|
||||||
|
if (item)
|
||||||
|
{
|
||||||
|
item->path = eina_stringshare_add(path);
|
||||||
|
item->term = term;
|
||||||
|
list = eina_list_append(list, item);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -324,22 +347,22 @@ _read_directorys(Evas_Object *term)
|
||||||
free(item);
|
free(item);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//first of all append the None !!
|
// first of all append the None !!
|
||||||
item = calloc(1, sizeof(Background_Item));
|
item = calloc(1, sizeof(Background_Item));
|
||||||
item->path = NULL;
|
item->path = NULL;
|
||||||
item->term = term;
|
item->term = term;
|
||||||
backgroundlist = eina_list_append(backgroundlist, item);
|
backgroundlist = eina_list_append(backgroundlist, item);
|
||||||
//append the standart directory
|
// append the standard directory
|
||||||
snprintf(path, sizeof(path), "%s/backgrounds/", elm_app_data_dir_get());
|
snprintf(path, sizeof(path), "%s/backgrounds", elm_app_data_dir_get());
|
||||||
backgroundlist = _rec_read_directorys(backgroundlist, path, term);
|
backgroundlist = _rec_read_directorys(backgroundlist, path, term);
|
||||||
//append the Home background directory if this directory exists
|
// append the Home background directory if this directory exists
|
||||||
home_dir = getenv("HOME");
|
home_dir = getenv("HOME");
|
||||||
if(home_dir)
|
if (home_dir)
|
||||||
{
|
{
|
||||||
snprintf(path, sizeof(path), "%s/.e/e/backgrounds/", home_dir);
|
snprintf(path, sizeof(path), "%s/.e/e/backgrounds", home_dir);
|
||||||
backgroundlist = _rec_read_directorys(backgroundlist, path, term);
|
backgroundlist = _rec_read_directorys(backgroundlist, path, term);
|
||||||
}
|
}
|
||||||
//Now append all the directorys which are stored
|
// Now append all the directorys which are stored
|
||||||
EINA_LIST_FOREACH(config->wallpaper_paths, node, path_iterate)
|
EINA_LIST_FOREACH(config->wallpaper_paths, node, path_iterate)
|
||||||
{
|
{
|
||||||
backgroundlist = _rec_read_directorys(backgroundlist, path_iterate, term);
|
backgroundlist = _rec_read_directorys(backgroundlist, path_iterate, term);
|
||||||
|
|
Loading…
Reference in New Issue