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

SVN revision: 84254
devs/asdfuser/comp-sounds
Mike Blumenkrantz 10 years ago
parent 064737a84c
commit 3294b377e8
  1. 5
      src/bin/e_comp.c
  2. 2
      src/bin/e_comp_cfdata.c
  3. 1
      src/bin/e_comp_cfdata.h

@ -1574,7 +1574,7 @@ _e_comp_win_shadow_setup(E_Comp_Win *cw)
Eina_List *list = NULL, *l;
E_Comp_Match *m;
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;
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;
urgent = m->urgent;
no_shadow = m->no_shadow;
if (m->shadow_style)
{
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");
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");
else
edje_object_signal_emit(cw->shobj, "e,state,shadow,off", "e");

@ -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, focus, CHAR);
E_CONFIG_VAL(D, T, urgent, CHAR);
E_CONFIG_VAL(D, T, no_shadow, CHAR);
E_CONFIG_VAL(D, T, shadow_style, STR);
*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);
mat->name = eina_stringshare_add("_e_popup_notification");
mat->shadow_style = eina_stringshare_add("still");
mat->no_shadow = 1;
mat->focus = 1;
mat = E_NEW(E_Comp_Match, 1);

@ -71,6 +71,7 @@ struct _E_Comp_Match
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 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);

Loading…
Cancel
Save