if (sh) eldbus_signal_handler_del(sh);
if (eh) ecore_event_handler_del(eh);
if (eh2) ecore_event_handler_del(eh2);
- evas_object_event_callback_del(this->ev.win, EVAS_CALLBACK_KEY_DOWN, _cb_evas_key_down);
- evas_object_event_callback_del(this->ev.win, EVAS_CALLBACK_KEY_UP, _cb_evas_key_up);
- evas_object_smart_callback_del(this->ev.win, effect_started, _cb_evas_smart_effect);
- evas_object_smart_callback_del(this->ev.win, effect_done, _cb_evas_smart_effect);
+
+ if (ev_type == E_TC_EVENT_TYPE_INPUT_EVAS_KEY)
+ {
+ evas_object_event_callback_del(this->ev.win, EVAS_CALLBACK_KEY_DOWN, _cb_evas_key_down);
+ evas_object_event_callback_del(this->ev.win, EVAS_CALLBACK_KEY_UP, _cb_evas_key_up);
+ }
+ else if (ev_type == E_TC_EVENT_TYPE_EFFECT)
+ {
+ evas_object_smart_callback_del(this->ev.win, effect_started, _cb_evas_smart_effect);
+ evas_object_smart_callback_del(this->ev.win, effect_done, _cb_evas_smart_effect);
+ }
res = (ev.response == ev.request);
EINA_SAFETY_ON_FALSE_GOTO(res, finish);