if (rsd->is_item_animating)
{
item = eina_list_nth(rsd->item_list, rsd->drag_item_index);
- rsd->item_list = eina_list_prepend_relative(rsd->item_list, rsd->tmp_drag_item, item);
+ if (item) rsd->item_list = eina_list_prepend_relative(rsd->item_list, rsd->tmp_drag_item, item);
rsd->is_item_animating = EINA_FALSE;
}
rsd->tmp_drag_item = NULL;
item = eina_list_nth(rsd->item_list, rsd->drop_item_index);
- rsd->item_list = eina_list_prepend_relative(rsd->item_list, rsd->drag_item, item);
+ if (item) rsd->item_list = eina_list_prepend_relative(rsd->item_list, rsd->drag_item, item);
evas_object_show(rsd->drag_item->base.obj);
_item_rearrange(rsd, rsd->selected_index);
{
idx2 = last_index;
item = eina_list_nth(rsd->item_list, last_index);
- evas_object_hide(item->base.obj);
+ if (item) evas_object_hide(item->base.obj);
}
}
else
idx1 = first_index;
//tmp_drag_item was removed from the list, must subtract 1
item = eina_list_nth(rsd->item_list, first_index - 1);
- evas_object_hide(item->base.obj);
+ if (item) evas_object_hide(item->base.obj);
}
}
else
{
pos_item = eina_list_nth(rsd->item_list, rsd->drop_item_index);
- rsd->item_list = eina_list_prepend_relative(rsd->item_list, rsd->tmp_drag_item, pos_item);
+ if (pos_item) rsd->item_list = eina_list_prepend_relative(rsd->item_list, rsd->tmp_drag_item, pos_item);
}
}
else
{
pos_item = eina_list_nth(rsd->item_list, rsd->drop_item_index);
- rsd->item_list = eina_list_prepend_relative(rsd->item_list, rsd->tmp_drag_item, pos_item);
+ if (pos_item) rsd->item_list = eina_list_prepend_relative(rsd->item_list, rsd->tmp_drag_item, pos_item);
}
_item_rearrange(rsd, rsd->selected_index);
_items_transformation_update(rsd);
{
Eext_Rotary_Selector_Item *it = NULL;
it = eina_list_nth(rsd->item_list, new_index);
- _delete_item(rsd, it);
+ if (it) _delete_item(rsd, it);
}
}
else if (rsd->add_enabled && (new_index == add_idx))