forked from enlightenment/enlightenment
another new comp option for disabling screen effects (fading on blank)
SVN revision: 82623
This commit is contained in:
parent
d94ca3aae7
commit
70e40291f6
|
@ -1,6 +1,7 @@
|
||||||
2013-01-11 Mike Blumenkrantz
|
2013-01-11 Mike Blumenkrantz
|
||||||
|
|
||||||
* e_manager_comp_set() is no longer accessible by modules
|
* e_manager_comp_set() is no longer accessible by modules
|
||||||
|
* added option to disable comp effects on screen
|
||||||
|
|
||||||
2013-01-10 Carsten Haitzler
|
2013-01-10 Carsten Haitzler
|
||||||
|
|
||||||
|
|
1
NEWS
1
NEWS
|
@ -24,6 +24,7 @@ Additions:
|
||||||
* Added option for disabling pointer warping when performing directional focus changes using winlist
|
* Added option for disabling pointer warping when performing directional focus changes using winlist
|
||||||
* comp settings now uses the "e_comp" config domain
|
* comp settings now uses the "e_comp" config domain
|
||||||
* added options to disable comp effects on types of windows
|
* added options to disable comp effects on types of windows
|
||||||
|
* added option to disable comp effects on screen
|
||||||
|
|
||||||
Changes:
|
Changes:
|
||||||
Modules:
|
Modules:
|
||||||
|
|
|
@ -81,30 +81,35 @@ group { name: "e/modules/comp/screen/overlay/default";
|
||||||
}
|
}
|
||||||
programs {
|
programs {
|
||||||
program {
|
program {
|
||||||
|
name: "screensaver_on";
|
||||||
signal: "e,state,screensaver,on"; source: "e";
|
signal: "e,state,screensaver,on"; source: "e";
|
||||||
action: STATE_SET "visible" 0.0;
|
action: STATE_SET "visible" 0.0;
|
||||||
transition: ACCELERATE 3.0 CURRENT;
|
transition: ACCELERATE 3.0 CURRENT;
|
||||||
target: "blanker";
|
target: "blanker";
|
||||||
}
|
}
|
||||||
program {
|
program {
|
||||||
|
name: "screensaver_on2";
|
||||||
signal: "e,state,screensaver,on"; source: "e";
|
signal: "e,state,screensaver,on"; source: "e";
|
||||||
action: STATE_SET "visible" 0.0;
|
action: STATE_SET "visible" 0.0;
|
||||||
transition: DECELERATE 1.5 CURRENT;
|
transition: DECELERATE 1.5 CURRENT;
|
||||||
target: "shadow";
|
target: "shadow";
|
||||||
}
|
}
|
||||||
program {
|
program {
|
||||||
|
name: "screensaver_off";
|
||||||
signal: "e,state,screensaver,off"; source: "e";
|
signal: "e,state,screensaver,off"; source: "e";
|
||||||
action: STATE_SET "default" 0.0;
|
action: STATE_SET "default" 0.0;
|
||||||
transition: ACCELERATE 0.5 CURRENT;
|
transition: ACCELERATE 0.5 CURRENT;
|
||||||
target: "blanker";
|
target: "blanker";
|
||||||
}
|
}
|
||||||
program {
|
program {
|
||||||
|
name: "screensaver_off2";
|
||||||
signal: "e,state,screensaver,off"; source: "e";
|
signal: "e,state,screensaver,off"; source: "e";
|
||||||
action: STATE_SET "default" 0.0;
|
action: STATE_SET "default" 0.0;
|
||||||
transition: ACCELERATE 0.25 CURRENT;
|
transition: ACCELERATE 0.25 CURRENT;
|
||||||
target: "shadow";
|
target: "shadow";
|
||||||
}
|
}
|
||||||
program {
|
program {
|
||||||
|
name: "suspend";
|
||||||
signal: "e,state,sys,suspend"; source: "e";
|
signal: "e,state,sys,suspend"; source: "e";
|
||||||
action: STATE_SET "visible" 0.0;
|
action: STATE_SET "visible" 0.0;
|
||||||
transition: ACCELERATE 0.5 CURRENT;
|
transition: ACCELERATE 0.5 CURRENT;
|
||||||
|
@ -115,6 +120,7 @@ group { name: "e/modules/comp/screen/overlay/default";
|
||||||
action: SIGNAL_EMIT "e,state,sys,suspend,done" "e";
|
action: SIGNAL_EMIT "e,state,sys,suspend,done" "e";
|
||||||
}
|
}
|
||||||
program {
|
program {
|
||||||
|
name: "hibernate";
|
||||||
signal: "e,state,sys,hibernate"; source: "e";
|
signal: "e,state,sys,hibernate"; source: "e";
|
||||||
action: STATE_SET "visible" 0.0;
|
action: STATE_SET "visible" 0.0;
|
||||||
transition: ACCELERATE 0.5 CURRENT;
|
transition: ACCELERATE 0.5 CURRENT;
|
||||||
|
@ -125,12 +131,14 @@ group { name: "e/modules/comp/screen/overlay/default";
|
||||||
action: SIGNAL_EMIT "e,state,sys,hibernate,done" "e";
|
action: SIGNAL_EMIT "e,state,sys,hibernate,done" "e";
|
||||||
}
|
}
|
||||||
program {
|
program {
|
||||||
|
name: "resume";
|
||||||
signal: "e,state,sys,resume"; source: "e";
|
signal: "e,state,sys,resume"; source: "e";
|
||||||
action: STATE_SET "default" 0.0;
|
action: STATE_SET "default" 0.0;
|
||||||
transition: DECELERATE 1.0 CURRENT;
|
transition: DECELERATE 1.0 CURRENT;
|
||||||
target: "suspender";
|
target: "suspender";
|
||||||
}
|
}
|
||||||
program {
|
program {
|
||||||
|
name: "reboot";
|
||||||
signal: "e,state,sys,reboot"; source: "e";
|
signal: "e,state,sys,reboot"; source: "e";
|
||||||
action: STATE_SET "visible" 0.0;
|
action: STATE_SET "visible" 0.0;
|
||||||
transition: ACCELERATE 0.5 CURRENT;
|
transition: ACCELERATE 0.5 CURRENT;
|
||||||
|
@ -141,6 +149,7 @@ group { name: "e/modules/comp/screen/overlay/default";
|
||||||
action: SIGNAL_EMIT "e,state,sys,reboot,done" "e";
|
action: SIGNAL_EMIT "e,state,sys,reboot,done" "e";
|
||||||
}
|
}
|
||||||
program {
|
program {
|
||||||
|
name: "halt";
|
||||||
signal: "e,state,sys,halt"; source: "e";
|
signal: "e,state,sys,halt"; source: "e";
|
||||||
action: STATE_SET "visible" 0.0;
|
action: STATE_SET "visible" 0.0;
|
||||||
transition: ACCELERATE 0.5 CURRENT;
|
transition: ACCELERATE 0.5 CURRENT;
|
||||||
|
@ -151,6 +160,7 @@ group { name: "e/modules/comp/screen/overlay/default";
|
||||||
action: SIGNAL_EMIT "e,state,sys,halt,done" "e";
|
action: SIGNAL_EMIT "e,state,sys,halt,done" "e";
|
||||||
}
|
}
|
||||||
program {
|
program {
|
||||||
|
name: "logout";
|
||||||
signal: "e,state,sys,logout"; source: "e";
|
signal: "e,state,sys,logout"; source: "e";
|
||||||
action: STATE_SET "visible" 0.0;
|
action: STATE_SET "visible" 0.0;
|
||||||
transition: ACCELERATE 0.5 CURRENT;
|
transition: ACCELERATE 0.5 CURRENT;
|
||||||
|
@ -163,6 +173,53 @@ group { name: "e/modules/comp/screen/overlay/default";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
group { name: "e/modules/comp/screen/overlay/noeffects";
|
||||||
|
inherit: "e/modules/comp/screen/overlay/default";
|
||||||
|
programs {
|
||||||
|
program {
|
||||||
|
name: "screensaver_on";
|
||||||
|
transition: ACCELERATE 0 CURRENT;
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "screensaver_on2";
|
||||||
|
transition: DECELERATE 0 CURRENT;
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "screensaver_off";
|
||||||
|
transition: ACCELERATE 0 CURRENT;
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "screensaver_off2";
|
||||||
|
transition: ACCELERATE 0 CURRENT;
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "suspend";
|
||||||
|
transition: ACCELERATE 0 CURRENT;
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "hibernate";
|
||||||
|
transition: ACCELERATE 0 CURRENT;
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "resume";
|
||||||
|
transition: DECELERATE 1 CURRENT;
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "reboot";
|
||||||
|
transition: ACCELERATE 0 CURRENT;
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "halt";
|
||||||
|
transition: ACCELERATE 0 CURRENT;
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "logout";
|
||||||
|
transition: ACCELERATE 0 CURRENT;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
group { name: "e/comp/default";
|
group { name: "e/comp/default";
|
||||||
alias: "e/comp/popup";
|
alias: "e/comp/popup";
|
||||||
images.image: "win_shadow.png" COMP;
|
images.image: "win_shadow.png" COMP;
|
||||||
|
|
|
@ -3131,7 +3131,18 @@ static void
|
||||||
_e_comp_zone_fill(E_Comp *c, E_Comp_Zone *cz)
|
_e_comp_zone_fill(E_Comp *c, E_Comp_Zone *cz)
|
||||||
{
|
{
|
||||||
Evas_Object *o;
|
Evas_Object *o;
|
||||||
|
const char *const styles[] =
|
||||||
|
{
|
||||||
|
"e/modules/comp/screen/overlay/default",
|
||||||
|
"e/modules/comp/screen/overlay/noeffects"
|
||||||
|
};
|
||||||
|
|
||||||
|
if (cz->over)
|
||||||
|
{
|
||||||
|
e_theme_edje_object_set(cz->over, "base/theme/modules/comp",
|
||||||
|
styles[conf->disable_screen_effects]);
|
||||||
|
return;
|
||||||
|
}
|
||||||
cz->base = o = edje_object_add(c->evas);
|
cz->base = o = edje_object_add(c->evas);
|
||||||
e_theme_edje_object_set(o, "base/theme/modules/comp",
|
e_theme_edje_object_set(o, "base/theme/modules/comp",
|
||||||
"e/modules/comp/screen/base/default");
|
"e/modules/comp/screen/base/default");
|
||||||
|
@ -3142,7 +3153,7 @@ _e_comp_zone_fill(E_Comp *c, E_Comp_Zone *cz)
|
||||||
|
|
||||||
cz->over = o = edje_object_add(c->evas);
|
cz->over = o = edje_object_add(c->evas);
|
||||||
e_theme_edje_object_set(o, "base/theme/modules/comp",
|
e_theme_edje_object_set(o, "base/theme/modules/comp",
|
||||||
"e/modules/comp/screen/overlay/default");
|
styles[conf->disable_screen_effects]);
|
||||||
evas_object_move(o, cz->zone->x, cz->zone->y);
|
evas_object_move(o, cz->zone->x, cz->zone->y);
|
||||||
evas_object_resize(o, cz->zone->w, cz->zone->h);
|
evas_object_resize(o, cz->zone->w, cz->zone->h);
|
||||||
evas_object_raise(o);
|
evas_object_raise(o);
|
||||||
|
@ -4105,6 +4116,10 @@ _e_comp_cfg_init(void)
|
||||||
E_CONFIGURE_OPTION_ADD(co, BOOL, match.disable_overrides, conf, _("Disable composite effects for override-redirect windows (tooltips and such)"), _("composite"), _("theme"), _("animate"));
|
E_CONFIGURE_OPTION_ADD(co, BOOL, match.disable_overrides, conf, _("Disable composite effects for override-redirect windows (tooltips and such)"), _("composite"), _("theme"), _("animate"));
|
||||||
co->funcs[1].none = co->funcs[0].none = e_comp_shadows_reset;
|
co->funcs[1].none = co->funcs[0].none = e_comp_shadows_reset;
|
||||||
cfg_opts = eina_inlist_append(cfg_opts, EINA_INLIST_GET(co));
|
cfg_opts = eina_inlist_append(cfg_opts, EINA_INLIST_GET(co));
|
||||||
|
E_CONFIGURE_OPTION_ADD(co, BOOL, match.disable_overrides, conf, _("Disable composite effects for the screen"), _("composite"), _("theme"), _("animate"), _("screen"));
|
||||||
|
E_CONFIGURE_OPTION_HELP(co, _("This option disables composite effects from themes, such as animating the screen fade when blanking"));
|
||||||
|
co->funcs[1].none = co->funcs[0].none = e_comp_shadows_reset;
|
||||||
|
cfg_opts = eina_inlist_append(cfg_opts, EINA_INLIST_GET(co));
|
||||||
E_CONFIGURE_OPTION_ADD(co, BOOL, smooth_windows, conf, _("Smooth scaling of composited window content"), _("composite"), _("border"));
|
E_CONFIGURE_OPTION_ADD(co, BOOL, smooth_windows, conf, _("Smooth scaling of composited window content"), _("composite"), _("border"));
|
||||||
co->funcs[1].none = co->funcs[0].none = e_comp_shadows_reset;
|
co->funcs[1].none = co->funcs[0].none = e_comp_shadows_reset;
|
||||||
cfg_opts = eina_inlist_append(cfg_opts, EINA_INLIST_GET(co));
|
cfg_opts = eina_inlist_append(cfg_opts, EINA_INLIST_GET(co));
|
||||||
|
@ -4276,15 +4291,18 @@ e_comp_config_get(void)
|
||||||
EAPI void
|
EAPI void
|
||||||
e_comp_shadows_reset(void)
|
e_comp_shadows_reset(void)
|
||||||
{
|
{
|
||||||
Eina_List *l;
|
Eina_List *l, *ll;
|
||||||
E_Comp *c;
|
E_Comp *c;
|
||||||
|
|
||||||
EINA_LIST_FOREACH(compositors, l, c)
|
EINA_LIST_FOREACH(compositors, l, c)
|
||||||
{
|
{
|
||||||
E_Comp_Win *cw;
|
E_Comp_Win *cw;
|
||||||
|
E_Comp_Zone *cz;
|
||||||
|
|
||||||
// ecore_evas_manual_render_set(c->ee, conf->lock_fps);
|
// ecore_evas_manual_render_set(c->ee, conf->lock_fps);
|
||||||
_e_comp_fps_update(c);
|
_e_comp_fps_update(c);
|
||||||
|
EINA_LIST_FOREACH(c->zones, ll, cz)
|
||||||
|
_e_comp_zone_fill(c, cz);
|
||||||
EINA_INLIST_FOREACH(c->wins, cw)
|
EINA_INLIST_FOREACH(c->wins, cw)
|
||||||
{
|
{
|
||||||
if ((cw->shobj) && (cw->obj))
|
if ((cw->shobj) && (cw->obj))
|
||||||
|
|
|
@ -53,6 +53,7 @@ e_comp_cfdata_edd_init(E_Config_DD **conf_edd, E_Config_DD **match_edd)
|
||||||
E_CONFIG_VAL(D, T, nocomp_fs, UCHAR);
|
E_CONFIG_VAL(D, T, nocomp_fs, UCHAR);
|
||||||
E_CONFIG_VAL(D, T, smooth_windows, UCHAR);
|
E_CONFIG_VAL(D, T, smooth_windows, UCHAR);
|
||||||
E_CONFIG_VAL(D, T, first_draw_delay, DOUBLE);
|
E_CONFIG_VAL(D, T, first_draw_delay, DOUBLE);
|
||||||
|
E_CONFIG_VAL(D, T, disable_screen_effects, UCHAR);
|
||||||
E_CONFIG_VAL(D, T, match.disable_popups, UCHAR);
|
E_CONFIG_VAL(D, T, match.disable_popups, UCHAR);
|
||||||
E_CONFIG_VAL(D, T, match.disable_borders, UCHAR);
|
E_CONFIG_VAL(D, T, match.disable_borders, UCHAR);
|
||||||
E_CONFIG_VAL(D, T, match.disable_overrides, UCHAR);
|
E_CONFIG_VAL(D, T, match.disable_overrides, UCHAR);
|
||||||
|
|
|
@ -28,6 +28,7 @@ struct _E_Comp_Config
|
||||||
unsigned char nocomp_fs;
|
unsigned char nocomp_fs;
|
||||||
unsigned char smooth_windows;
|
unsigned char smooth_windows;
|
||||||
double first_draw_delay;
|
double first_draw_delay;
|
||||||
|
Eina_Bool disable_screen_effects;
|
||||||
|
|
||||||
struct
|
struct
|
||||||
{
|
{
|
||||||
|
|
|
@ -72,6 +72,7 @@ struct _E_Config_Dialog_Data
|
||||||
int fps_corner;
|
int fps_corner;
|
||||||
int fps_average_range;
|
int fps_average_range;
|
||||||
double first_draw_delay;
|
double first_draw_delay;
|
||||||
|
int disable_screen_effects;
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Protos */
|
/* Protos */
|
||||||
|
@ -1171,13 +1172,15 @@ _advanced_create_widgets(E_Config_Dialog *cfd,
|
||||||
e_widget_list_object_append(ol, ob, 1, 0, 0.5);
|
e_widget_list_object_append(ol, ob, 1, 0, 0.5);
|
||||||
|
|
||||||
|
|
||||||
ob = e_widget_check_add(evas, _("Disable composite theming for windows"), &(cfdata->match.disable_borders));
|
ob = e_widget_check_add(evas, _("Disable composite effects for windows"), &(cfdata->match.disable_borders));
|
||||||
e_widget_list_object_append(ol, ob, 1, 0, 0.5);
|
e_widget_list_object_append(ol, ob, 1, 0, 0.5);
|
||||||
ob = e_widget_check_add(evas, _("Disable composite theming for menus"), &(cfdata->match.disable_menus));
|
ob = e_widget_check_add(evas, _("Disable composite effects for menus"), &(cfdata->match.disable_menus));
|
||||||
e_widget_list_object_append(ol, ob, 1, 0, 0.5);
|
e_widget_list_object_append(ol, ob, 1, 0, 0.5);
|
||||||
ob = e_widget_check_add(evas, _("Disable composite theming for popups"), &(cfdata->match.disable_popups));
|
ob = e_widget_check_add(evas, _("Disable composite effects for popups"), &(cfdata->match.disable_popups));
|
||||||
e_widget_list_object_append(ol, ob, 1, 0, 0.5);
|
e_widget_list_object_append(ol, ob, 1, 0, 0.5);
|
||||||
ob = e_widget_check_add(evas, _("Disable composite theming for overrides"), &(cfdata->match.disable_overrides));
|
ob = e_widget_check_add(evas, _("Disable composite effects for overrides"), &(cfdata->match.disable_overrides));
|
||||||
|
e_widget_list_object_append(ol, ob, 1, 0, 0.5);
|
||||||
|
ob = e_widget_check_add(evas, _("Disable composite effects for screen"), &(cfdata->disable_screen_effects));
|
||||||
e_widget_list_object_append(ol, ob, 1, 0, 0.5);
|
e_widget_list_object_append(ol, ob, 1, 0, 0.5);
|
||||||
|
|
||||||
of = e_widget_frametable_add(evas, _("Styles"), 0);
|
of = e_widget_frametable_add(evas, _("Styles"), 0);
|
||||||
|
@ -1415,6 +1418,7 @@ _advanced_apply_data(E_Config_Dialog *cfd __UNUSED__,
|
||||||
(_comp_mod->conf->match.disable_borders != cfdata->match.disable_borders) ||
|
(_comp_mod->conf->match.disable_borders != cfdata->match.disable_borders) ||
|
||||||
(_comp_mod->conf->match.disable_overrides != cfdata->match.disable_overrides) ||
|
(_comp_mod->conf->match.disable_overrides != cfdata->match.disable_overrides) ||
|
||||||
(_comp_mod->conf->match.disable_menus != cfdata->match.disable_menus) ||
|
(_comp_mod->conf->match.disable_menus != cfdata->match.disable_menus) ||
|
||||||
|
(_comp_mod->conf->disable_screen_effects != cfdata->disable_screen_effects) ||
|
||||||
(cfdata->match.changed)
|
(cfdata->match.changed)
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
@ -1468,6 +1472,7 @@ _advanced_apply_data(E_Config_Dialog *cfd __UNUSED__,
|
||||||
_comp_mod->conf->match.disable_borders = cfdata->match.disable_borders;
|
_comp_mod->conf->match.disable_borders = cfdata->match.disable_borders;
|
||||||
_comp_mod->conf->match.disable_overrides = cfdata->match.disable_overrides;
|
_comp_mod->conf->match.disable_overrides = cfdata->match.disable_overrides;
|
||||||
_comp_mod->conf->match.disable_menus = cfdata->match.disable_menus;
|
_comp_mod->conf->match.disable_menus = cfdata->match.disable_menus;
|
||||||
|
_comp_mod->conf->disable_screen_effects = cfdata->disable_screen_effects;
|
||||||
_comp_mod->conf->lock_fps = cfdata->lock_fps;
|
_comp_mod->conf->lock_fps = cfdata->lock_fps;
|
||||||
_comp_mod->conf->smooth_windows = cfdata->smooth_windows;
|
_comp_mod->conf->smooth_windows = cfdata->smooth_windows;
|
||||||
_comp_mod->conf->grab = cfdata->grab;
|
_comp_mod->conf->grab = cfdata->grab;
|
||||||
|
@ -1670,6 +1675,7 @@ _basic_apply_data(E_Config_Dialog *cfd __UNUSED__,
|
||||||
_comp_mod->conf->match.disable_borders = cfdata->match.disable_borders = cfdata->match.disable_all;
|
_comp_mod->conf->match.disable_borders = cfdata->match.disable_borders = cfdata->match.disable_all;
|
||||||
_comp_mod->conf->match.disable_overrides = cfdata->match.disable_overrides = cfdata->match.disable_all;
|
_comp_mod->conf->match.disable_overrides = cfdata->match.disable_overrides = cfdata->match.disable_all;
|
||||||
_comp_mod->conf->match.disable_menus = cfdata->match.disable_menus = cfdata->match.disable_all;
|
_comp_mod->conf->match.disable_menus = cfdata->match.disable_menus = cfdata->match.disable_all;
|
||||||
|
_comp_mod->conf->disable_screen_effects = cfdata->disable_screen_effects = cfdata->match.disable_all;
|
||||||
}
|
}
|
||||||
_comp_mod->conf->lock_fps = cfdata->lock_fps;
|
_comp_mod->conf->lock_fps = cfdata->lock_fps;
|
||||||
_comp_mod->conf->smooth_windows = cfdata->smooth_windows;
|
_comp_mod->conf->smooth_windows = cfdata->smooth_windows;
|
||||||
|
|
Loading…
Reference in New Issue