From 7e9ef0f10d9333801eded936c79d46f96dc031d6 Mon Sep 17 00:00:00 2001 From: WooHyun Jung Date: Mon, 6 May 2013 20:42:34 +0900 Subject: [PATCH] elementary/elm_entry.c : Add elm_entry smart callback, named text,set,done. This smart callback will be useful when long text has been set and developer want to know the timing of setting whole text to the entry. --- legacy/elementary/ChangeLog | 14 +++++++++----- legacy/elementary/NEWS | 1 + legacy/elementary/src/lib/elm_entry.c | 4 ++++ legacy/elementary/src/lib/elm_entry.h | 1 + 4 files changed, 15 insertions(+), 5 deletions(-) diff --git a/legacy/elementary/ChangeLog b/legacy/elementary/ChangeLog index 4e9a128174..28bf77b411 100644 --- a/legacy/elementary/ChangeLog +++ b/legacy/elementary/ChangeLog @@ -1316,23 +1316,27 @@ * The momentum animation time is changed as the amount of flick. -2012-05-01 Ryuan Choi (ryuan) +2013-05-01 Ryuan Choi (ryuan) * Fix elm_object_cursor_theme_search_enabled_set to do as it's name described. -2012-05-02 WooHyun Jung +2013-05-02 WooHyun Jung * elm_entry_filter_accept_set function now can recognize tags. -2012-05-02 ChunEon Park (Hermet) +2013-05-02 ChunEon Park (Hermet) * Don't be dead even if a ctxpopup item callback function is null. -2012-05-03 Shinwoo Kim +2013-05-03 Shinwoo Kim * Fix gengrid does not work under the accessibility. * Fix do not append NULL to genlist focus list. -2012-05-01 Ryuan Choi (ryuan) +2013-05-01 Ryuan Choi (ryuan) * Fix elm_clock_first_interval_set writes wrong value. + +2013-05-06 WooHyun Jung + + * Add elm_entry smart callback - "text,set,done". diff --git a/legacy/elementary/NEWS b/legacy/elementary/NEWS index 2f5c130cd7..ebb3f6ae95 100644 --- a/legacy/elementary/NEWS +++ b/legacy/elementary/NEWS @@ -67,6 +67,7 @@ Additions: * Add the config elm_scroll_smooth_start_enable. * Add elm_layout smart callback - "language,changed". * The momentum animation time is changed as the amount of flick. + * Add elm_entry smart callback - "text,set,done". Improvements: diff --git a/legacy/elementary/src/lib/elm_entry.c b/legacy/elementary/src/lib/elm_entry.c index 0ebb6433ca..f8ba61fe7c 100644 --- a/legacy/elementary/src/lib/elm_entry.c +++ b/legacy/elementary/src/lib/elm_entry.c @@ -48,6 +48,7 @@ static const char SIG_SELECTION_CUT[] = "selection,cut"; static const char SIG_SELECTION_PASTE[] = "selection,paste"; static const char SIG_SELECTION_START[] = "selection,start"; static const char SIG_THEME_CHANGED[] = "theme,changed"; +static const char SIG_TEXT_SET_DONE[] = "text,set,done"; static const char SIG_UNDO_REQUEST[] = "undo,request"; static const char SIG_UNFOCUSED[] = "unfocused"; static const Evas_Smart_Cb_Description _smart_callbacks[] = { @@ -80,6 +81,7 @@ static const Evas_Smart_Cb_Description _smart_callbacks[] = { {SIG_SELECTION_PASTE, ""}, {SIG_SELECTION_START, ""}, {SIG_THEME_CHANGED, ""}, + {SIG_TEXT_SET_DONE, ""}, {SIG_UNDO_REQUEST, ""}, {SIG_UNFOCUSED, ""}, {NULL, NULL} @@ -2315,6 +2317,7 @@ _text_append_idler(void *data) free(sd->append_text_left); sd->append_text_left = NULL; sd->append_text_idler = NULL; + evas_object_smart_callback_call(obj, SIG_TEXT_SET_DONE, NULL); return ECORE_CALLBACK_CANCEL; } } @@ -2576,6 +2579,7 @@ _elm_entry_smart_text_set(Eo *obj, void *_pd, va_list *list) else { edje_object_part_text_set(sd->entry_edje, "elm.text", entry); + evas_object_smart_callback_call(obj, SIG_TEXT_SET_DONE, NULL); } if (len > 0) diff --git a/legacy/elementary/src/lib/elm_entry.h b/legacy/elementary/src/lib/elm_entry.h index 2f3f7d4351..1f7a63b9e1 100644 --- a/legacy/elementary/src/lib/elm_entry.h +++ b/legacy/elementary/src/lib/elm_entry.h @@ -241,6 +241,7 @@ * parameter for the callback will be an #Elm_Entry_Anchor_Info. * @li "preedit,changed": The preedit string has changed. * @li "language,changed": Program language changed. + * @li "text,set,done": Whole text has been set to the entry. * * Default content parts of the entry items that you can use for are: * @li "icon" - An icon in the entry