Index: src/lib/elm_index.c
===================================================================
--- src/lib/elm_index.c	(revision 81710)
+++ src/lib/elm_index.c	(working copy)
@@ -265,6 +265,11 @@ _elm_index_smart_theme(Eo *obj, void *_pd, va_list
      }
    else elm_layout_signal_emit(obj, "elm,state,inactive", "elm");
 
+   if (sd->selected_it != NULL)
+     {
+        edje_object_signal_emit(VIEW(sd->selected_it), "elm,state,active", "elm");
+     }
+
    if (ret) *ret = EINA_TRUE;
 }
 
@@ -694,6 +699,7 @@ _elm_index_smart_add(Eo *obj, void *_pd, va_list *
    priv->indicator_disabled = EINA_FALSE;
    priv->horizontal = EINA_FALSE;
    priv->autohide_disabled = EINA_FALSE;
+   priv->selected_it = NULL;
 
    elm_layout_theme_set
      (obj, "index", "base/vertical", elm_widget_style_get(obj));
@@ -998,12 +1004,14 @@ elm_index_item_selected_set(Elm_Object_Item *it,
    Evas_Coord x, y, w, h;
 
    ELM_INDEX_ITEM_CHECK_OR_RETURN(it);
+   ELM_INDEX_DATA_GET(WIDGET(it), sd);
 
    //FIXME: Should be update indicator based on the autohidden status
    //& indicator visiblility
 
    if (selected)
      {
+        sd->selected_it = (Elm_Index_Item *)it;
         evas_object_geometry_get(VIEW(it), &x, &y, &w, &h);
         _sel_eval(WIDGET(it), x + (w / 2), y + (h / 2));
         evas_object_smart_callback_call(WIDGET(it), SIG_SELECTED, it);
Index: src/lib/elm_widget_index.h
===================================================================
--- src/lib/elm_widget_index.h	(revision 81710)
+++ src/lib/elm_widget_index.h	(working copy)
@@ -17,6 +17,18 @@
 /**
  * Base layout smart data extended with index instance data.
  */
+typedef struct _Elm_Index_Item       Elm_Index_Item;
+struct _Elm_Index_Item
+{
+   ELM_WIDGET_ITEM;
+
+   const char   *letter;
+   int           level;
+   Evas_Smart_Cb func;
+
+   Eina_Bool     selected : 1;
+};
+
 typedef struct _Elm_Index_Smart_Data Elm_Index_Smart_Data;
 struct _Elm_Index_Smart_Data
 {
@@ -34,18 +46,8 @@ struct _Elm_Index_Smart_Data
    Eina_Bool             horizontal : 1;
    Eina_Bool             autohide_disabled : 1;
    Eina_Bool             indicator_disabled : 1;
-};
 
-typedef struct _Elm_Index_Item       Elm_Index_Item;
-struct _Elm_Index_Item
-{
-   ELM_WIDGET_ITEM;
-
-   const char   *letter;
-   int           level;
-   Evas_Smart_Cb func;
-
-   Eina_Bool     selected : 1;
+   Elm_Index_Item       *selected_it;
 };
 
 /**
