Evas_Event_Key_Down *ev = (Evas_Event_Key_Down *)event_info;
SETTING_TRACE_DEBUG("ev->key : %s", ev->key);
+ SETTING_TRACE("ad->item_dev_name->eo_check:%p", ad->item_dev_name->eo_check);
+ SETTING_TRACE("obj:%p, %s", obj, elm_entry_entry_get(obj));
if(safeStrCmp(ev->key, "Return") == 0)
{
// if entry has 1 char at list, hide ime.
ad->popup = setting_create_popup_without_btn(ad, ad->win_get, NULL, _(EMPTY_LIMITATION_STR),
__about_popup_rsp_cb, POPUP_INTERVAL, FALSE, FALSE);
}
+ } else {
+ Evas_Object *entry_container = elm_object_parent_widget_get(obj);
+ if(safeStrLen(elm_entry_entry_get(obj)) > 0) {
+ elm_object_signal_emit(entry_container, "elm,state,guidetext,hide", "elm");
+ } else {
+ //elm_object_part_text_set(entry_container, "elm.guidetext", _("IDS_ST_BODY_TAP_TO_INSERT"));
+ elm_object_signal_emit(entry_container, "elm,state,guidetext,show", "elm");
+ }
}
}
-static Eina_Bool __add_event_on_idler(void *data)
-{
- retv_if(data==NULL, FALSE);
-
- SettingAboutUG *ad = (SettingAboutUG*)data;
-
- if(ad->item_dev_name)
- evas_object_event_callback_add(ad->item_dev_name->eo_check, EVAS_CALLBACK_KEY_DOWN, __entry_key_down_cb, ad);
-
- return ECORE_CALLBACK_CANCEL;
-}
-
int setting_about_generate_genlist(void *data)
{
if (ad->item_dev_name) {
ad->item_dev_name->userdata = ad;
ad->item_dev_name->isSinglelineFlag = 1;
+ ad->item_dev_name->start_change_cb = (setting_call_back_func)__entry_key_down_cb;
ad->item_dev_name->stop_change_cb = __entry_unfocus_cb;
ad->item_dev_name->limit_filter_data = calloc(1, sizeof(Elm_Entry_Filter_Accept_Set));
ad->update_timer =
ecore_timer_add(2, (Ecore_Task_Cb) __timer_update_cb, ad);
- ecore_idler_add(__add_event_on_idler, ad);
-
return SETTING_RETURN_SUCCESS;
}
}
}
-
+static void __entry_keydown(void *data, Evas *e, Evas_Object *obj, void *event_info)
+{
+ ret_if(event_info == NULL);
+ Evas_Event_Key_Down *ev = (Evas_Event_Key_Down *)event_info;
+ SETTING_TRACE_DEBUG("ev->key : %s", ev->key);
+ SETTING_TRACE("obj:%p, %s", obj, elm_entry_entry_get(obj));
+
+ Evas_Object *entry_container = elm_object_parent_widget_get(obj);
+ if(safeStrLen(elm_entry_entry_get(obj)) > 0) {
+ elm_object_signal_emit(entry_container, "elm,state,guidetext,hide", "elm");
+ } else {
+ //elm_object_part_text_set(entry_container, "elm.guidetext", _("IDS_ST_BODY_TAP_TO_INSERT"));
+ elm_object_signal_emit(entry_container, "elm,state,guidetext,show", "elm");
+ }
+}
/**
* Do process when clicking radio in subitem of expandable item
evas_object_smart_callback_add(entry, "focused", __entry_focused, ed_name);
elm_object_signal_callback_add(ed_name, "elm,eraser,clicked", "elm", __eraser_clicked, entry);
+ Evas_Object_Event_Cb key_down_cb = __entry_keydown;
+ if (item_data->start_change_cb) {
+ key_down_cb = (Evas_Object_Event_Cb)(item_data->start_change_cb);
+ }
+ evas_object_event_callback_add(entry, EVAS_CALLBACK_KEY_DOWN, key_down_cb, item_data->userdata);
+
if (item_data->input_panel_disable_flag) {
elm_entry_input_panel_enabled_set(entry, EINA_FALSE);
}