if (!pc) return NULL;
pc->ec = ec;
+ pc->zone = e_comp_zone_find_by_ec(ec);
eina_hash_add(hash_policy_clients, &ec, pc);
return NULL;
}
-
static void
-_e_policy_cb_hook_client_new(void *d EINA_UNUSED, E_Client *ec)
+_e_policy_cb_hook_client_new_post(void *d EINA_UNUSED, E_Client *ec)
{
+ E_Policy_Client *pc;
+
if (EINA_UNLIKELY(!ec))
return;
E_LIST_HANDLER_APPEND(handlers, E_EVENT_CLIENT_SHOW, _e_policy_cb_client_show, NULL);
E_LIST_HANDLER_APPEND(handlers, E_EVENT_CLIENT_HIDE, _e_policy_cb_client_hide, NULL);
- E_CLIENT_HOOK_APPEND(hooks_ec, E_CLIENT_HOOK_NEW_CLIENT, _e_policy_cb_hook_client_new, NULL);
+ E_CLIENT_HOOK_APPEND(hooks_ec, E_CLIENT_HOOK_NEW_CLIENT_POST, _e_policy_cb_hook_client_new_post, NULL);
E_CLIENT_HOOK_APPEND(hooks_ec, E_CLIENT_HOOK_DEL, _e_policy_cb_hook_client_del, NULL);
E_CLIENT_HOOK_APPEND(hooks_ec, E_CLIENT_HOOK_EVAL_PRE_NEW_CLIENT, _e_policy_cb_hook_client_eval_pre_new_client, NULL);
E_CLIENT_HOOK_APPEND(hooks_ec, E_CLIENT_HOOK_EVAL_PRE_FETCH, _e_policy_cb_hook_client_eval_pre_fetch, NULL);