forked from enlightenment/enlightenment
e17/evry: allow theme to set min size of thumb view icons
- cleanup list swallow functions... thought there was a bug SVN revision: 62599
This commit is contained in:
parent
4bb85a2b3b
commit
7e553786d5
|
@ -156,7 +156,7 @@ evry_show(E_Zone *zone, E_Zone_Edge edge, const char *params, Eina_Bool popup)
|
|||
_evry_time = ecore_time_get();
|
||||
DBG("_____evry_show______");
|
||||
#endif
|
||||
|
||||
|
||||
E_OBJECT_CHECK_RETURN(zone, 0);
|
||||
E_OBJECT_TYPE_CHECK_RETURN(zone, E_ZONE_TYPE, 0);
|
||||
|
||||
|
@ -170,7 +170,7 @@ evry_show(E_Zone *zone, E_Zone_Edge edge, const char *params, Eina_Bool popup)
|
|||
ECORE_X_WINDOW_TYPE_UTILITY);
|
||||
|
||||
ecore_evas_name_class_set(win->ewin->ecore_evas, "E", "everything");
|
||||
|
||||
|
||||
ecore_evas_show(win->ewin->ecore_evas);
|
||||
|
||||
if (e_grabinput_get(win->ewin->evas_win, 0, win->ewin->evas_win))
|
||||
|
@ -178,7 +178,7 @@ evry_show(E_Zone *zone, E_Zone_Edge edge, const char *params, Eina_Bool popup)
|
|||
else
|
||||
ERR("could not acquire grab");
|
||||
}
|
||||
|
||||
|
||||
evry_history_load();
|
||||
|
||||
if (params)
|
||||
|
@ -538,7 +538,7 @@ _evry_selector_update_actions(Evry_Selector *sel)
|
|||
if (sel->action_timer)
|
||||
ecore_timer_del(sel->action_timer);
|
||||
|
||||
_evry_selector_item_clear(sel);
|
||||
_evry_selector_item_clear(sel);
|
||||
sel->action_timer = ecore_timer_add(0.2, _evry_timer_cb_actions_get, sel);
|
||||
}
|
||||
|
||||
|
@ -1262,7 +1262,7 @@ _evry_selector_thumb(Evry_Selector *sel, const Evry_Item *it)
|
|||
{
|
||||
e_thumb_icon_file_set(sel->o_thumb, file->path, "e/desktop/background");
|
||||
e_thumb_icon_size_set(sel->o_thumb, 128, 80);
|
||||
}
|
||||
}
|
||||
else
|
||||
e_thumb_icon_file_set(sel->o_thumb, file->path, NULL);
|
||||
|
||||
|
@ -1326,7 +1326,7 @@ _evry_selector_item_update(Evry_Selector *sel)
|
|||
if (!_evry_selector_thumb(sel, it))
|
||||
{
|
||||
o = evry_util_icon_get(it, win->evas);
|
||||
|
||||
|
||||
if ((!o) && it->plugin)
|
||||
o = evry_util_icon_get(EVRY_ITEM(it->plugin), win->evas);
|
||||
}
|
||||
|
@ -1481,13 +1481,13 @@ _evry_state_pop(Evry_Selector *sel, int immediate)
|
|||
ecore_timer_del(sel->update_timer);
|
||||
sel->update_timer = NULL;
|
||||
}
|
||||
|
||||
|
||||
if (sel->action_timer)
|
||||
{
|
||||
ecore_timer_del(sel->action_timer);
|
||||
sel->action_timer = NULL;
|
||||
}
|
||||
|
||||
|
||||
if (s->view)
|
||||
{
|
||||
if (immediate)
|
||||
|
@ -1691,8 +1691,8 @@ evry_browse_item(Evry_Item *it)
|
|||
if (s->view)
|
||||
{
|
||||
s->view->state = s;
|
||||
_evry_view_show(win, s->view, SLIDE_LEFT);
|
||||
s->view->update(s->view);
|
||||
_evry_view_show(win, s->view, SLIDE_LEFT);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1704,17 +1704,21 @@ evry_browse_item(Evry_Item *it)
|
|||
int
|
||||
evry_browse_back(Evry_Selector *sel)
|
||||
{
|
||||
Evry_Window *win = sel->win;
|
||||
Evry_Window *win;
|
||||
Evry_State *s;
|
||||
|
||||
if (!sel) sel = CUR_SEL;
|
||||
if (!sel) return 0;
|
||||
|
||||
Evry_State *s = sel->state;
|
||||
|
||||
DBG("%p", sel);
|
||||
|
||||
if (!s || !sel->states->next)
|
||||
if ((!sel) || !(win = sel->win))
|
||||
return 0;
|
||||
|
||||
if (!(s = sel->state) || (!sel->states->next))
|
||||
return 0;
|
||||
|
||||
/* next = eina_list_data_get(sel->states->next);
|
||||
* edje_object_part_unswallow(win->o_main, next->view->o_list); */
|
||||
|
||||
_evry_state_pop(sel, 0);
|
||||
|
||||
s = sel->state;
|
||||
|
@ -2299,7 +2303,7 @@ _evry_action_do(Evry_Action *act)
|
|||
{
|
||||
Evry_Event_Action_Performed *ev;
|
||||
int ret;
|
||||
|
||||
|
||||
if ((ret = act->action(act)))
|
||||
{
|
||||
ev = E_NEW(Evry_Event_Action_Performed, 1);
|
||||
|
@ -2333,7 +2337,7 @@ _evry_plugin_action(Evry_Selector *sel, int finished)
|
|||
Evry_Window *win = sel->win;
|
||||
Eina_List *l;
|
||||
int ret = 0;
|
||||
|
||||
|
||||
if ((SUBJ_SEL)->update_timer)
|
||||
{
|
||||
_evry_matches_update(SUBJ_SEL, 0);
|
||||
|
@ -2389,7 +2393,7 @@ _evry_plugin_action(Evry_Selector *sel, int finished)
|
|||
if (SUBJ_SEL == CUR_SEL)
|
||||
_evry_selectors_switch(win, 1);
|
||||
if (ACTN_SEL == CUR_SEL)
|
||||
_evry_selectors_switch(win, 1);
|
||||
_evry_selectors_switch(win, 1);
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -2462,6 +2466,22 @@ _evry_plugin_action(Evry_Selector *sel, int finished)
|
|||
}
|
||||
}
|
||||
|
||||
static void
|
||||
_evry_view_list_swallow_set(Evas_Object *obj, const char *part, Evas_Object *swallow)
|
||||
{
|
||||
Evas_Object *o;
|
||||
|
||||
o = edje_object_part_swallow_get(obj, part);
|
||||
if (o != swallow)
|
||||
{
|
||||
evas_object_hide(o);
|
||||
edje_object_part_unswallow(obj, o);
|
||||
|
||||
edje_object_part_unswallow(obj, swallow);
|
||||
edje_object_part_swallow(obj, part, swallow);
|
||||
evas_object_show(swallow);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
_evry_view_show(Evry_Window *win, Evry_View *v, int slide)
|
||||
|
@ -2479,24 +2499,21 @@ _evry_view_show(Evry_Window *win, Evry_View *v, int slide)
|
|||
|
||||
if (slide == SLIDE_LEFT)
|
||||
{
|
||||
edje_object_part_swallow(win->o_main, "list:e.swallow.list2", v->o_list);
|
||||
evas_object_show(v->o_list);
|
||||
_evry_view_list_swallow_set(win->o_main, "list:e.swallow.list2", v->o_list);
|
||||
|
||||
edje_object_signal_emit(win->o_main, "list:e,action,slide,left", "e");
|
||||
edje_object_signal_emit(v->o_list, "e,action,show,list", "e");
|
||||
}
|
||||
else if (slide == SLIDE_RIGHT)
|
||||
{
|
||||
edje_object_part_swallow(win->o_main, "list:e.swallow.list", v->o_list);
|
||||
evas_object_show(v->o_list);
|
||||
_evry_view_list_swallow_set(win->o_main, "list:e.swallow.list", v->o_list);
|
||||
|
||||
edje_object_signal_emit(win->o_main, "list:e,action,slide,right", "e");
|
||||
edje_object_signal_emit(v->o_list, "e,action,show,list", "e");
|
||||
}
|
||||
else
|
||||
{
|
||||
edje_object_part_swallow(win->o_main, "list:e.swallow.list", v->o_list);
|
||||
evas_object_show(v->o_list);
|
||||
_evry_view_list_swallow_set(win->o_main, "list:e.swallow.list", v->o_list);
|
||||
|
||||
edje_object_signal_emit(win->o_main, "list:e,action,slide,default", "e");
|
||||
edje_object_signal_emit(v->o_list, "e,action,show,list", "e");
|
||||
|
@ -2540,8 +2557,8 @@ _evry_state_clear(Evry_Window *win)
|
|||
|
||||
if (v->o_list)
|
||||
{
|
||||
edje_object_part_unswallow(win->o_main, v->o_list);
|
||||
evas_object_hide(v->o_list);
|
||||
edje_object_part_unswallow(win->o_main, v->o_list);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2559,32 +2576,26 @@ _evry_view_hide(Evry_Window *win, Evry_View *v, int slide)
|
|||
|
||||
if (slide && v->o_list)
|
||||
{
|
||||
evas_object_hide(v->o_list);
|
||||
edje_object_part_unswallow(win->o_main, v->o_list);
|
||||
win->state_clearing = v->state;
|
||||
|
||||
if (slide == SLIDE_RIGHT)
|
||||
{
|
||||
edje_object_part_swallow(win->o_main, "list:e.swallow.list2",
|
||||
v->o_list);
|
||||
|
||||
win->state_clearing = v->state;
|
||||
_evry_view_list_swallow_set(win->o_main, "list:e.swallow.list2", v->o_list);
|
||||
}
|
||||
else /* if (slide == SLIDE_LEFT) */
|
||||
{
|
||||
edje_object_part_swallow(win->o_main, "list:e.swallow.list",
|
||||
v->o_list);
|
||||
win->state_clearing = v->state;
|
||||
_evry_view_list_swallow_set(win->o_main, "list:e.swallow.list", v->o_list);
|
||||
}
|
||||
|
||||
evas_object_show(v->o_list);
|
||||
edje_object_signal_emit(v->o_list, "e,action,hide,list", "e");
|
||||
|
||||
/* FIXME get signal from theme when anim finished */
|
||||
v->state->clear_timer = ecore_timer_add(0.5, _clear_timer, win);
|
||||
v->state->clear_timer = ecore_timer_add(1.5, _clear_timer, win);
|
||||
|
||||
if (v->o_bar)
|
||||
{
|
||||
edje_object_part_unswallow(win->o_main, v->o_bar);
|
||||
evas_object_hide(v->o_bar);
|
||||
edje_object_part_unswallow(win->o_main, v->o_bar);
|
||||
}
|
||||
|
||||
return;
|
||||
|
@ -2594,14 +2605,14 @@ _evry_view_hide(Evry_Window *win, Evry_View *v, int slide)
|
|||
|
||||
if (v->o_list)
|
||||
{
|
||||
edje_object_part_unswallow(win->o_main, v->o_list);
|
||||
evas_object_hide(v->o_list);
|
||||
edje_object_part_unswallow(win->o_main, v->o_list);
|
||||
}
|
||||
|
||||
if (v->o_bar)
|
||||
{
|
||||
edje_object_part_unswallow(win->o_main, v->o_bar);
|
||||
evas_object_hide(v->o_bar);
|
||||
edje_object_part_unswallow(win->o_main, v->o_bar);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2612,14 +2623,14 @@ _evry_view_create(Evry_State *s)
|
|||
|
||||
if (s->view)
|
||||
return 1;
|
||||
|
||||
|
||||
if (s->plugin && s->plugin->view)
|
||||
view = s->plugin->view;
|
||||
else
|
||||
view = eina_list_data_get(evry_conf->views);
|
||||
|
||||
s->view = view->create(view, s, s->selector->win->o_main);
|
||||
|
||||
|
||||
if (s->view)
|
||||
{
|
||||
s->view->state = s;
|
||||
|
@ -2640,7 +2651,7 @@ _evry_view_update(Evry_Window *win, Evry_State *s)
|
|||
s->view->update(s->view);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
if (_evry_view_create(s))
|
||||
{
|
||||
s->view->update(s->view);
|
||||
|
@ -2748,7 +2759,7 @@ _evry_matches_update(Evry_Selector *sel, int async)
|
|||
#ifdef CHECK_TIME
|
||||
DBG("matches update %f", ecore_time_get() - _evry_time);
|
||||
#endif
|
||||
|
||||
|
||||
if (sel->update_timer)
|
||||
{
|
||||
ecore_timer_del(sel->update_timer);
|
||||
|
@ -2942,7 +2953,7 @@ _evry_plugin_select(Evry_State *s, Evry_Plugin *p)
|
|||
_evry_view_show(s->selector->win, s->view, 0);
|
||||
s->view->update(s->view);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -89,7 +89,7 @@ _thumb_gen(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
|||
|
||||
e_icon_size_get(it->thumb, &w, &h);
|
||||
edje_extern_object_aspect_set(it->thumb, EDJE_ASPECT_CONTROL_BOTH, w, h);
|
||||
edje_object_part_unswallow(it->frame, it->image);
|
||||
edje_object_part_unswallow(it->frame, it->image);
|
||||
edje_object_part_swallow(it->frame, "e.swallow.thumb", it->thumb);
|
||||
evas_object_show(it->thumb);
|
||||
edje_object_signal_emit(it->frame, "e,action,thumb,show_delayed", "e");
|
||||
|
@ -136,7 +136,7 @@ _thumb_idler(void *data)
|
|||
char *suffix;
|
||||
int w, h;
|
||||
int cnt = 0;
|
||||
|
||||
|
||||
sd->queue = eina_list_sort(sd->queue, -1, _sort_pos_cb);
|
||||
|
||||
EINA_LIST_FOREACH_SAFE(sd->queue, l, ll, it)
|
||||
|
@ -171,7 +171,7 @@ _thumb_idler(void *data)
|
|||
evas_object_smart_callback_add(it->thumb, "e_thumb_gen", _thumb_gen, it);
|
||||
|
||||
e_thumb_icon_size_set(it->thumb, it->w, it->h);
|
||||
|
||||
|
||||
if (it->item->icon && it->item->icon[0])
|
||||
e_thumb_icon_file_set(it->thumb, it->item->icon, NULL);
|
||||
else if ((suffix = strrchr(file->path, '.')) && (!strncmp(suffix, ".edj", 4)))
|
||||
|
@ -187,7 +187,7 @@ _thumb_idler(void *data)
|
|||
}
|
||||
|
||||
edje_object_signal_emit(it->frame, "e,action,thumb,show", "e");
|
||||
|
||||
|
||||
sd->queue = eina_list_remove_list(sd->queue, l);
|
||||
|
||||
if (cnt++ > 10)
|
||||
|
@ -419,12 +419,20 @@ _e_smart_reconfigure_do(void *data)
|
|||
}
|
||||
else
|
||||
{
|
||||
if (sd->view->zoom == 0)
|
||||
ww = 96;
|
||||
else if (sd->view->zoom == 1)
|
||||
ww = 128;
|
||||
else
|
||||
ww = 192;
|
||||
Evas_Object *o = edje_object_add(sd->view->evas);
|
||||
e_theme_edje_object_set(o, "base/theme/modules/everything",
|
||||
"e/modules/everything/thumbview/item/thumb");
|
||||
edje_object_size_min_get(o, &ww, &hh);
|
||||
evas_object_del(o);
|
||||
if (!ww)
|
||||
{
|
||||
if (sd->view->zoom == 0)
|
||||
ww = 96;
|
||||
else if (sd->view->zoom == 1)
|
||||
ww = 128;
|
||||
else
|
||||
ww = 192;
|
||||
}
|
||||
|
||||
div = sd->w / ww;
|
||||
if (div < 1) div = 1;
|
||||
|
@ -451,7 +459,7 @@ _e_smart_reconfigure_do(void *data)
|
|||
|
||||
if (x <= (sd->w - ww))
|
||||
continue;
|
||||
|
||||
|
||||
x = 0;
|
||||
y += hh;
|
||||
}
|
||||
|
@ -1412,24 +1420,24 @@ _cb_action_performed(void *data, int type __UNUSED__, void *event)
|
|||
Eina_List *l;
|
||||
Item *it;
|
||||
Smart_Data *sd;
|
||||
|
||||
|
||||
sd = evas_object_smart_data_get(v->span);
|
||||
if (!sd) return ECORE_CALLBACK_PASS_ON;
|
||||
|
||||
EINA_LIST_FOREACH(sd->items, l, it)
|
||||
{
|
||||
|
||||
|
||||
if ((it->item == ev->it1) ||
|
||||
(it->item == ev->it2))
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
if (it && it->visible)
|
||||
{
|
||||
evas_object_raise(it->frame);
|
||||
evas_object_raise(it->frame);
|
||||
edje_object_signal_emit(it->frame, "e,action,go", "e");
|
||||
}
|
||||
|
||||
|
||||
return ECORE_CALLBACK_PASS_ON;
|
||||
}
|
||||
|
||||
|
@ -1632,7 +1640,7 @@ _view_create(Evry_View *view, const Evry_State *s, const Evas_Object *swallow)
|
|||
v->handlers = eina_list_append(v->handlers, h);
|
||||
h = evry_event_handler_add(EVRY_EVENT_ACTION_PERFORMED, _cb_action_performed, v);
|
||||
v->handlers = eina_list_append(v->handlers, h);
|
||||
|
||||
|
||||
return EVRY_VIEW(v);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue