diff options
author | Amitesh Singh <amitesh.sh@samsung.com> | 2016-07-28 15:18:07 +0530 |
---|---|---|
committer | Amitesh Singh <amitesh.sh@samsung.com> | 2016-07-28 15:22:07 +0530 |
commit | ba060fe93236da37e4c8bbd84c1bcf58e27979d6 (patch) | |
tree | b34a8cca169d81a85c89aa0679fdf6c2a6f924a4 | |
parent | 28aa0ba79fc10920c89827dda94ead8f3bde9d28 (diff) | |
download | efl-ba060fe93236da37e4c8bbd84c1bcf58e27979d6.tar.gz |
entry: allow force recalc on "size,eval" "elm" signal
Summary:
In some use cases, font (style) of elm.text in elm entry is changed
on focus and unfocus. user must send "size,eval",elm signal to entry to
force recalc, but this was not happening. This patch fixes that issue.
fixes T4233
Reviewers: tasn, herdsman, raster
Subscribers: cedric, seoz, jpeg
Maniphest Tasks: T4233
Differential Revision: https://phab.enlightenment.org/D4196
-rw-r--r-- | src/lib/elementary/elm_entry.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/lib/elementary/elm_entry.c b/src/lib/elementary/elm_entry.c index 87c555f1b1..ead6be5b83 100644 --- a/src/lib/elementary/elm_entry.c +++ b/src/lib/elementary/elm_entry.c @@ -3625,6 +3625,15 @@ _end_handler_mouse_move_cb(void *data, _magnifier_move(data); } +static void +_entry_on_size_evaluate_signal(void *data, + Evas_Object *obj EINA_UNUSED, + const char *emission EINA_UNUSED, + const char *source EINA_UNUSED) +{ + elm_entry_calc_force(data); +} + EOLIAN static void _elm_entry_efl_canvas_group_group_add(Eo *obj, Elm_Entry_Data *priv) { @@ -3785,6 +3794,10 @@ _elm_entry_efl_canvas_group_group_add(Eo *obj, Elm_Entry_Data *priv) if (_elm_config->desktop_entry) priv->sel_handler_disabled = EINA_TRUE; + + edje_object_signal_callback_add + (priv->entry_edje, "size,eval", "elm", + _entry_on_size_evaluate_signal, obj); } static void @@ -3829,6 +3842,10 @@ _elm_entry_efl_canvas_group_group_del(Eo *obj, Elm_Entry_Data *sd) if (sd->auto_save) _save_do(obj); } + edje_object_signal_callback_del_full + (sd->entry_edje, "size,eval", "elm", + _entry_on_size_evaluate_signal, obj); + if (sd->scroll) elm_interface_scrollable_content_viewport_resize_cb_set(obj, NULL); |