static Eina_Clist pol_job_group_head = EINA_CLIST_INIT(pol_job_group_head);
static Eina_Bool pol_job_exec_walking = EINA_FALSE;
-static Eina_Bool pol_vis_disable_norender = EINA_FALSE;
static Eina_Inlist *_e_pol_vis_hooks[] =
{
return pol_vis->activity;
}
-EINTERN Eina_List*
-e_policy_visibility_foreground_clients_get(void)
-{
- if (!pol_vis->fg_clients) return NULL;
- return eina_list_clone(pol_vis->fg_clients);
-}
-
E_API Eina_Bool
e_policy_visibility_client_is_activity(E_Client *ec)
{
return ret;
}
-EINTERN Eina_Bool
-e_policy_visibility_client_raise(E_Client *ec)
-{
- E_Client *child;
- Eina_List *l;
- Eina_Bool ret = EINA_FALSE;
-
-
- E_VIS_CLIENT_GET_OR_RETURN_VAL(vc, ec, EINA_FALSE);
-
- VS_DBG(ec, "API ENTRY | RAISE");
-
- if (!ec->iconic && !ec->exp_iconify.deiconify_update)
- return EINA_FALSE;
-
- if (e_client_is_iconified_by_client(ec))
- return EINA_FALSE;
-
- if (ec->bg_state)
- {
- ELOGF("POL", "Currently bg_state. so return...", ec);
- return EINA_FALSE;
- }
-
- ret = _e_vis_client_add_uniconify_render_pending(vc, E_VIS_JOB_TYPE_UNICONIFY, 1, EINA_FALSE);
-
- /* uniconify its transients recursively */
- if (e_config->transient.raise)
- {
- l = eina_list_clone(ec->transients);
-
- EINA_LIST_FREE(l, child)
- ret |= e_policy_visibility_client_raise(child);
- }
-
- /* TODO find topmost activity client and emit signal */
-
- return ret;
-}
-
E_API Eina_Bool
e_policy_visibility_client_lower(E_Client *ec)
{
_e_vis_client_below_uniconify_skip_set(vc, skip);
}
-EINTERN void
-e_policy_visibility_norender_disable_set(Eina_Bool disable)
-{
- ELOGF("POL_VIS", "NO RENDER DISABLE SET: %d", NULL, disable);
- pol_vis_disable_norender = disable;
-}
-
E_API E_Pol_Vis_Hook *
e_policy_visibility_hook_add(E_Pol_Vis_Hook_Type type, E_Pol_Vis_Hook_Cb cb, const void *data)
{
EINTERN void e_policy_visibility_shutdown(void);
EINTERN E_Client *e_policy_visibility_main_activity_get(void);
-EINTERN Eina_List *e_policy_visibility_foreground_clients_get(void);
EINTERN double e_policy_visibility_timeout_get(void);
-EINTERN void e_policy_visibility_norender_disable_set(Eina_Bool disable);
-EINTERN Eina_Bool e_policy_visibility_client_raise(E_Client *ec);
EINTERN Eina_Bool e_policy_visibility_client_iconify(E_Client *ec);
EINTERN Eina_Bool e_policy_visibility_client_uniconify(E_Client *ec, Eina_Bool raise);
EINTERN Eina_Bool e_policy_visibility_client_activate(E_Client *ec);