fileselector: enter key press in name entry acts like ok button click.
authorDaniel Juyung Seo <juyung.seo@samsung.com>
Fri, 20 Dec 2013 09:54:57 +0000 (18:54 +0900)
committerDaniel Juyung Seo <juyung.seo@samsung.com>
Fri, 20 Dec 2013 09:54:57 +0000 (18:54 +0900)
- I used "activate" signal of entry and this will call ok button clicked function directly.
- This is very useful when the fileselector is used in desktop with keyboard.

src/lib/elc_fileselector.c

index 081a541..198d2a4 100644 (file)
@@ -1271,6 +1271,13 @@ _resource_deleted(void *data, int type EINA_UNUSED, void *ev)
 }
 
 static void
+_name_entry_activated_cb(void *data, Evas_Object *obj EINA_UNUSED,
+                         void *event_info EINA_UNUSED)
+{
+   _ok(data, NULL, NULL);
+}
+
+static void
 _elm_fileselector_smart_add(Eo *obj, void *_pd, va_list *list EINA_UNUSED)
 {
    Evas_Object *ic, *bt, *en, *pb;
@@ -1360,6 +1367,8 @@ _elm_fileselector_smart_add(Eo *obj, void *_pd, va_list *list EINA_UNUSED)
    elm_entry_line_wrap_set(en, ELM_WRAP_CHAR);
    evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   evas_object_smart_callback_add(en, "activated",
+                                  _name_entry_activated_cb, obj);
 
    elm_widget_sub_object_add(obj, en);
    priv->name_entry = en;