From: Jihoon Kim <imfine98@gmail.com>
authorraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Wed, 18 Jan 2012 04:38:04 +0000 (04:38 +0000)
committerraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Wed, 18 Jan 2012 04:38:04 +0000 (04:38 +0000)
commit317ebe6292d1eea95bc370ca21a8106fc1f9beaa
tree88589a3e9f126910508d7f6920243c1d499dc291
parent26672bcd951cfbe5ee1245c5290ac9ae953c81c7
From: Jihoon Kim <imfine98@gmail.com>

Long time ago, in
http://www.mail-archive.com/enlightenment-devel@lists.sourceforge.net/msg32795.html
mail thread and IRC,

I talked with about problem of asynchronous event API such as
ecore_imf_context_commit_event_add,
ecore_imf_context_preedit_changed_event_add, so on.

In short, The problem is that key event and text_set APIs are processed
immediately, but commit event and preedit changed event is processed
asynchronously  because those APIs add each event to ecore event queue.

To fix these problems, I've decided to create synchronous event APIs such
as ecore_imf_context_event_callback_add, del and call.

For considering compatibility, sync and async event callback functions are
used in xim and scim immodule.

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/ecore@67290 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33
src/lib/ecore_imf/Ecore_IMF.h
src/lib/ecore_imf/ecore_imf_context.c
src/lib/ecore_imf/ecore_imf_private.h
src/modules/immodules/scim/scim_imcontext.cpp
src/modules/immodules/xim/ecore_imf_xim.c