folder_panel: Entry keyboard done key fix 19/64819/1 accepted/tizen/mobile/20160406.110028 submit/tizen_mobile/20160406.085633
authorKamil Lipiszko <k.lipiszko@samsung.com>
Tue, 5 Apr 2016 12:23:25 +0000 (14:23 +0200)
committerKamil Lipiszko <k.lipiszko@samsung.com>
Tue, 5 Apr 2016 12:23:25 +0000 (14:23 +0200)
Change-Id: I690b656ec2bf30d6fc1903469e00516cad9894d9

src/folder_panel.c

index f1e539e..25251f3 100644 (file)
@@ -79,6 +79,7 @@ static void __folder_panel_entry_activated_cb(void *data, Evas_Object *obj, void
 static void __folder_panel_entry_deactivated_cb(void *data, Evas_Object *obj, void *ei);
 static void __folder_panel_entry_changed_cb(void *data, Evas_Object *obj, void *ei);
 static void __folder_panel_entry_clicked_cb(void *data, Evas_Object *obj, void *ei);
+static void __folder_panel_entry_done_cb(void *data, Evas_Object *obj, void *ei);
 static void __folder_panel_entry_clear_button_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source);
 
 static void __folder_panel_item_add_to_folder_cb(void *data, Evas_Object *obj, const char *emission, const char *source);
@@ -707,6 +708,8 @@ static Evas_Object *__folder_panel_create_entry(Evas_Object *parent, const char
 
        evas_object_smart_callback_add(entry, "changed", __folder_panel_entry_changed_cb, parent);
        evas_object_smart_callback_add(entry, "clicked", __folder_panel_entry_clicked_cb, parent);
+       evas_object_smart_callback_add(entry, "activated", __folder_panel_entry_done_cb, parent);
+
        elm_object_signal_callback_add(parent, SIGNAL_CLEAR_BTN_CLICKED, SIGNAL_SOURCE,
                                __folder_panel_entry_clear_button_clicked_cb, entry);
 
@@ -798,6 +801,20 @@ static void __folder_panel_entry_clicked_cb(void *data, Evas_Object *obj, void *
        elm_entry_input_panel_show(obj);
 }
 
+static void __folder_panel_entry_done_cb(void *data, Evas_Object *obj, void *ei)
+{
+       LOGI("");
+       Evas_Object *entry = obj;
+       Evas_Object *folder_popup = data;
+
+       if (!folder_popup || !entry) {
+               LOGE("Invalid data");
+               return;
+       }
+
+       elm_entry_input_panel_hide(entry);
+}
+
 static void __folder_panel_entry_clear_button_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
 {
        LOGI("");