From 7dd5b326d8efdf9adcec20a9bad789ad0d6d5677 Mon Sep 17 00:00:00 2001 From: Jihoon Kim Date: Fri, 25 Jan 2013 05:15:46 +0000 Subject: [PATCH] edje entry: move ecore_imf_context_cursor_position_set from mouse down event to mouse up event SVN revision: 83318 --- ChangeLog | 3 ++- NEWS | 1 + src/lib/edje/edje_entry.c | 14 +++++++++----- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2f5c0b0a75..58052c8328 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,7 @@ 2013-01-25 Jihoon Kim (jihoon) - * Remove ecore_imf_context_reset, cursor update in mouse move event because it's useless. + * edje entry : Remove ecore_imf_context_reset, cursor update in mouse move event because it's useless. + * edje entry : move ecore_imf_context_cursor_position_set from mouse down event to mouse up event 2013-01-24 Sung W. Park (sung_) diff --git a/NEWS b/NEWS index 4320fefde4..c1f0a05d66 100644 --- a/NEWS +++ b/NEWS @@ -84,6 +84,7 @@ Improvements: * rebase dns.c against upstream * Don't over align data if they are already aligned. * edje entry: remove ecore_imf_context_reset, cursor update in mouse move event because it's useless. + * edje entry: move ecore_imf_context_cursor_position_set from mouse down event to mouse up event. Fixes: * Fix PPC (big endian) image codec bug. diff --git a/src/lib/edje/edje_entry.c b/src/lib/edje/edje_entry.c index 9732a0aef0..43e3c2f5fa 100644 --- a/src/lib/edje/edje_entry.c +++ b/src/lib/edje/edje_entry.c @@ -1975,8 +1975,6 @@ _edje_part_mouse_down_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_ { _edje_emit(rp->edje, "cursor,changed", rp->part->name); _edje_emit(rp->edje, "cursor,changed,manual", rp->part->name); - - _edje_entry_imf_cursor_info_set(en); } evas_textblock_cursor_free(tc); @@ -1999,7 +1997,6 @@ _edje_part_mouse_up_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UN Evas_Textblock_Cursor *tc; if ((!ev) || (ev->button != 1)) return; if (!rp) return; - if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) return; if (ev->flags & EVAS_BUTTON_TRIPLE_CLICK) return; if (ev->flags & EVAS_BUTTON_DOUBLE_CLICK) return; if ((rp->type != EDJE_RP_TYPE_TEXT) || @@ -2009,6 +2006,12 @@ _edje_part_mouse_up_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UN (rp->part->entry_mode < EDJE_ENTRY_EDIT_MODE_SELECTABLE)) return; + if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) + { + _edje_entry_imf_cursor_info_set(en); + return; + } + #ifdef HAVE_ECORE_IMF if (en->imf_context) { @@ -2090,9 +2093,10 @@ _edje_part_mouse_up_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UN { _edje_emit(rp->edje, "cursor,changed", rp->part->name); _edje_emit(rp->edje, "cursor,changed,manual", rp->part->name); - - _edje_entry_imf_cursor_info_set(en); } + + _edje_entry_imf_cursor_info_set(en); + evas_textblock_cursor_free(tc); _edje_entry_real_part_configure(rp);