show/hide the shelf when the autohide option is changed. hide the hide-able shelves on startup
SVN revision: 29427
This commit is contained in:
parent
641dd49248
commit
187c3fcec1
|
@ -338,16 +338,10 @@ _advanced_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
||||||
|
|
||||||
cfdata->escfg->overlap = cfdata->overlapping;
|
cfdata->escfg->overlap = cfdata->overlapping;
|
||||||
cfdata->escfg->autohide = cfdata->autohiding;
|
cfdata->escfg->autohide = cfdata->autohiding;
|
||||||
if (cfdata->escfg->autohide)
|
if (cfdata->escfg->autohide && !cfdata->es->hidden)
|
||||||
{
|
e_shelf_toggle(cfdata->es, 0);
|
||||||
edje_object_signal_emit(cfdata->es->o_base, "e,state,hidden", "e");
|
else if (!cfdata->escfg->autohide && cfdata->es->hidden)
|
||||||
cfdata->es->hidden = 1;
|
e_shelf_toggle(cfdata->es, 1);
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
edje_object_signal_emit(cfdata->es->o_base, "e,state,visible", "e");
|
|
||||||
cfdata->es->hidden = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (restart)
|
if (restart)
|
||||||
{
|
{
|
||||||
|
|
|
@ -83,6 +83,7 @@ e_shelf_config_init(void)
|
||||||
e_shelf_position_calc(es);
|
e_shelf_position_calc(es);
|
||||||
e_shelf_populate(es);
|
e_shelf_populate(es);
|
||||||
e_shelf_show(es);
|
e_shelf_show(es);
|
||||||
|
e_shelf_toggle(es, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -192,6 +193,7 @@ e_shelf_zone_new(E_Zone *zone, const char *name, const char *style, int popup, i
|
||||||
shelves = evas_list_append(shelves, es);
|
shelves = evas_list_append(shelves, es);
|
||||||
shelves = evas_list_sort(shelves, -1, _e_shelf_cb_id_sort);
|
shelves = evas_list_sort(shelves, -1, _e_shelf_cb_id_sort);
|
||||||
|
|
||||||
|
es->hidden = 0;
|
||||||
es->hide_step = 0;
|
es->hide_step = 0;
|
||||||
es->hide_timer = NULL;
|
es->hide_timer = NULL;
|
||||||
es->hide_animator = NULL;
|
es->hide_animator = NULL;
|
||||||
|
@ -256,6 +258,31 @@ e_shelf_hide(E_Shelf *es)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
EAPI void
|
||||||
|
e_shelf_toggle(E_Shelf *es, int show)
|
||||||
|
{
|
||||||
|
E_OBJECT_CHECK(es);
|
||||||
|
E_OBJECT_TYPE_CHECK(es, E_SHELF_TYPE);
|
||||||
|
if (show && es->hidden)
|
||||||
|
{
|
||||||
|
es->hidden = 0;
|
||||||
|
edje_object_signal_emit(es->o_base, "e,state,visible", "e");
|
||||||
|
if(!es->hide_animator)
|
||||||
|
es->hide_animator = ecore_animator_add(_e_shelf_cb_hide_animator, es);
|
||||||
|
if (es->hide_timer)
|
||||||
|
{
|
||||||
|
ecore_timer_del(es->hide_timer);
|
||||||
|
es->hide_timer = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (!show && es->cfg->autohide && !es->hidden)
|
||||||
|
{
|
||||||
|
es->hidden = 1;
|
||||||
|
if(!es->hide_timer)
|
||||||
|
es->hide_timer = ecore_timer_add(1.0, _e_shelf_cb_hide_timer, es);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
EAPI void
|
EAPI void
|
||||||
e_shelf_move(E_Shelf *es, int x, int y)
|
e_shelf_move(E_Shelf *es, int x, int y)
|
||||||
{
|
{
|
||||||
|
@ -1009,21 +1036,7 @@ _e_shelf_cb_mouse_in(void *data, Evas *evas, Evas_Object *obj, void *event_info)
|
||||||
es = data;
|
es = data;
|
||||||
ev = event_info;
|
ev = event_info;
|
||||||
edje_object_signal_emit(es->o_base, "e,state,focused", "e");
|
edje_object_signal_emit(es->o_base, "e,state,focused", "e");
|
||||||
if (es->cfg->autohide)
|
e_shelf_toggle(es, 1);
|
||||||
{
|
|
||||||
if (es->hidden)
|
|
||||||
{
|
|
||||||
es->hidden = 0;
|
|
||||||
edje_object_signal_emit(es->o_base, "e,state,visible", "e");
|
|
||||||
if(!es->hide_animator)
|
|
||||||
es->hide_animator = ecore_animator_add(_e_shelf_cb_hide_animator, es);
|
|
||||||
if (es->hide_timer)
|
|
||||||
{
|
|
||||||
ecore_timer_del(es->hide_timer);
|
|
||||||
es->hide_timer = NULL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -1040,14 +1053,7 @@ _e_shelf_cb_mouse_out(void *data, Evas *evas, Evas_Object *obj, void *event_info
|
||||||
|
|
||||||
evas_object_geometry_get(es->o_base, &x, &y, &w, &h);
|
evas_object_geometry_get(es->o_base, &x, &y, &w, &h);
|
||||||
if (!E_INSIDE(ev->canvas.x, ev->canvas.y, x, y, w, h))
|
if (!E_INSIDE(ev->canvas.x, ev->canvas.y, x, y, w, h))
|
||||||
{
|
e_shelf_toggle(es, 0);
|
||||||
if(!es->hidden)
|
|
||||||
{
|
|
||||||
es->hidden = 1;
|
|
||||||
if(!es->hide_timer)
|
|
||||||
es->hide_timer = ecore_timer_add(1.0, _e_shelf_cb_hide_timer, es);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
edje_object_signal_emit(es->o_base, "e,state,unfocused", "e");
|
edje_object_signal_emit(es->o_base, "e,state,unfocused", "e");
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,6 +49,7 @@ EAPI void e_shelf_zone_move_resize_handle(E_Zone *zone);
|
||||||
EAPI void e_shelf_populate(E_Shelf *es);
|
EAPI void e_shelf_populate(E_Shelf *es);
|
||||||
EAPI void e_shelf_show(E_Shelf *es);
|
EAPI void e_shelf_show(E_Shelf *es);
|
||||||
EAPI void e_shelf_hide(E_Shelf *es);
|
EAPI void e_shelf_hide(E_Shelf *es);
|
||||||
|
EAPI void e_shelf_toggle(E_Shelf *es, int show);
|
||||||
EAPI void e_shelf_move(E_Shelf *es, int x, int y);
|
EAPI void e_shelf_move(E_Shelf *es, int x, int y);
|
||||||
EAPI void e_shelf_resize(E_Shelf *es, int w, int h);
|
EAPI void e_shelf_resize(E_Shelf *es, int w, int h);
|
||||||
EAPI void e_shelf_move_resize(E_Shelf *es, int x, int y, int w, int h);
|
EAPI void e_shelf_move_resize(E_Shelf *es, int x, int y, int w, int h);
|
||||||
|
|
Loading…
Reference in New Issue