add configurable max file size to generate thumbnails for, also block thumbnail generation for movie files entirely since this isn't even possible
ticket #1545 SVN revision: 76931
This commit is contained in:
parent
37f4478e0a
commit
709c740a27
|
@ -1025,6 +1025,7 @@ e_fm2_path_set(Evas_Object *obj, const char *dev, const char *path)
|
||||||
sd->config->view.single_click = e_config->filemanager_single_click;
|
sd->config->view.single_click = e_config->filemanager_single_click;
|
||||||
sd->config->view.single_click_delay = EINA_FALSE;
|
sd->config->view.single_click_delay = EINA_FALSE;
|
||||||
sd->config->view.no_subdir_jump = EINA_FALSE;
|
sd->config->view.no_subdir_jump = EINA_FALSE;
|
||||||
|
sd->config->icon.max_thumb_size = 5;
|
||||||
sd->config->icon.icon.w = 128;
|
sd->config->icon.icon.w = 128;
|
||||||
sd->config->icon.icon.h = 128;
|
sd->config->icon.icon.h = 128;
|
||||||
sd->config->icon.list.w = 24;
|
sd->config->icon.list.w = 24;
|
||||||
|
@ -2176,6 +2177,19 @@ e_fm2_icon_get(Evas *evas, E_Fm2_Icon *ic,
|
||||||
if (o) return o;
|
if (o) return o;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (eina_str_has_extension(ic->info.file, ".avi") ||
|
||||||
|
eina_str_has_extension(ic->info.file, ".mpg") ||
|
||||||
|
eina_str_has_extension(ic->info.file, ".mpeg") ||
|
||||||
|
eina_str_has_extension(ic->info.file, ".mkv") ||
|
||||||
|
(ic->info.statinfo.st_size >= (ic->sd->config->icon.max_thumb_size ?: 5) * 1024 * 1024))
|
||||||
|
{
|
||||||
|
/* block movie thumbnails, which we can't do, and large file previews,
|
||||||
|
* which we won't do
|
||||||
|
*/
|
||||||
|
ic->thumb_failed = EINA_TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
/* create thumbnails for edje files */
|
/* create thumbnails for edje files */
|
||||||
if (_e_fm2_file_is_edje(ic->info.file))
|
if (_e_fm2_file_is_edje(ic->info.file))
|
||||||
{
|
{
|
||||||
|
|
|
@ -90,6 +90,7 @@ struct _E_Fm2_Config
|
||||||
Eina_Bool show : 1;
|
Eina_Bool show : 1;
|
||||||
} extension;
|
} extension;
|
||||||
const char *key_hint;
|
const char *key_hint;
|
||||||
|
unsigned int max_thumb_size;
|
||||||
} icon;
|
} icon;
|
||||||
/* how to sort files */
|
/* how to sort files */
|
||||||
struct
|
struct
|
||||||
|
|
|
@ -1432,6 +1432,7 @@ _e_fwin_config_set(E_Fwin_Page *page)
|
||||||
fmc.view.selector = 0;
|
fmc.view.selector = 0;
|
||||||
fmc.view.single_click = fileman_config->view.single_click;
|
fmc.view.single_click = fileman_config->view.single_click;
|
||||||
fmc.view.no_subdir_jump = 0;
|
fmc.view.no_subdir_jump = 0;
|
||||||
|
fmc.icon.max_thumb_size = fileman_config->icon.max_thumb_size;
|
||||||
fmc.icon.extension.show = fileman_config->icon.extension.show;
|
fmc.icon.extension.show = fileman_config->icon.extension.show;
|
||||||
fmc.list.sort.no_case = fileman_config->list.sort.no_case;
|
fmc.list.sort.no_case = fileman_config->list.sort.no_case;
|
||||||
fmc.list.sort.extension = fileman_config->list.sort.extension;
|
fmc.list.sort.extension = fileman_config->list.sort.extension;
|
||||||
|
|
|
@ -44,6 +44,7 @@ struct _E_Config_Dialog_Data
|
||||||
int show;
|
int show;
|
||||||
} extension;
|
} extension;
|
||||||
const char *key_hint;
|
const char *key_hint;
|
||||||
|
int max_thumb_size;
|
||||||
} icon;
|
} icon;
|
||||||
/* how to sort files */
|
/* how to sort files */
|
||||||
struct
|
struct
|
||||||
|
@ -147,6 +148,7 @@ _fill_data(E_Config_Dialog_Data *cfdata)
|
||||||
cfdata->view.show_sidebar = fileman_config->view.show_sidebar;
|
cfdata->view.show_sidebar = fileman_config->view.show_sidebar;
|
||||||
cfdata->view.desktop_navigation = fileman_config->view.desktop_navigation;
|
cfdata->view.desktop_navigation = fileman_config->view.desktop_navigation;
|
||||||
cfdata->view.menu_shows_files = fileman_config->view.menu_shows_files;
|
cfdata->view.menu_shows_files = fileman_config->view.menu_shows_files;
|
||||||
|
cfdata->icon.max_thumb_size = fileman_config->icon.max_thumb_size;
|
||||||
cfdata->icon.icon.w = fileman_config->icon.icon.w;
|
cfdata->icon.icon.w = fileman_config->icon.icon.w;
|
||||||
cfdata->icon.icon.h = fileman_config->icon.icon.h;
|
cfdata->icon.icon.h = fileman_config->icon.icon.h;
|
||||||
cfdata->tooltip.delay = fileman_config->tooltip.delay;
|
cfdata->tooltip.delay = fileman_config->tooltip.delay;
|
||||||
|
@ -237,6 +239,7 @@ _basic_check_changed(E_Config_Dialog *cfd __UNUSED__,
|
||||||
(fileman_config->view.desktop_navigation != cfdata->view.desktop_navigation) ||
|
(fileman_config->view.desktop_navigation != cfdata->view.desktop_navigation) ||
|
||||||
(fileman_config->view.menu_shows_files != cfdata->view.menu_shows_files) ||
|
(fileman_config->view.menu_shows_files != cfdata->view.menu_shows_files) ||
|
||||||
(fileman_config->icon.extension.show != cfdata->icon.extension.show) ||
|
(fileman_config->icon.extension.show != cfdata->icon.extension.show) ||
|
||||||
|
((int)fileman_config->icon.max_thumb_size != cfdata->icon.max_thumb_size) ||
|
||||||
(fileman_config->selection.windows_modifiers != cfdata->selection.windows_modifiers) ||
|
(fileman_config->selection.windows_modifiers != cfdata->selection.windows_modifiers) ||
|
||||||
(fileman_config->icon.icon.w != cfdata->icon.icon.w) ||
|
(fileman_config->icon.icon.w != cfdata->icon.icon.w) ||
|
||||||
(fileman_config->icon.icon.h != cfdata->icon.icon.w) ||
|
(fileman_config->icon.icon.h != cfdata->icon.icon.w) ||
|
||||||
|
@ -391,6 +394,12 @@ _basic_create(E_Config_Dialog *cfd __UNUSED__,
|
||||||
&(cfdata->view.desktop_navigation));
|
&(cfdata->view.desktop_navigation));
|
||||||
e_widget_list_object_append(o, ob, 1, 1, 0.5);
|
e_widget_list_object_append(o, ob, 1, 1, 0.5);
|
||||||
|
|
||||||
|
ob = e_widget_label_add(evas, _("Max File Size For Thumbnailing"));
|
||||||
|
e_widget_list_object_append(o, ob, 1, 1, 0.5);
|
||||||
|
ob = e_widget_slider_add(evas, 1, 0, _("%1.0f"), 1.0, 10.0, 1, 0,
|
||||||
|
NULL, &(cfdata->icon.max_thumb_size), 150);
|
||||||
|
e_widget_list_object_append(o, ob, 1, 1, 0.5);
|
||||||
|
|
||||||
ob = e_widget_label_add(evas, _("Spring Delay"));
|
ob = e_widget_label_add(evas, _("Spring Delay"));
|
||||||
e_widget_list_object_append(o, ob, 1, 1, 0.5);
|
e_widget_list_object_append(o, ob, 1, 1, 0.5);
|
||||||
ob = e_widget_slider_add(evas, 1, 0, _("%1.0f"), 1.0, 10.0, 1, 0,
|
ob = e_widget_slider_add(evas, 1, 0, _("%1.0f"), 1.0, 10.0, 1, 0,
|
||||||
|
|
|
@ -252,6 +252,7 @@ _e_mod_fileman_config_load(void)
|
||||||
E_CONFIG_VAL(D, T, icon.fixed.w, UCHAR);
|
E_CONFIG_VAL(D, T, icon.fixed.w, UCHAR);
|
||||||
E_CONFIG_VAL(D, T, icon.fixed.h, UCHAR);
|
E_CONFIG_VAL(D, T, icon.fixed.h, UCHAR);
|
||||||
E_CONFIG_VAL(D, T, icon.extension.show, UCHAR);
|
E_CONFIG_VAL(D, T, icon.extension.show, UCHAR);
|
||||||
|
E_CONFIG_VAL(D, T, icon.max_thumb_size, UINT);
|
||||||
E_CONFIG_VAL(D, T, list.sort.no_case, UCHAR);
|
E_CONFIG_VAL(D, T, list.sort.no_case, UCHAR);
|
||||||
E_CONFIG_VAL(D, T, list.sort.extension, UCHAR);
|
E_CONFIG_VAL(D, T, list.sort.extension, UCHAR);
|
||||||
E_CONFIG_VAL(D, T, list.sort.mtime, UCHAR);
|
E_CONFIG_VAL(D, T, list.sort.mtime, UCHAR);
|
||||||
|
@ -340,6 +341,10 @@ _e_mod_fileman_config_load(void)
|
||||||
fileman_config->view.spring_delay = 1;
|
fileman_config->view.spring_delay = 1;
|
||||||
IFMODCFGEND;
|
IFMODCFGEND;
|
||||||
|
|
||||||
|
IFMODCFG(0x0115);
|
||||||
|
fileman_config->icon.max_thumb_size = 5;
|
||||||
|
IFMODCFGEND;
|
||||||
|
|
||||||
fileman_config->config_version = MOD_CONFIG_FILE_VERSION;
|
fileman_config->config_version = MOD_CONFIG_FILE_VERSION;
|
||||||
|
|
||||||
/* UCHAR's give nasty compile warnings about comparisons so not gonna limit those */
|
/* UCHAR's give nasty compile warnings about comparisons so not gonna limit those */
|
||||||
|
@ -352,6 +357,7 @@ _e_mod_fileman_config_load(void)
|
||||||
E_CONFIG_LIMIT(fileman_config->tooltip.delay, 0.0, 5.0);
|
E_CONFIG_LIMIT(fileman_config->tooltip.delay, 0.0, 5.0);
|
||||||
E_CONFIG_LIMIT(fileman_config->tooltip.size, 10.0, 75.0);
|
E_CONFIG_LIMIT(fileman_config->tooltip.size, 10.0, 75.0);
|
||||||
E_CONFIG_LIMIT(fileman_config->view.spring_delay, 1, 10);
|
E_CONFIG_LIMIT(fileman_config->view.spring_delay, 1, 10);
|
||||||
|
E_CONFIG_LIMIT(fileman_config->icon.max_thumb_size, 1, 10);
|
||||||
|
|
||||||
e_config_save_queue();
|
e_config_save_queue();
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
/* Increment for Major Changes */
|
/* Increment for Major Changes */
|
||||||
#define MOD_CONFIG_FILE_EPOCH 0x0001
|
#define MOD_CONFIG_FILE_EPOCH 0x0001
|
||||||
/* Increment for Minor Changes (ie: user doesn't need a new config) */
|
/* Increment for Minor Changes (ie: user doesn't need a new config) */
|
||||||
#define MOD_CONFIG_FILE_GENERATION 0x0114
|
#define MOD_CONFIG_FILE_GENERATION 0x0115
|
||||||
#define MOD_CONFIG_FILE_VERSION ((MOD_CONFIG_FILE_EPOCH << 16) | MOD_CONFIG_FILE_GENERATION)
|
#define MOD_CONFIG_FILE_VERSION ((MOD_CONFIG_FILE_EPOCH << 16) | MOD_CONFIG_FILE_GENERATION)
|
||||||
|
|
||||||
typedef struct _Config Config;
|
typedef struct _Config Config;
|
||||||
|
@ -76,6 +76,7 @@ struct _Config
|
||||||
unsigned char show;
|
unsigned char show;
|
||||||
} extension;
|
} extension;
|
||||||
const char *key_hint;
|
const char *key_hint;
|
||||||
|
unsigned int max_thumb_size;
|
||||||
} icon;
|
} icon;
|
||||||
/* how to sort files */
|
/* how to sort files */
|
||||||
struct
|
struct
|
||||||
|
|
Loading…
Reference in New Issue