modules: update scroll stuff to the new behaviour

This commit is contained in:
Marcel Hollerbach 2015-02-27 18:14:11 +01:00
parent f4c4149fad
commit 595584e781
1 changed files with 9 additions and 6 deletions

View File

@ -338,6 +338,9 @@ static void
_toolbar_selected_cb(void *data, Evas_Object *obj, void *event) _toolbar_selected_cb(void *data, Evas_Object *obj, void *event)
{ {
CFType *cft = data; CFType *cft = data;
if (evas_object_data_get(obj, "__anim")) return;
elm_genlist_item_bring_in(cft->gindex, ELM_GENLIST_ITEM_SCROLLTO_TOP); elm_genlist_item_bring_in(cft->gindex, ELM_GENLIST_ITEM_SCROLLTO_TOP);
} }
@ -481,13 +484,13 @@ _unload_cb(void *data, Evas_Object *obj, void *event)
static void static void
_list_scroll_start_cb(void *data, Evas_Object *obj, void *event) _list_scroll_start_cb(void *data, Evas_Object *obj, void *event)
{ {
evas_object_data_set(obj, "__anim", (void*) 1); evas_object_data_set(data, "__anim", (void*) 1);
} }
static void static void
_list_scroll_stop_cb(void *data, Evas_Object *obj, void *event) _list_scroll_stop_cb(void *data, Evas_Object *obj, void *event)
{ {
evas_object_data_del(obj, "__anim"); evas_object_data_del(data, "__anim");
} }
static void static void
@ -497,7 +500,7 @@ _list_scroll_cb(void *data, Evas_Object *obj, void *event)
Elm_Object_Item *it, *gi; Elm_Object_Item *it, *gi;
CFType *cft; CFType *cft;
if (evas_object_data_get(obj, "__anim")) return;
evas_object_geometry_get(obj, &x, &y, &w ,&h); evas_object_geometry_get(obj, &x, &y, &w ,&h);
it = elm_genlist_at_xy_item_get(obj, x + 3, y + 3, NULL); it = elm_genlist_at_xy_item_get(obj, x + 3, y + 3, NULL);
@ -539,9 +542,9 @@ e_int_config_modules_create_cb(const char *path, const char *part, Evas_Object *
list = elm_genlist_add(parent); list = elm_genlist_add(parent);
evas_object_size_hint_align_set(list, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_size_hint_align_set(list, EVAS_HINT_FILL, EVAS_HINT_FILL);
evas_object_size_hint_weight_set(list, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_weight_set(list, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_smart_callback_add(list, "scroll", _list_scroll_cb, list); evas_object_smart_callback_add(list, "scroll", _list_scroll_cb, tb);
evas_object_smart_callback_add(list, "scroll,anim,start", _list_scroll_start_cb, list); evas_object_smart_callback_add(list, "scroll,anim,start", _list_scroll_start_cb, tb);
evas_object_smart_callback_add(list, "scroll,anim,stop", _list_scroll_stop_cb, list); evas_object_smart_callback_add(list, "scroll,anim,stop", _list_scroll_stop_cb, tb);
evas_object_data_set(list, "__toolbar", tb); evas_object_data_set(list, "__toolbar", tb);
elm_table_pack(tab, list, 1, 0, 1, 1); elm_table_pack(tab, list, 1, 0, 1, 1);
evas_object_show(list); evas_object_show(list);