[TSAM-8484] Corrected focus logic on drag gengrid 03/90703/1
authorRahul Dadhich <r.dadhich@samsung.com>
Tue, 4 Oct 2016 03:45:03 +0000 (09:15 +0530)
committerRahul Dadhich <r.dadhich@samsung.com>
Tue, 4 Oct 2016 03:45:03 +0000 (09:15 +0530)
Change-Id: Ic1338cc006721fe45f38dd5a02be8a34cad8c013
Signed-off-by: Rahul Dadhich <r.dadhich@samsung.com>
src/features/gl-albums.c

index 87356cf0aa8831d6671254b7d36274a7599ff979..4245ab8f893a78cec9b2734314ce904c8c4718b9 100644 (file)
@@ -119,6 +119,30 @@ static void __gl_split_albums_realized(void *data, Evas_Object *obj, void *ei)
        gl_dbg("realized");
 }
 
+static void __gl_split_albums_released(void *data, Evas_Object *obj, void *ei)
+{
+       gl_dbg("split view item released");
+       GL_CHECK(data);
+       GL_CHECK(ei);
+       Elm_Object_Item *it = (Elm_Object_Item *)ei;
+       gl_cluster *album = elm_object_item_data_get(it);
+       GL_CHECK(album);
+       GL_CHECK(album->cluster);
+       gl_appdata *ad = (gl_appdata *)album->ad;
+
+       if (ad->albuminfo.grid_sel_item) {
+               if (ad->albuminfo.selected_uuid) {
+                       gl_dbg("Current item UUID : %s ", album->cluster->uuid);
+                       gl_dbg("album view selected item UUID : %s ", ad->albuminfo.selected_uuid);
+                       if (!strcmp(album->cluster->uuid, ad->albuminfo.selected_uuid)) {
+                               ad->albuminfo.grid_sel_item = ei;
+                               elm_object_item_signal_emit((Elm_Object_Item *)ei, "elm,state,focused", "elm");
+                       }
+               }
+       }
+       gl_dbg("released");
+}
+
 void __gl_albums_new_album_sel(void *data, Evas_Object *obj, void *ei)
 {
        GL_CHECK(data);
@@ -680,13 +704,6 @@ static void __gl_albums_more_btn_cb(void *data, Evas_Object *obj, void *ei)
        _gl_ctxpopup_create(data, obj, __gl_albums_ctxpopup_append);
 }
 
-/*static void __gl_albums_camera_cb(void *data, Evas_Object *obj, void *ei)
-{
-       GL_CHECK(data);
-       gl_dbg("");
-       _gl_ext_load_camera(data);
-}*/
-
 void _gl_update_list_data(void *data)
 {
        GL_CHECK(data);
@@ -1440,6 +1457,7 @@ int _gl_split_albums_create_items(void *data, Evas_Object *parent)
                                continue;
                        }
                }
+               evas_object_smart_callback_add(parent, "released", __gl_split_albums_released, data);
                album_item->item = elm_gengrid_item_append(parent, pgic,
                                   album_item,
                                   __gl_albums_sel_cb,