add flag in comp match for disabling shadows, disable shadows for notification popup matches

SVN revision: 84254
This commit is contained in:
Mike Blumenkrantz 2013-02-20 07:37:55 +00:00
parent 064737a84c
commit 3294b377e8
3 changed files with 6 additions and 2 deletions

View File

@ -1574,7 +1574,7 @@ _e_comp_win_shadow_setup(E_Comp_Win *cw)
Eina_List *list = NULL, *l; Eina_List *list = NULL, *l;
E_Comp_Match *m; E_Comp_Match *m;
Eina_Stringshare *reshadow_group = NULL; Eina_Stringshare *reshadow_group = NULL;
Eina_Bool focus = EINA_FALSE, urgent = EINA_FALSE, skip = EINA_FALSE, fast = EINA_FALSE, reshadow; Eina_Bool focus = EINA_FALSE, urgent = EINA_FALSE, skip = EINA_FALSE, fast = EINA_FALSE, reshadow, no_shadow = EINA_FALSE;
const char *title = NULL, *name = NULL, *clas = NULL, *role = NULL; const char *title = NULL, *name = NULL, *clas = NULL, *role = NULL;
Ecore_X_Window_Type primary_type = ECORE_X_WINDOW_TYPE_UNKNOWN; Ecore_X_Window_Type primary_type = ECORE_X_WINDOW_TYPE_UNKNOWN;
@ -1736,6 +1736,7 @@ _e_comp_win_shadow_setup(E_Comp_Win *cw)
} }
focus = m->focus; focus = m->focus;
urgent = m->urgent; urgent = m->urgent;
no_shadow = m->no_shadow;
if (m->shadow_style) if (m->shadow_style)
{ {
if (fast) if (fast)
@ -1805,7 +1806,7 @@ _e_comp_win_shadow_setup(E_Comp_Win *cw)
edje_object_signal_emit(cw->shobj, "e,state,shadow,off", "e"); edje_object_signal_emit(cw->shobj, "e,state,shadow,off", "e");
else else
{ {
if (_e_comp_win_do_shadow(cw)) if (_e_comp_win_do_shadow(cw) && (!no_shadow))
edje_object_signal_emit(cw->shobj, "e,state,shadow,on", "e"); edje_object_signal_emit(cw->shobj, "e,state,shadow,on", "e");
else else
edje_object_signal_emit(cw->shobj, "e,state,shadow,off", "e"); edje_object_signal_emit(cw->shobj, "e,state,shadow,off", "e");

View File

@ -24,6 +24,7 @@ e_comp_cfdata_edd_init(E_Config_DD **conf_edd, E_Config_DD **match_edd)
E_CONFIG_VAL(D, T, modal, CHAR); E_CONFIG_VAL(D, T, modal, CHAR);
E_CONFIG_VAL(D, T, focus, CHAR); E_CONFIG_VAL(D, T, focus, CHAR);
E_CONFIG_VAL(D, T, urgent, CHAR); E_CONFIG_VAL(D, T, urgent, CHAR);
E_CONFIG_VAL(D, T, no_shadow, CHAR);
E_CONFIG_VAL(D, T, shadow_style, STR); E_CONFIG_VAL(D, T, shadow_style, STR);
*conf_edd = E_CONFIG_DD_NEW("Comp_Config", E_Comp_Config); *conf_edd = E_CONFIG_DD_NEW("Comp_Config", E_Comp_Config);
@ -120,6 +121,7 @@ e_comp_cfdata_config_new(void)
cfg->match.popups = eina_list_append(cfg->match.popups, mat); cfg->match.popups = eina_list_append(cfg->match.popups, mat);
mat->name = eina_stringshare_add("_e_popup_notification"); mat->name = eina_stringshare_add("_e_popup_notification");
mat->shadow_style = eina_stringshare_add("still"); mat->shadow_style = eina_stringshare_add("still");
mat->no_shadow = 1;
mat->focus = 1; mat->focus = 1;
mat = E_NEW(E_Comp_Match, 1); mat = E_NEW(E_Comp_Match, 1);

View File

@ -71,6 +71,7 @@ struct _E_Comp_Match
char modal; // used for borders, 0 == don't use, 1 == is modal, -1 == not modal char modal; // used for borders, 0 == don't use, 1 == is modal, -1 == not modal
char focus; // used for setting focus state (on popups): 1 is focused, unset is use regular logic char focus; // used for setting focus state (on popups): 1 is focused, unset is use regular logic
char urgent; // used for setting urgent state (on popups): 1 is urgent, unset is use regular logic char urgent; // used for setting urgent state (on popups): 1 is urgent, unset is use regular logic
char no_shadow; // set whether shadow is disabled
}; };
EAPI void e_comp_cfdata_edd_init(E_Config_DD **conf_edd, E_Config_DD **match_edd); EAPI void e_comp_cfdata_edd_init(E_Config_DD **conf_edd, E_Config_DD **match_edd);