tasn pushed a commit to branch enlightenment-0.17.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=1a6ce053d0a31419930baa7fcec78dc84ef5ebf4

commit 1a6ce053d0a31419930baa7fcec78dc84ef5ebf4
Author: Tom Hacohen <[email protected]>
Date:   Mon Nov 25 16:31:21 2013 +0000

    Entry: Fix scroller position to show cursor.
    
    Before this commit, this would not always be the case.
    I added a "scroll to cursor" for every change in entry size.
    
    This is a further fix to T169. It's not exactly what described there,
    but it's a similar issue I found while fixing it.
    
    Somehow of a stage 2 for commit 80844cbcd72d5c3c00104b8bf8f9c5e590bad2bc.
    This also adds changelog and news entries, as this issue is now fully fixed.
---
 ChangeLog         | 5 +++++
 NEWS              | 1 +
 src/bin/e_entry.c | 7 +++++++
 3 files changed, 13 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index 4d587ec..2e36a65 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,9 @@
+2013-11-25 Tom Hacohen
+
+       * Entry: Fixed issues with entry not scrolling to cursor.
+
 2013-11-05 Tom Hacohen
+
        * wsod: Fixed gdb hangs when generating backtraces.
 
 2013-10-14 Eduardo Lima (Etrunko)
diff --git a/NEWS b/NEWS
index b5347a5..9ee7dda 100644
--- a/NEWS
+++ b/NEWS
@@ -147,3 +147,4 @@ Fixes:
     * fixed bug with filemanager setting path with too many spaces when opened 
from menu
     * fix remember size/position apply
     * wsod: Fixed gdb hangs when generating backtraces.
+    * Entry: Fixed issues with entry not scrolling to cursor.
diff --git a/src/bin/e_entry.c b/src/bin/e_entry.c
index 623c7a1..7dea919 100644
--- a/src/bin/e_entry.c
+++ b/src/bin/e_entry.c
@@ -698,6 +698,13 @@ _entry_recalc_size(Evas_Object *object)
    evas_object_geometry_get(sd->entry_object, NULL, NULL, &pw, &ph);
    if ((w == pw) && (h == ph)) return;
    evas_object_resize(sd->entry_object, w, h);
+
+     {
+        Evas_Coord cx, cy, cw, ch;
+        edje_object_part_text_cursor_geometry_get(sd->entry_object,
+              ENTRY_PART_NAME, &cx, &cy, &cw, &ch);
+        e_scrollframe_child_region_show(sd->scroll_object, cx, cy, cw, ch);
+     }
 }
 
 static void

-- 


Reply via email to