[elmgenlist/list] Use last selected item as focus item.
authorTae-Hwan Kim <the81.kim@samsung.com>
Mon, 3 Jun 2013 02:54:41 +0000 (11:54 +0900)
committerSungho Kwak <sungho1.kwak@samsung.com>
Wed, 12 Jun 2013 05:32:55 +0000 (14:32 +0900)
Change-Id: I56f4bb4a33af69b4a4c4798db64a181b04c94d9d

src/lib/elm_genlist.c
src/lib/elm_list.c

index bb5a3bf..4c4b170 100644 (file)
@@ -2983,7 +2983,11 @@ _elm_genlist_smart_on_focus(Evas_Object *obj)
      {
         if (elm_win_focus_highlight_enabled_get(elm_widget_top_get(obj)))
           {
-             if (sd->focused)
+             if (sd->last_selected_item)
+               {
+                  _item_focused((Elm_Gen_Item *)sd->last_selected_item);
+               }
+             else if (sd->focused)
                {
                   edje_object_signal_emit
                     (VIEW(sd->focused), "elm,state,focused", "elm");
@@ -2992,7 +2996,7 @@ _elm_genlist_smart_on_focus(Evas_Object *obj)
                        (sd->focused->deco_all_view, "elm,state,focused", "elm");
                }
              else
-                _item_focused_next(sd, FOCUS_DIR_DOWN);
+               _item_focused_next(sd, FOCUS_DIR_DOWN);
           }
      }
    else
index 6d87fcb..0060c0c 100644 (file)
@@ -998,7 +998,11 @@ _elm_list_smart_on_focus(Evas_Object *obj)
      {
         if (elm_win_focus_highlight_enabled_get(elm_widget_top_get(obj)))
           {
-             if (sd->focused)
+             if (sd->last_selected_item)
+               {
+                  _item_focused((Elm_List_Item *)sd->last_selected_item);
+               }
+             else if (sd->focused)
                {
                   edje_object_signal_emit
                     (VIEW(sd->focused), "elm,state,focused", "elm");