E_FREE_FUNC(e_comp->autoclose.key_handler, ecore_event_handler_del);
}
-static Eina_Bool
-_e_comp_object_autoclose_key_down_cb(void *data EINA_UNUSED, int type EINA_UNUSED, void *event)
-{
- Ecore_Event_Key *ev = event;
- Eina_Bool del = EINA_TRUE;
-
- /* returning false in key_cb means delete the object */
- if (e_comp->autoclose.key_cb)
- del = !e_comp->autoclose.key_cb(e_comp->autoclose.data, ev);
- if (del) _e_comp_object_autoclose_cleanup(0);
- return ECORE_CALLBACK_DONE;
-}
-
static void
_e_comp_object_autoclose_mouse_up_cb(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
{
}
evas_object_layer_set(e_comp->autoclose.rect, evas_object_layer_get(obj) - 1);
evas_object_focus_set(obj, 1);
- if (!e_comp->autoclose.key_handler)
- e_comp->autoclose.key_handler = ecore_event_handler_add(ECORE_EVENT_KEY_DOWN, _e_comp_object_autoclose_key_down_cb, e_comp);
}
static void