From: raster Date: Fri, 27 May 2011 10:46:51 +0000 (+0000) Subject: From: Jihoon Kim X-Git-Tag: submit/trunk/20120815.180907~631 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=28c512c9a827d265a9d44366248a77b3eab1d6bb;p=profile%2Fivi%2Fedje.git From: Jihoon Kim When elm_entry_entry_set() is called, the preedit text in the entry should be cleared. ATM, it doesn’t works so. This patch will resolve this problem. When ecore_imf_context_reset() is called, the preedit text in the immodule will be committed by calling ‘ecore_imf_context_commit_event_add()’. ecore_imf_context_commit_event_add puts the event in ecore event queue, so it will be processed in the idle state of ecore loop. According to this mechanism, commit text is inserted later, so I use ‘ecore_main_loop_iterate();’ for inserting the commit string instantly. git-svn-id: http://svn.enlightenment.org/svn/e/trunk/edje@59732 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33 --- diff --git a/src/lib/edje_entry.c b/src/lib/edje_entry.c index 39d3b64..0182da7 100644 --- a/src/lib/edje_entry.c +++ b/src/lib/edje_entry.c @@ -2035,6 +2035,13 @@ _edje_entry_text_markup_set(Edje_Real_Part *rp, const char *text) Entry *en = rp->entry_data; if (!en) return; +#ifdef HAVE_ECORE_IMF + if ((en->have_preedit) && (en->imf_context)) + { + ecore_imf_context_reset(en->imf_context); + ecore_main_loop_iterate(); + } +#endif // set text as markup _sel_clear(en->cursor, rp->object, en); evas_object_textblock_text_markup_set(rp->object, text);