[E_CLIENT_HOOK_MOUSE_OUT] = NULL,
[E_CLIENT_HOOK_MOUSE_DOWN] = NULL,
[E_CLIENT_HOOK_FOCUS_DEFER_SET] = NULL,
+ [E_CLIENT_HOOK_FOCUS_LATEST_SET] = NULL,
//#endif
};
{
EINA_SAFETY_ON_NULL_RETURN(ec);
+#ifdef REFACTOR_FOCUS_POLICY
+ _e_client_hook_call(E_CLIENT_HOOK_FOCUS_LATEST_SET, ec);
+#else
focus_stack = eina_list_remove(focus_stack, ec);
focus_stack = eina_list_prepend(focus_stack, ec);
+#endif
}
EINTERN void
E_CLIENT_HOOK_MOUSE_OUT,
E_CLIENT_HOOK_MOUSE_DOWN,
E_CLIENT_HOOK_FOCUS_DEFER_SET,
+ E_CLIENT_HOOK_FOCUS_LATEST_SET,
//#endif
E_CLIENT_HOOK_LAST,
} E_Client_Hook_Point;
}
static void
+_focus_policy_history_hook_cb_client_focus_latest_set(void *data, E_Client *ec)
+{
+ // TODO:
+}
+
+static void
_focus_policy_history_hook_cb_client_eval_end(void *data, E_Client *ec)
{
// TODO:
E_LIST_HOOK_APPEND(history_policy->ec_hooks, E_CLIENT_HOOK_FOCUS_SET, _focus_policy_history_hook_cb_client_focus_set, history_policy);
E_LIST_HOOK_APPEND(history_policy->ec_hooks, E_CLIENT_HOOK_FOCUS_UNSET, _focus_policy_history_hook_cb_client_focus_unset, history_policy);
E_LIST_HOOK_APPEND(history_policy->ec_hooks, E_CLIENT_HOOK_FOCUS_DEFER_SET, _focus_policy_history_hook_cb_client_focus_defer_set, history_policy);
+ E_LIST_HOOK_APPEND(history_policy->ec_hooks, E_CLIENT_HOOK_FOCUS_LATEST_SET, _focus_policy_history_hook_cb_client_focus_latest_set, history_policy);
E_LIST_HOOK_APPEND(history_policy->ec_hooks, E_CLIENT_HOOK_EVAL_END, _focus_policy_history_hook_cb_client_eval_end, history_policy);
// e_comp_object hooks