e_keyrouter_intercept_hook_call(E_Keyrouter_Intercept_Hook_Point hookpoint, int type, Ecore_Event_Key *event)
{
E_Keyrouter_Intercept_Hook *ch;
- Eina_Bool res = EINA_TRUE;
+ Eina_Bool res = EINA_TRUE, ret = EINA_TRUE;
_e_keyrouter_intercept_hooks_walking++;
EINA_INLIST_FOREACH(_e_keyrouter_intercept_hooks[hookpoint], ch)
{
if (ch->delete_me) continue;
res = ch->func(ch->data, type, event);
+ if (!res) ret = EINA_FALSE;
}
_e_keyrouter_intercept_hooks_walking--;
if ((_e_keyrouter_intercept_hooks_walking == 0) && (_e_keyrouter_intercept_hooks_delete > 0))
_e_keyrouter_intercept_hooks_clean();
- return res;
+ return ret;
}
static void