allow shadows on borderless, non-argb, non-shaped clients

T885
This commit is contained in:
Mike Blumenkrantz 2014-02-04 22:27:23 -05:00
parent ca760bb103
commit cd37f23632
2 changed files with 6 additions and 5 deletions

View File

@ -211,11 +211,13 @@ _e_comp_object_layers_remove(E_Comp_Object *cw)
static void
_e_comp_object_shadow(E_Comp_Object *cw)
{
if (!cw->frame_object) return;
if (e_util_client_shadow_state_get(cw->ec))
edje_object_signal_emit(cw->frame_object, "e,state,shadow,on", "e");
{
edje_object_signal_emit(cw->frame_object ?: cw->shobj, "e,state,shadow,on", "e");
edje_object_signal_emit(cw->shobj, "e,state,shadow,off", "e");
}
else
edje_object_signal_emit(cw->frame_object, "e,state,shadow,off", "e");
edje_object_signal_emit(cw->frame_object ?: cw->shobj, "e,state,shadow,off", "e");
}
static void

View File

@ -1613,10 +1613,9 @@ EAPI Eina_Bool
e_util_client_shadow_state_get(const E_Client *ec)
{
Eina_Bool on;
if (ec->argb || ec->shaped) return EINA_FALSE;
on = !ec->e.state.video;
if (on)
on = !ec->fullscreen;
if (on)
on = !!e_util_strcmp(ec->border.name, "borderless");
return on;
}