raster pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=feefa828c35deb46289275f7946b06cb6c5b93e3

commit feefa828c35deb46289275f7946b06cb6c5b93e3
Author: Carsten Haitzler (Rasterman) <ras...@rasterman.com>
Date:   Fri Nov 8 16:56:24 2013 +0900

    fix cursor to stay shown when cursor moves due to manual placement or typing
    
    related to https://phab.enlightenment.org/D204 which doesn't apply or
    has the emit in the wrong place. this now has it done right.
---
 data/themes/edc/elm/entry.edc | 9 +++++++++
 src/lib/elm_entry.c           | 3 +++
 2 files changed, 12 insertions(+)

diff --git a/data/themes/edc/elm/entry.edc b/data/themes/edc/elm/entry.edc
index 620f738..e6188ec 100644
--- a/data/themes/edc/elm/entry.edc
+++ b/data/themes/edc/elm/entry.edc
@@ -353,6 +353,15 @@ group { name: "elm/entry/cursor/default";
          target: "cursor_hide_timer";
          after: "cursor_hide_stop";
       }
+      program {
+         signal: "elm,action,show,cursor"; source: "elm";
+         action: ACTION_STOP;
+         target: "cursor_show";
+         target: "cursor_hide";
+         target: "cursor_show_timer";
+         target: "cursor_hide_timer";
+         after: "cursor_show";
+      }
       program { name: "cursor_hide_stop";
          action: STATE_SET "default" 0.0;
          target: "cursor";
diff --git a/src/lib/elm_entry.c b/src/lib/elm_entry.c
index 9d2508a..e047f6d 100644
--- a/src/lib/elm_entry.c
+++ b/src/lib/elm_entry.c
@@ -1876,6 +1876,8 @@ _entry_cursor_changed_signal_cb(void *data,
    sd->cursor_pos = edje_object_part_text_cursor_pos_get
        (sd->entry_edje, "elm.text", EDJE_CURSOR_MAIN);
    sd->cur_changed = EINA_TRUE;
+   if (elm_widget_focus_get(data))
+     edje_object_signal_emit(sd->entry_edje, "elm,action,show,cursor", "elm");
    _cursor_geometry_recalc(data);
 }
 
@@ -1885,6 +1887,7 @@ _entry_cursor_changed_manual_signal_cb(void *data,
                                        const char *emission __UNUSED__,
                                        const char *source __UNUSED__)
 {
+   ELM_ENTRY_DATA_GET(data, sd);
    evas_object_smart_callback_call(data, SIG_CURSOR_CHANGED_MANUAL, NULL);
 }
 

-- 


Reply via email to