From: Taehyub Kim Date: Tue, 29 May 2018 02:24:18 +0000 (+0900) Subject: wearable/rotary_selector: modify items clear API considering to add item X-Git-Tag: submit/tizen/20190424.060632~35 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=640689cfe2ffab3cdfe6b2e13a71f6209b8088fe;p=platform%2Fcore%2Fuifw%2Fefl-ext.git wearable/rotary_selector: modify items clear API considering to add item Change-Id: I415a8ea4f6a0926f1586037ab52ac695f3f06f3c --- diff --git a/src/wearable/efl_extension_rotary_selector.c b/src/wearable/efl_extension_rotary_selector.c index a1c84f5..3a5d005 100644 --- a/src/wearable/efl_extension_rotary_selector.c +++ b/src/wearable/efl_extension_rotary_selector.c @@ -3604,6 +3604,7 @@ eext_rotary_selector_item_del(Eext_Object_Item *item) EAPI void eext_rotary_selector_items_clear(Evas_Object *obj) { + Eina_List *l; Evas_Object* rotary_selector = obj; Eext_Rotary_Selector_Data *rsd = NULL; Eext_Rotary_Selector_Item *item = NULL; @@ -3621,11 +3622,20 @@ eext_rotary_selector_items_clear(Evas_Object *obj) return; } - EINA_LIST_FREE(rsd->item_list, item) - evas_object_del(item->base.obj); + EINA_LIST_FOREACH(rsd->item_list, l, item) + { + if (item != rsd->add_item) + { + rsd->item_list = eina_list_remove(rsd->item_list, item); + evas_object_del(item->base.obj); + } + } rsd->selected_index = 0; + _item_rearrange(rsd, rsd->selected_index); + _items_transformation_update(rsd); + _items_invalidate(rsd); _item_update_animation_run(rsd); return;