rimmed pushed a commit to branch master.

http://git.enlightenment.org/tools/eflete.git/commit/?id=c29077cc50e89fe2d122cb54c1b67fb1d1a8d01c

commit c29077cc50e89fe2d122cb54c1b67fb1d1a8d01c
Author: Andrii Kroitor <an.kroi...@samsung.com>
Date:   Wed Jul 13 11:08:10 2016 +0300

    group_navigator: fix selection after part_del
---
 src/bin/ui/workspace/group_navigator.c | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/src/bin/ui/workspace/group_navigator.c 
b/src/bin/ui/workspace/group_navigator.c
index ddd9c3d..e80f0ce 100644
--- a/src/bin/ui/workspace/group_navigator.c
+++ b/src/bin/ui/workspace/group_navigator.c
@@ -1982,17 +1982,32 @@ void
 group_navigator_part_del(Evas_Object *obj, Part *part)
 {
    Part_List *pl = evas_object_data_get(obj, GROUP_NAVIGATOR_DATA);
-   Elm_Object_Item *part_item;
+   Elm_Object_Item *part_item, *to_select;
 
    assert(pl != NULL);
    assert(part != NULL);
 
    part_item = _part_item_find(pl, part);
+
+   to_select = elm_genlist_item_next_get(part_item);
+
+   while ((to_select != NULL) && (elm_genlist_item_item_class_get(to_select) 
!= pl->itc_part))
+     to_select = elm_genlist_item_next_get(to_select);
+   if (to_select == NULL)
+     {
+        to_select = elm_genlist_item_prev_get(part_item);
+        while ((to_select != NULL) && 
(elm_genlist_item_item_class_get(to_select) != pl->itc_part))
+          to_select = elm_genlist_item_prev_get(to_select);
+     }
+   if (to_select == NULL)
+     to_select = pl->parts_caption_item;
+
    if (part == pl->part)
      _unselect_part(pl);
 
    elm_object_item_del(part_item);
    elm_genlist_item_update(pl->parts_caption_item);
+   elm_genlist_item_selected_set(to_select, true);
 }
 
 static void

-- 


Reply via email to