forked from enlightenment/enlightenment
pager module now uses deskpreview to show full, realtime previews of desktops; option to disable can be found in pager settings
ticket #141 SVN revision: 73555
This commit is contained in:
parent
5fb4f168cb
commit
d2254253be
|
@ -10583,6 +10583,9 @@ collections {
|
|||
image: "pager_hi2.png" COMP;
|
||||
image: "pager_base_pattern.png" COMP;
|
||||
}
|
||||
script {
|
||||
public disable_live_preview = 0;
|
||||
}
|
||||
parts {
|
||||
part {
|
||||
name: "zoom";
|
||||
|
@ -10625,6 +10628,11 @@ collections {
|
|||
visible: 0;
|
||||
color: 255 255 255 0;
|
||||
}
|
||||
description {
|
||||
state: "hidden" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
visible: 0;
|
||||
}
|
||||
}
|
||||
part {
|
||||
name: "base2";
|
||||
|
@ -10652,6 +10660,51 @@ collections {
|
|||
rel1.offset: -1 -1;
|
||||
rel2.offset: 0 0;
|
||||
}
|
||||
description {
|
||||
state: "hidden" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
visible: 0;
|
||||
}
|
||||
}
|
||||
part {
|
||||
name: "e.background";
|
||||
type: SWALLOW;
|
||||
clip_to: "bg_clip";
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
visible: 1;
|
||||
color: 255 255 255 255;
|
||||
rel1 {
|
||||
to: "zoom";
|
||||
offset: -1 -1;
|
||||
}
|
||||
rel2.to: "zoom";
|
||||
}
|
||||
description {
|
||||
state: "hidden" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
visible: 0;
|
||||
}
|
||||
}
|
||||
part {
|
||||
name: "bg_clip";
|
||||
type: RECT;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
color: 200 200 200 200;
|
||||
rel1.to: "e.background";
|
||||
rel2.to: "e.background";
|
||||
}
|
||||
description {
|
||||
state: "active" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
color: 255 255 255 255;
|
||||
}
|
||||
description {
|
||||
state: "hidden" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
visible: 0;
|
||||
}
|
||||
}
|
||||
part {
|
||||
name: "pattern";
|
||||
|
@ -10797,30 +10850,67 @@ collections {
|
|||
}
|
||||
programs {
|
||||
program {
|
||||
name: "on";
|
||||
name: "select";
|
||||
signal: "e,state,selected";
|
||||
source: "e";
|
||||
action: STATE_SET "active" 0.0;
|
||||
script {
|
||||
if (get_int(disable_live_preview) == 1) {
|
||||
set_state(PART:"base", "active", 0.0);
|
||||
set_state(PART:"base2", "active", 0.0);
|
||||
set_state(PART:"pattern", "active", 0.0);
|
||||
set_state(PART:"clip", "active", 0.0);
|
||||
set_state(PART:"over", "active", 0.0);
|
||||
set_state(PART:"over2", "active", 0.0);
|
||||
} else
|
||||
set_state(PART:"bg_clip", "active", 0.0);
|
||||
}
|
||||
transition: LINEAR 0.2;
|
||||
target: "base";
|
||||
target: "base2";
|
||||
target: "pattern";
|
||||
target: "clip";
|
||||
target: "over";
|
||||
target: "over2";
|
||||
}
|
||||
program {
|
||||
name: "off";
|
||||
name: "unselect";
|
||||
signal: "e,state,unselected";
|
||||
source: "e";
|
||||
action: STATE_SET "default" 0.0;
|
||||
script {
|
||||
if (get_int(disable_live_preview) == 1) {
|
||||
set_state(PART:"base", "default", 0.0);
|
||||
set_state(PART:"base2", "default", 0.0);
|
||||
set_state(PART:"pattern", "default", 0.0);
|
||||
set_state(PART:"clip", "default", 0.0);
|
||||
set_state(PART:"over", "default", 0.0);
|
||||
set_state(PART:"over2", "default", 0.0);
|
||||
} else
|
||||
set_state(PART:"bg_clip", "default", 0.0);
|
||||
}
|
||||
transition: LINEAR 0.3;
|
||||
}
|
||||
program {
|
||||
name: "preview";
|
||||
signal: "e,preview,on";
|
||||
source: "e";
|
||||
script {
|
||||
set_int(disable_live_preview, 0);
|
||||
set_state(PART:"bg_clip", "default", 0.0);
|
||||
set_state(PART:"e.background", "default", 0.0);
|
||||
set_state(PART:"base", "hidden", 0.0);
|
||||
set_state(PART:"base2", "hidden", 0.0);
|
||||
set_state(PART:"pattern", "default", 0.0);
|
||||
set_state(PART:"over", "active", 0.0);
|
||||
set_state(PART:"over2", "default", 0.0);
|
||||
}
|
||||
transition: LINEAR 0.3;
|
||||
}
|
||||
program {
|
||||
name: "preview_off";
|
||||
signal: "e,preview,off";
|
||||
source: "e";
|
||||
script {
|
||||
set_int(disable_live_preview, 1);
|
||||
set_state(PART:"bg_clip", "hidden", 0.0);
|
||||
set_state(PART:"e.background", "hidden", 0.0);
|
||||
set_state(PART:"base", "default", 0.0);
|
||||
set_state(PART:"base2", "default", 0.0);
|
||||
}
|
||||
transition: LINEAR 0.3;
|
||||
target: "base";
|
||||
target: "base2";
|
||||
target: "pattern";
|
||||
target: "clip";
|
||||
target: "over";
|
||||
target: "over2";
|
||||
}
|
||||
program {
|
||||
name: "drg";
|
||||
|
|
|
@ -29,7 +29,7 @@ struct _E_Config_Dialog_Data
|
|||
Evas_Object *ob1, *ob2, *ob3;
|
||||
Eina_List *popup_list, *urgent_list;
|
||||
} gui;
|
||||
int drag_resist, flip_desk, show_desk_names;
|
||||
int drag_resist, flip_desk, show_desk_names, disable_live_preview;
|
||||
};
|
||||
|
||||
/* local function prototypes */
|
||||
|
@ -104,6 +104,7 @@ _fill_data(E_Config_Dialog_Data *cfdata)
|
|||
cfdata->btn.noplace = pager_config->btn_noplace;
|
||||
cfdata->btn.desk = pager_config->btn_desk;
|
||||
cfdata->flip_desk = pager_config->flip_desk;
|
||||
cfdata->disable_live_preview = pager_config->disable_live_preview;
|
||||
cfdata->show_desk_names = pager_config->show_desk_names;
|
||||
}
|
||||
|
||||
|
@ -130,6 +131,9 @@ _basic_create(E_Config_Dialog *cfd __UNUSED__, Evas *evas, E_Config_Dialog_Data
|
|||
ow = e_widget_check_add(evas, _("Show desktop names"),
|
||||
&(cfdata->show_desk_names));
|
||||
e_widget_framelist_object_append(of, ow);
|
||||
ow = e_widget_check_add(evas, _("Disable live preview"),
|
||||
&(cfdata->disable_live_preview));
|
||||
e_widget_framelist_object_append(of, ow);
|
||||
e_widget_list_object_append(ol, of, 1, 0, 0.5);
|
||||
|
||||
of = e_widget_framelist_add(evas, _("Popup"), 0);
|
||||
|
@ -149,8 +153,10 @@ _basic_apply(E_Config_Dialog *cfd __UNUSED__, E_Config_Dialog_Data *cfdata)
|
|||
{
|
||||
pager_config->popup = cfdata->popup.show;
|
||||
pager_config->flip_desk = cfdata->flip_desk;
|
||||
pager_config->disable_live_preview = cfdata->disable_live_preview;
|
||||
pager_config->show_desk_names = cfdata->show_desk_names;
|
||||
pager_config->popup_urgent = cfdata->popup.urgent_show;
|
||||
_pager_cb_config_updated();
|
||||
e_config_save_queue();
|
||||
return 1;
|
||||
}
|
||||
|
@ -160,6 +166,7 @@ _basic_check_changed(E_Config_Dialog *cfd __UNUSED__, E_Config_Dialog_Data *cfda
|
|||
{
|
||||
if ((int)pager_config->popup != cfdata->popup.show) return 1;
|
||||
if ((int)pager_config->flip_desk != cfdata->flip_desk) return 1;
|
||||
if ((int)pager_config->disable_live_preview != cfdata->disable_live_preview) return 1;
|
||||
if ((int)pager_config->show_desk_names != cfdata->show_desk_names) return 1;
|
||||
if ((int)pager_config->popup_urgent != cfdata->popup.urgent_show) return 1;
|
||||
|
||||
|
@ -182,6 +189,9 @@ _adv_create(E_Config_Dialog *cfd __UNUSED__, Evas *evas, E_Config_Dialog_Data *c
|
|||
ow = e_widget_check_add(evas, _("Show desktop names"),
|
||||
&(cfdata->show_desk_names));
|
||||
e_widget_list_object_append(ol, ow, 1, 0, 0.5);
|
||||
ow = e_widget_check_add(evas, _("Disable live preview"),
|
||||
&(cfdata->disable_live_preview));
|
||||
e_widget_list_object_append(ol, ow, 1, 0, 0.5);
|
||||
ow = e_widget_label_add(evas, _("Resistance to dragging"));
|
||||
e_widget_list_object_append(ol, ow, 1, 0, 0.5);
|
||||
ow = e_widget_slider_add(evas, 1, 0, _("%.0f px"), 0.0, 10.0, 1.0, 0, NULL,
|
||||
|
@ -290,6 +300,7 @@ _adv_apply(E_Config_Dialog *cfd __UNUSED__, E_Config_Dialog_Data *cfdata)
|
|||
pager_config->popup = cfdata->popup.show;
|
||||
pager_config->popup_speed = cfdata->popup.speed;
|
||||
pager_config->flip_desk = cfdata->flip_desk;
|
||||
pager_config->disable_live_preview = cfdata->disable_live_preview;
|
||||
pager_config->popup_urgent = cfdata->popup.urgent_show;
|
||||
pager_config->popup_urgent_stick = cfdata->popup.urgent_stick;
|
||||
pager_config->popup_urgent_focus = cfdata->popup.urgent_focus;
|
||||
|
@ -301,6 +312,7 @@ _adv_apply(E_Config_Dialog *cfd __UNUSED__, E_Config_Dialog_Data *cfdata)
|
|||
pager_config->btn_drag = cfdata->btn.drag;
|
||||
pager_config->btn_noplace = cfdata->btn.noplace;
|
||||
pager_config->btn_desk = cfdata->btn.desk;
|
||||
_pager_cb_config_updated();
|
||||
e_config_save_queue();
|
||||
return 1;
|
||||
}
|
||||
|
@ -309,7 +321,7 @@ static int
|
|||
_adv_check_changed(E_Config_Dialog *cfd __UNUSED__, E_Config_Dialog_Data *cfdata)
|
||||
{
|
||||
if ((int)pager_config->popup != cfdata->popup.show) return 1;
|
||||
if ((int)pager_config->flip_desk != cfdata->flip_desk) return 1;
|
||||
if ((int)pager_config->disable_live_preview != cfdata->disable_live_preview) return 1;
|
||||
if ((int)pager_config->show_desk_names != cfdata->show_desk_names) return 1;
|
||||
if ((int)pager_config->popup_urgent != cfdata->popup.urgent_show) return 1;
|
||||
if (pager_config->popup_speed != cfdata->popup.speed) return 1;
|
||||
|
|
|
@ -57,6 +57,7 @@ struct _Pager_Desk
|
|||
Eina_List *wins;
|
||||
Evas_Object *o_desk;
|
||||
Evas_Object *o_layout;
|
||||
Evas_Object *o_bg;
|
||||
int xpos, ypos, urgent;
|
||||
int current : 1;
|
||||
struct
|
||||
|
@ -370,6 +371,14 @@ _pager_desk_new(Pager *p, E_Desk *desk, int xpos, int ypos)
|
|||
else
|
||||
edje_object_part_text_set(o, "e.text.label", "");
|
||||
|
||||
if (pager_config->disable_live_preview)
|
||||
edje_object_signal_emit(o, "e,preview,off", "e");
|
||||
else
|
||||
edje_object_signal_emit(o, "e,preview,on", "e");
|
||||
pd->o_bg = e_widget_deskpreview_desk_add(o, desk->zone, xpos, ypos, -1, -1);
|
||||
e_widget_deskpreview_desk_configurable_set(pd->o_bg, EINA_FALSE);
|
||||
edje_object_part_swallow(o, "e.background", pd->o_bg);
|
||||
|
||||
edje_object_size_min_calc(o, &w, &h);
|
||||
e_table_pack(p->o_table, o, xpos, ypos, 1, 1);
|
||||
e_table_pack_options_set(o, 1, 1, 1, 1, 0.5, 0.5, w, h, -1, -1);
|
||||
|
@ -870,7 +879,22 @@ _pager_instance_drop_zone_recalc(Instance *inst)
|
|||
void
|
||||
_pager_cb_config_updated(void)
|
||||
{
|
||||
Pager *p;
|
||||
Pager_Desk *pd;
|
||||
Eina_List *l, *ll;
|
||||
if (!pager_config) return;
|
||||
EINA_LIST_FOREACH(pagers, l, p)
|
||||
EINA_LIST_FOREACH(p->desks, ll, pd)
|
||||
{
|
||||
if (pager_config->disable_live_preview)
|
||||
edje_object_signal_emit(pd->o_desk, "e,preview,off", "e");
|
||||
else
|
||||
edje_object_signal_emit(pd->o_desk, "e,preview,on", "e");
|
||||
if (pd->current)
|
||||
edje_object_signal_emit(pd->o_desk, "e,state,selected", "e");
|
||||
else
|
||||
edje_object_signal_emit(pd->o_desk, "e,state,unselected", "e");
|
||||
}
|
||||
}
|
||||
|
||||
static Eina_Bool
|
||||
|
|
|
@ -31,6 +31,7 @@ struct _Config
|
|||
unsigned int btn_noplace;
|
||||
unsigned int btn_desk;
|
||||
unsigned int flip_desk;
|
||||
unsigned int disable_live_preview;
|
||||
|
||||
/* just config state */
|
||||
E_Module *module;
|
||||
|
|
Loading…
Reference in New Issue