use evas_object_event_callback_del_full() instead of evas_object_event_callback_del().

because target object could have different gesture callback with different gesture object.
after _callbacks_unregister() is called, only one callback remains.


SVN revision: 79317
This commit is contained in:
Shinwoo Kim 2012-11-15 05:45:44 +00:00
parent 2a4c76ddeb
commit 673efad150
1 changed files with 18 additions and 18 deletions

View File

@ -1003,29 +1003,29 @@ _callbacks_unregister(Evas_Object *obj)
if (!sd->target) return;
evas_object_event_callback_del
(sd->target, EVAS_CALLBACK_MOUSE_DOWN, _mouse_down_cb);
evas_object_event_callback_del
(sd->target, EVAS_CALLBACK_MOUSE_MOVE, _mouse_move_cb);
evas_object_event_callback_del
(sd->target, EVAS_CALLBACK_MOUSE_UP, _mouse_up_cb);
evas_object_event_callback_del_full
(sd->target, EVAS_CALLBACK_MOUSE_DOWN, _mouse_down_cb, obj);
evas_object_event_callback_del_full
(sd->target, EVAS_CALLBACK_MOUSE_MOVE, _mouse_move_cb, obj);
evas_object_event_callback_del_full
(sd->target, EVAS_CALLBACK_MOUSE_UP, _mouse_up_cb, obj);
evas_object_event_callback_del
(sd->target, EVAS_CALLBACK_MOUSE_WHEEL, _mouse_wheel_cb);
evas_object_event_callback_del_full
(sd->target, EVAS_CALLBACK_MOUSE_WHEEL, _mouse_wheel_cb, obj);
evas_object_event_callback_del
(sd->target, EVAS_CALLBACK_MULTI_DOWN, _multi_down_cb);
evas_object_event_callback_del_full
(sd->target, EVAS_CALLBACK_MULTI_DOWN, _multi_down_cb, obj);
evas_object_event_callback_del
(sd->target, EVAS_CALLBACK_MULTI_MOVE, _multi_move_cb);
evas_object_event_callback_del_full
(sd->target, EVAS_CALLBACK_MULTI_MOVE, _multi_move_cb, obj);
evas_object_event_callback_del
(sd->target, EVAS_CALLBACK_MULTI_UP, _multi_up_cb);
evas_object_event_callback_del_full
(sd->target, EVAS_CALLBACK_MULTI_UP, _multi_up_cb, obj);
evas_object_event_callback_del
(sd->target, EVAS_CALLBACK_KEY_DOWN, _key_down_cb);
evas_object_event_callback_del
(sd->target, EVAS_CALLBACK_KEY_UP, _key_up_cb);
evas_object_event_callback_del_full
(sd->target, EVAS_CALLBACK_KEY_DOWN, _key_down_cb, obj);
evas_object_event_callback_del_full
(sd->target, EVAS_CALLBACK_KEY_UP, _key_up_cb, obj);
}
/**