elementary entry: fix to call "cursor,changed" callback when only cursor is changed
authorYoungbok Shin <youngb.shin@samsung.com>
Mon, 21 Nov 2016 07:29:17 +0000 (16:29 +0900)
committerJinYong Park <j4939.park@samsung.com>
Tue, 22 Nov 2016 10:46:58 +0000 (19:46 +0900)
Summary:
"cursor,changed" smart callback should be called when only the main cusor's
position is changed. But, It was called when elm_layout_sizing_eval() is called
for elm_entry.

@fix

Test Plan: N/A

Reviewers: raster, cedric, woohyun, herdsman

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D4419

Change-Id: I559c4653985be3fced1cc5fb280dbf4b955d15a4

src/lib/elm_entry.c

index 4342ee1..7e28816 100644 (file)
@@ -1912,8 +1912,6 @@ _cursor_geometry_recalc(Evas_Object *obj)
 {
    ELM_ENTRY_DATA_GET(obj, sd);
 
-   eo_do(obj, eo_event_callback_call(ELM_ENTRY_EVENT_CURSOR_CHANGED, NULL));
-
    if (!sd->deferred_recalc_job)
      {
         Evas_Coord cx, cy, cw, ch;
@@ -3693,6 +3691,9 @@ _entry_cursor_changed_signal_cb(void *data,
    if (elm_widget_focus_get(data))
      edje_object_signal_emit(sd->entry_edje, "elm,action,show,cursor", "elm");
    _cursor_geometry_recalc(data);
+
+   eo_do(data, eo_event_callback_call(ELM_ENTRY_EVENT_CURSOR_CHANGED, NULL));
+
    if (_elm_atspi_enabled())
      eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_emit(data, ELM_INTERFACE_ATSPI_TEXT_EVENT_ACCESS_TEXT_CARET_MOVED, NULL));
 }