diff --git a/data/themes/default.edc b/data/themes/default.edc index f8274e301..d8c869f67 100644 --- a/data/themes/default.edc +++ b/data/themes/default.edc @@ -10585,6 +10585,8 @@ collections { } script { public disable_live_preview = 0; + public show_desk_names = 0; + public mouse_in = 0; } parts { part { @@ -10942,21 +10944,47 @@ collections { action: STATE_SET "default" 0.0; target: "zoom"; } + program { + name: "name_enable"; + signal: "e,name,show"; + source: "e"; + script { + set_int(show_desk_names, 1); + set_state(PART:"e.text.label", "active", 0.0); + } + } + program { + name: "name_disable"; + signal: "e,name,hide"; + source: "e"; + script { + set_int(show_desk_names, 0); + if (!get_int(mouse_in)) + set_state(PART:"e.text.label", "default", 0.0); + } + } program { name: "name_show"; signal: "mouse,in"; source: "e.eventarea"; - action: STATE_SET "active" 0.0; + script { + if (get_int(show_desk_names) != 1) + set_state(PART:"e.text.label", "active", 0.0); + set_int(mouse_in, 1); + } transition: SINUSOIDAL 0.1; - target: "e.text.label"; } program { name: "name_hide"; signal: "mouse,out"; source: "e.eventarea"; - action: STATE_SET "default" 0.0; + script { + if (get_int(show_desk_names) != 1) + set_state(PART:"e.text.label", "default", 0.0); + set_int(mouse_in, 0); + } + transition: SINUSOIDAL 0.2; - target: "e.text.label"; } // don't have any states/anim for urgent windows on a desktop // program { name: "xx"; diff --git a/src/modules/pager/e_mod_main.c b/src/modules/pager/e_mod_main.c index 22ecd847d..19544b13c 100644 --- a/src/modules/pager/e_mod_main.c +++ b/src/modules/pager/e_mod_main.c @@ -366,10 +366,9 @@ _pager_desk_new(Pager *p, E_Desk *desk, int xpos, int ypos) pd->o_desk = o; e_theme_edje_object_set(o, "base/theme/modules/pager", "e/modules/pager/desk"); + edje_object_part_text_set(o, "e.text.label", desk->name); if (pager_config->show_desk_names) - edje_object_part_text_set(o, "e.text.label", desk->name); - else - edje_object_part_text_set(o, "e.text.label", ""); + edje_object_signal_emit(o, "e,name,show", "e"); if (pager_config->disable_live_preview) edje_object_signal_emit(o, "e,preview,off", "e"); @@ -894,6 +893,10 @@ _pager_cb_config_updated(void) edje_object_signal_emit(pd->o_desk, "e,state,selected", "e"); else edje_object_signal_emit(pd->o_desk, "e,state,unselected", "e"); + if (pager_config->show_desk_names) + edje_object_signal_emit(pd->o_desk, "e,name,show", "e"); + else + edje_object_signal_emit(pd->o_desk, "e,name,hide", "e"); } }