- set it->icon automatically when icon is in theme or full path, no need for icon_get func

- keep current view when browsing 
- theme tweaks



SVN revision: 49179
This commit is contained in:
Hannes Janetzek 2010-05-24 11:49:46 +00:00
parent 1142455822
commit 63bc52c2b6
4 changed files with 95 additions and 99 deletions

View File

@ -32886,6 +32886,7 @@ collections {
to_y: "input_base"; to_y: "input_base";
} }
rel2 { rel2 {
/* to: "list_frame"; */
to_x: "list_frame"; to_x: "list_frame";
to_y: "input_base"; to_y: "input_base";
} }
@ -33521,7 +33522,7 @@ collections {
signal: "e,state,list_show"; signal: "e,state,list_show";
source: "e"; source: "e";
action: STATE_SET "visible" 0.0; action: STATE_SET "visible" 0.0;
transition: DECELERATE 0.1; transition: ACCELERATE 0.05;
target: "base"; target: "base";
target: "shadow_clip"; target: "shadow_clip";
} }
@ -33539,7 +33540,7 @@ collections {
signal: "e,state,entry_show"; signal: "e,state,entry_show";
source: "e"; source: "e";
action: STATE_SET "visible" 0.0; action: STATE_SET "visible" 0.0;
transition: SINUSOIDAL 0.08; transition: SINUSOIDAL 0.03;
target: "input_over1"; target: "input_over1";
target: "input_over2"; target: "input_over2";
target: "input_base"; target: "input_base";
@ -34109,7 +34110,7 @@ collections {
type: RECT; type: RECT;
description { description {
state: "default" 0.0; state: "default" 0.0;
visible: 0; /* visible: 0; */
rel1 { rel1 {
relative: 0.0 0.0; relative: 0.0 0.0;
offset: 0 4; offset: 0 4;
@ -34118,7 +34119,7 @@ collections {
relative: 1.0 1.0; relative: 1.0 1.0;
offset: -5 -5; offset: -5 -5;
} }
color: 255 255 255 0; color: 255 255 255 128;
} }
description { description {
state: "visible" 0.0; state: "visible" 0.0;
@ -34136,12 +34137,7 @@ collections {
state: "default" 0.0; state: "default" 0.0;
rel1.to: "base"; rel1.to: "base";
rel2.to: "base"; rel2.to: "base";
color: 235 235 235 255; color: 225 225 225 255;
}
description {
state: "selected" 0.0;
inherit: "default" 0.0;
color: 255 255 255 255;
} }
} }
part { part {
@ -34284,43 +34280,28 @@ collections {
action: STATE_SET "visible" 0.0; action: STATE_SET "visible" 0.0;
target: "arrow"; target: "arrow";
} }
program {
name: "thumb_gen";
signal: "e,action,thumb,gen";
source: "e";
action: STATE_SET "default" 0.0;
transition: DECELERATE 0.0;
target: "base";
after: "thumb_ungen";
}
program {
name: "thumb_ungen";
signal: "e,action,thumb,ungen";
source: "e";
action: STATE_SET "visible" 0.0;
transition: SINUSOIDAL 0.15;
target: "base";
}
program { program {
name: "thumb_show_delayed"; name: "thumb_show_delayed";
signal: "e,action,thumb,show_delayed"; signal: "e,action,thumb,show_delayed";
source: "e"; source: "e";
action: STATE_SET "default" 0.0; action: STATE_SET "default" 0.0;
target: "base"; target: "base";
after: "thumb_show_delayed2"; transition: DECELERATE 0.08;
} after: "thumb_show2";
program {
name: "thumb_show_delayed2";
action: STATE_SET "visible" 0.0;
transition: SINUSOIDAL 0.3;
target: "base";
} }
program { program {
name: "thumb_show"; name: "thumb_show";
signal: "e,action,thumb,show"; signal: "e,action,thumb,show";
source: "e"; source: "e";
action: STATE_SET "default" 0.0;
transition: DECELERATE 0.02;
target: "base";
after: "thumb_show2";
}
program {
name: "thumb_show2";
action: STATE_SET "visible" 0.0; action: STATE_SET "visible" 0.0;
transition: SINUSOIDAL 0.1; transition: ACCELERATE 0.05;
target: "base"; target: "base";
} }
} }
@ -34393,7 +34374,7 @@ collections {
type: RECT; type: RECT;
description { description {
state: "default" 0.0; state: "default" 0.0;
visible: 0; /* visible: 0; */
rel1 { rel1 {
relative: 0.0 0.0; relative: 0.0 0.0;
offset: 0 3; offset: 0 3;
@ -34428,12 +34409,7 @@ collections {
relative: 0.0 1.0; relative: 0.0 1.0;
offset: 40 -1; offset: 40 -1;
} }
color: 235 235 235 255; color: 225 225 225 255;
}
description {
state: "selected" 0.0;
inherit: "default" 0.0;
color: 255 255 255 255;
} }
} }
part { part {
@ -34644,40 +34620,20 @@ collections {
action: STATE_SET "visible" 0.0; action: STATE_SET "visible" 0.0;
target: "arrow"; target: "arrow";
} }
program {
name: "thumb_gen";
signal: "e,action,thumb,gen";
source: "e";
action: STATE_SET "default" 0.0;
transition: DECELERATE 0.0;
target: "base";
after: "thumb_ungen";
}
program {
name: "thumb_ungen";
signal: "e,action,thumb,ungen";
source: "e";
action: STATE_SET "visible" 0.0;
target: "base";
}
program { program {
name: "thumb_show_delayed"; name: "thumb_show_delayed";
signal: "e,action,thumb,show_delayed"; signal: "e,action,thumb,show_delayed";
source: "e"; source: "e";
action: STATE_SET "default" 0.0;
target: "base";
after: "thumb_show_delayed2";
}
program {
name: "thumb_show_delayed2";
action: STATE_SET "visible" 0.0; action: STATE_SET "visible" 0.0;
target: "base"; target: "base";
transition: ACCELERATE 0.02;
} }
program { program {
name: "thumb_show"; name: "thumb_show";
signal: "e,action,thumb,show"; signal: "e,action,thumb,show";
source: "e"; source: "e";
action: STATE_SET "visible" 0.0; action: STATE_SET "visible" 0.0;
transition: ACCELERATE 0.0;
target: "base"; target: "base";
} }
program { program {
@ -34685,6 +34641,7 @@ collections {
signal: "e,state,detail,show"; signal: "e,state,detail,show";
source: "e"; source: "e";
action: STATE_SET "detail" 0.0; action: STATE_SET "detail" 0.0;
transition: ACCELERATE 0.06;
target: "e.text.label"; target: "e.text.label";
target: "e.text.detail"; target: "e.text.detail";
} }

View File

@ -387,7 +387,7 @@ _config_init()
IFMODCFG(0x0001); IFMODCFG(0x0001);
evry_conf->rel_x = 0.5; evry_conf->rel_x = 0.5;
evry_conf->rel_y = 0.33; evry_conf->rel_y = 0.33;
evry_conf->width = 435; evry_conf->width = 450;
evry_conf->height = 415; evry_conf->height = 415;
evry_conf->scroll_animate = 1; evry_conf->scroll_animate = 1;
evry_conf->scroll_speed = 10.0; evry_conf->scroll_speed = 10.0;

View File

@ -103,6 +103,8 @@ _thumb_gen(void *data, Evas_Object *obj, void *event_info)
edje_extern_object_aspect_set(it->thumb, EDJE_ASPECT_CONTROL_BOTH, w, h); edje_extern_object_aspect_set(it->thumb, EDJE_ASPECT_CONTROL_BOTH, w, h);
edje_object_part_swallow(it->frame, "e.swallow.thumb", it->thumb); edje_object_part_swallow(it->frame, "e.swallow.thumb", it->thumb);
evas_object_show(it->thumb); evas_object_show(it->thumb);
edje_object_signal_emit(it->frame, "e,action,thumb,show_delayed", "e");
edje_object_message_signal_process(it->frame);
it->have_thumb = EINA_TRUE; it->have_thumb = EINA_TRUE;
it->do_thumb = EINA_FALSE; it->do_thumb = EINA_FALSE;
@ -129,6 +131,13 @@ _check_item(const Evry_Item *it)
return 0; return 0;
} }
static int _sort_pos_cb(const void *d1, const void *d2)
{
const Item *it1 = d1;
const Item *it2 = d2;
return ((it1->x + it1->y * 4) - (it2->x + it2->y * 4));
}
static int static int
_thumb_idler(void *data) _thumb_idler(void *data)
{ {
@ -136,10 +145,13 @@ _thumb_idler(void *data)
Eina_List *l, *ll; Eina_List *l, *ll;
Item *it; Item *it;
char *suffix; char *suffix;
int w, h;
if (!sd || sd->clearing) if (!sd || sd->clearing)
return 1; return 1;
sd->queue = eina_list_sort(sd->queue, -1, _sort_pos_cb);
EINA_LIST_FOREACH_SAFE(sd->queue, l, ll, it) EINA_LIST_FOREACH_SAFE(sd->queue, l, ll, it)
{ {
if (!it->image && !it->have_thumb) if (!it->image && !it->have_thumb)
@ -148,6 +160,10 @@ _thumb_idler(void *data)
if (it->image) if (it->image)
{ {
e_icon_size_get(it->image, &w, &h);
if (w && h)
edje_extern_object_aspect_set(it->thumb, EDJE_ASPECT_CONTROL_BOTH, w, h);
edje_object_part_swallow(it->frame, "e.swallow.icon", it->image); edje_object_part_swallow(it->frame, "e.swallow.icon", it->image);
evas_object_show(it->image); evas_object_show(it->image);
} }
@ -177,7 +193,16 @@ _thumb_idler(void *data)
e_thumb_icon_size_set(it->thumb, it->w, it->h); e_thumb_icon_size_set(it->thumb, it->w, it->h);
e_thumb_icon_begin(it->thumb); e_thumb_icon_begin(it->thumb);
it->do_thumb = EINA_TRUE; it->do_thumb = EINA_TRUE;
if (it->image)
edje_object_signal_emit(it->frame, "e,action,thumb,show_delayed", "e");
} }
else
{
edje_object_signal_emit(it->frame, "e,action,thumb,show", "e");
}
e_util_wakeup(); e_util_wakeup();
sd->queue = eina_list_remove_list(sd->queue, l); sd->queue = eina_list_remove_list(sd->queue, l);
return 1; return 1;
@ -296,10 +321,9 @@ _item_show(View *v, Item *it, Evas_Object *list)
evas_object_show(it->frame); evas_object_show(it->frame);
if (it->changed) /* if (it->changed)
edje_object_signal_emit(it->frame, "e,action,thumb,show_delayed", "e"); * edje_object_signal_emit(it->frame, "e,action,thumb,show_delayed", "e");
else * else */
edje_object_signal_emit(it->frame, "e,action,thumb,show", "e");
if (it->item->browseable) if (it->item->browseable)
edje_object_signal_emit(it->frame, "e,state,browseable", "e"); edje_object_signal_emit(it->frame, "e,state,browseable", "e");
@ -1072,20 +1096,15 @@ _view_update(Evry_View *view, int slide)
} }
if (p != v->plugin) if (p != v->plugin)
{
if (p->config->view_mode >= 0)
{ {
if (p->config->view_mode != v->mode) if (p->config->view_mode != v->mode)
_clear_items(v->span);
v->mode = p->config->view_mode;
}
else
{ {
if (v->mode_prev != v->mode)
_clear_items(v->span); _clear_items(v->span);
v->mode = v->mode_prev; if (p->config->view_mode < 0)
v->mode = evry_conf->view_mode;
else
v->mode = p->config->view_mode;
} }
} }
@ -1619,10 +1638,16 @@ _view_create(Evry_View *view, const Evry_State *s, const Evas_Object *swallow)
v->state = s; v->state = s;
v->evas = evas_object_evas_get(swallow); v->evas = evas_object_evas_get(swallow);
if (parent->mode < 0) if ((s->selector->states->next) &&
v->mode = evry_conf->view_mode; ((s->plugin->config->view_mode < 0) ||
else (!strcmp(s->plugin->name, N_("All")))))
v->mode = parent->mode; v->mode = parent->mode;
else if (s->plugin->config->view_mode >= 0)
v->mode = s->plugin->config->view_mode;
else
v->mode = evry_conf->view_mode;
v->plugin = s->plugin;
v->mode_prev = v->mode; v->mode_prev = v->mode;

View File

@ -434,6 +434,7 @@ Evas_Object *
evry_icon_theme_get(const char *icon, Evas *e) evry_icon_theme_get(const char *icon, Evas *e)
{ {
Evas_Object *o = e_icon_add(e); Evas_Object *o = e_icon_add(e);
e_icon_preload_set(o, 1);
if (e_config->icon_theme_overrides) if (e_config->icon_theme_overrides)
{ {
@ -510,10 +511,11 @@ _file_icon_get(Evry_Item *it, Evas *e)
if (it->icon) if (it->icon)
{ {
o = e_icon_add(e);
if (it->icon[0] == '/') if (it->icon[0] == '/')
{ {
o = e_icon_add(e);
e_icon_preload_set(o, 1);
if (!e_icon_file_set(o, it->icon)) if (!e_icon_file_set(o, it->icon))
{ {
evas_object_del(o); evas_object_del(o);
@ -527,7 +529,7 @@ _file_icon_get(Evry_Item *it, Evas *e)
} }
if (!(o) && (!it->icon) && file->mime && if (!(o) && (!it->icon) && file->mime &&
((!strncmp(file->mime, "image/", 6)) || (/* (!strncmp(file->mime, "image/", 6)) || */
(!strncmp(file->mime, "video/", 6)) || (!strncmp(file->mime, "video/", 6)) ||
(!strncmp(file->mime, "application/pdf", 15))) && (!strncmp(file->mime, "application/pdf", 15))) &&
(evry_file_url_get(file))) (evry_file_url_get(file)))
@ -570,6 +572,18 @@ evry_util_icon_get(Evry_Item *it, Evas *e)
o = _file_icon_get(it, e); o = _file_icon_get(it, e);
if (o) return o; if (o) return o;
if (!o && it->icon && it->icon[0] == '/')
{
o = e_icon_add(e);
e_icon_preload_set(o, 1);
if (!e_icon_file_set(o, it->icon))
{
evas_object_del(o);
o = NULL;
}
}
if (!o && it->icon) if (!o && it->icon)
o = evry_icon_theme_get(it->icon, e); o = evry_icon_theme_get(it->icon, e);