bugfix: only remove an ibar no-order icon if ALL icon's clients are skip

T953
This commit is contained in:
Mike Blumenkrantz 2014-02-14 15:58:49 -05:00
parent de7d818f99
commit 6da74c5f06
1 changed files with 8 additions and 2 deletions

View File

@ -2435,11 +2435,17 @@ _ibar_cb_client_prop(void *d EINA_UNUSED, int t EINA_UNUSED, E_Event_Client_Prop
{
IBar *b;
Eina_List *l;
Eina_Bool skip;
E_Client *ec;
Eina_Bool skip = EINA_TRUE;
if (e_client_util_ignored_get(ev->ec) || (!ev->ec->exe_inst) || (!ev->ec->exe_inst->desktop)) return ECORE_CALLBACK_RENEW;
if (!(ev->property & E_CLIENT_PROPERTY_NETWM_STATE)) return ECORE_CALLBACK_RENEW;
skip = ev->ec->netwm.state.skip_taskbar;
EINA_LIST_FOREACH(ev->ec->exe_inst->clients, l, ec)
if (!ec->netwm.state.skip_taskbar)
{
skip = EINA_FALSE;
break;
}
EINA_LIST_FOREACH(ibars, l, b)
{
IBar_Icon *ic;