jaehyun pushed a commit to branch master. http://git.enlightenment.org/tools/enventor.git/commit/?id=b13596ac2c3b6685955f50c037f424c295408078
commit b13596ac2c3b6685955f50c037f424c295408078 Author: YeongJong Lee <clean...@naver.com> Date: Mon Jul 10 20:33:34 2017 +0900 edc_editor: Prevent auto-scrolling by scroller Summary: scroller had auto-scroll properties. In detail, when the content of scroller have focus, the scroller scroll top-left position of the content. But enventor does not want to auto-scroll. This prevent it. Ref : 44e40c7c5e4549e78008eb7b74b6ab1b7e1fcf9d Test Plan: 1. Open enventor basic template 2. Scroll down 3. click edc_editor Reviewers: Jaehyun_Cho, cedric Reviewed By: cedric Subscribers: jpeg, cedric Differential Revision: https://phab.enlightenment.org/D4930 --- src/lib/edc_editor.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/lib/edc_editor.c b/src/lib/edc_editor.c index 1a74373..7481bf8 100644 --- a/src/lib/edc_editor.c +++ b/src/lib/edc_editor.c @@ -1152,11 +1152,20 @@ err: } static void -edit_focused_cb(void *data, Evas_Object *obj EINA_UNUSED, - void *event_info EINA_UNUSED) +edit_focused_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) { edit_data *ed = data; evas_object_smart_callback_call(ed->enventor, SIG_FOCUSED, NULL); + + //Prevent auto-scrolling by scroller + elm_object_focus_allow_set(obj, EINA_FALSE); +} + +static void +edit_unfocused_cb(void *data EINA_UNUSED, Evas_Object *obj, + void *event_info EINA_UNUSED) +{ + elm_object_focus_allow_set(obj, EINA_TRUE); } /*****************************************************************************/ @@ -1513,6 +1522,8 @@ edit_init(Enventor_Object *enventor, Enventor_Item *it) elm_entry_context_menu_disabled_set(en_edit, EINA_TRUE); elm_entry_line_wrap_set(en_edit, ELM_WRAP_NONE); evas_object_smart_callback_add(en_edit, "focused", edit_focused_cb, ed); + evas_object_smart_callback_add(en_edit, "unfocused", + edit_unfocused_cb, NULL); evas_object_smart_callback_add(en_edit, "changed,user", edit_changed_cb, ed); evas_object_smart_callback_add(en_edit, "cursor,changed", edit_cursor_changed_cb, ed); --