2011/7/22 Jihoon Kim <jihoon48....@samsung.com>: >> As for getting the right window in Edje, raster proposed an >> edje_object_window_set() that >> would be used for every Edje object that will receive keyboard input. > > Hello, raster. > Do you have any idea to solve this portability issue? >
I have one. I didn't check if it's possible to fetch a window from whatever engine Evas is using, but if it's not, then we are in the same situation as we are now and we need to add a function somewhere to say "This is the window we are using". Raster already suggested adding such a function to Edje and have programs or toolkits set the window id on the edje_object, but I don't like that. What we can do is ask Evas what the window is, and be it a new engine function that gets it from its own info or a new function to set the window for the canvas, in the end it could be much simpler and have Ecore_Evas already set it in one place. Resuming, I propose void * evas_window_id_get(const Evas *e); and maybe void evas_window_id_set(Evas *e, void *window_id); Names can be changed if you don't like them, maybe something like void * evas_gimme_da_window_yo(Evas *e); > -----Original Message----- > From: Iván Briano (Sachiel) [mailto:sachi...@gmail.com] > Sent: Sunday, July 10, 2011 4:08 PM > To: Jihoon Kim > Cc: Naruto TAKAHASHI; Mike McCormack; > enlightenment-devel@lists.sourceforge.net > Subject: Re: [E-devel] [Patch] Add XIM module for ecore_imf > > Hello people, > > Some bad-ass top-posting because I feel like it. > > These patches seem to be fine except for two things: > > 1.- Dead keys is broken and I'm not sure why, but let's forget about that > for now. (dead keys is what makes some us type ' + a and get á) > > 2.- It doesn't work in any way with Elementary_Entry, or Edje_Entry for > that matter. The thing is, it doesn't work because Edje_Entry is using > Ecore_IMF wrong. > > ecore_imf_context_client_window_set() expects to receive whatever specifies > the id of the window the canvas lives in. For most of us, that's an > Ecore_X_Window, > but it could also be an Ecore_Win32_Window or an Ecore_DirectFB_Window. > Within Edje it shouldn't matter which is it for portability reasons > and that's not really > the problem, except we currently have no easy way of fetching this > window in edje_entry.c > > The biggest problem I see now, however, is that all the work done by Samsung > on > this IMF thing tells me that it's working fine for you, even when Edje > is calling this > ecore_imf_context_client_window_set() function setting an Evas_Object > as the window. > This is *wrong* and once we decide what the right way for Edje to > fetch the window to > set there, everything you have that relies on the current usage will break. > > So, cooperation will be required to get this sorted out. Other than > the patches sent for > Edje and Ecore_IMF, we have nothing that tells us how Samsung is using > this and the > patches sent by Naruto Takahashi here, once Edje is fixed, would let > everyone use > Edje, Elementary and E17 with widely available input methods systems > like SCIM and > IBus. > > As for getting the right window in Edje, raster proposed an > edje_object_window_set() that > would be used for every Edje object that will receive keyboard input. > For obvious reasons, > I prefer something more automatic, but it may be the case that this is > the only sane choice. > > Regards, > Zombie Sachiel > > 2011/7/9 Naruto TAKAHASHI <tnar...@gmail.com>: >> Hi Mike. >> >> Thanks, feedback. I merged it to xim/Makefile.am. >> >> I attach a source code for using XIM module debug. >> This program can check a below behaviors. >> >> - toggle enable and disable XIM >> - commit string from XIM >> >> Another test, by using Desktop Entry Editor's text field. >> (Enlightenment Main->Settings->Settings Panel->New Application) >> >> When executing test program, set ECORE_IMF_MODULE=xim. >> >> Thanks. >> >> 2011/7/8 Mike McCormack <mj.mccorm...@samsung.com>: >>> On 07/08/2011 03:15 PM, Naruto TAKAHASHI wrote: >>>> Hi, All. >>>> >>>> I attached some patches of XIM module of ecore_imf. >>>> >>>> As far as I know, EFL has not having official ecore_imf module in E >>>> repository. And ecore_x has XIM code but is unavailable condition. >>>> So I moved XIM code of ecore_x as ecore_imf module. >>>> >>>> please review this patches. >>> >>> Hello Naruto, >>> >>> Looks like nice work. >>> >>> I applied your patches to my ecore and built, but there was a build error >>> (fix below): >>> >>> make[5]: Entering directory >>> `/home/mike/git/e/ecore/src/modules/immodules/xim' >>> CC xim_la-ecore_imf_xim.lo >>> ecore_imf_xim.c:5:18: error: Evas.h: No such file or directory >>> ecore_imf_xim.c: In function ‘_ecore_x_event_reverse_locks’: >>> ecore_imf_xim.c:359: warning: suggest braces around empty body in an ‘if’ >>> statement >>> ecore_imf_xim.c: In function ‘preedit_start_callback’: >>> ecore_imf_xim.c:662: warning: unused parameter ‘xic’ >>> ecore_imf_xim.c:664: warning: unused parameter ‘call_data’ >>> >>> How can I test it? >>> >>> thanks, >>> >>> Mike >>> >>> >>> >>> diff --git a/ecore/src/modules/immodules/xim/Makefile.am >>> b/ecore/src/modules/immodules/xim/Makefile.am >>> index 006035c..cc0682d 100644 >>> --- a/ecore/src/modules/immodules/xim/Makefile.am >>> +++ b/ecore/src/modules/immodules/xim/Makefile.am >>> @@ -12,6 +12,7 @@ AM_CPPFLAGS = \ >>> -I$(top_builddir)/src/lib/ecore_imf \ >>> -DPACKAGE_LIB_DIR=\"$(libdir)\" \ >>> -DPACKAGE_DATA_DIR=\"$(datadir)/$(PACKAGE)\" \ >>> +@EVAS_CFLAGS@ \ >>> @EINA_CFLAGS@ >>> >>> pkgdir = $(libdir)/ecore/immodules >>> >>> >>> ------------------------------------------------------------------------------ >>> All of the data generated in your IT infrastructure is seriously valuable. >>> Why? It contains a definitive record of application performance, security >>> threats, fraudulent activity, and more. Splunk takes this data and makes >>> sense of it. IT sense. And common sense. >>> http://p.sf.net/sfu/splunk-d2d-c2 >>> _______________________________________________ >>> enlightenment-devel mailing list >>> enlightenment-devel@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel >>> >> >> >> >> -- >> Naruto TAKAHASHI >> tnar...@gmail.com >> >> ------------------------------------------------------------------------------ >> All of the data generated in your IT infrastructure is seriously valuable. >> Why? It contains a definitive record of application performance, security >> threats, fraudulent activity, and more. Splunk takes this data and makes >> sense of it. IT sense. And common sense. >> http://p.sf.net/sfu/splunk-d2d-c2 >> _______________________________________________ >> enlightenment-devel mailing list >> enlightenment-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel >> >> > > > ------------------------------------------------------------------------------ > 10 Tips for Better Web Security > Learn 10 ways to better secure your business today. Topics covered include: > Web security, SSL, hacker attacks & Denial of Service (DoS), private keys, > security Microsoft Exchange, secure Instant Messaging, and much more. > http://www.accelacomm.com/jaw/sfnl/114/51426210/ > _______________________________________________ > enlightenment-devel mailing list > enlightenment-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > ------------------------------------------------------------------------------ Storage Efficiency Calculator This modeling tool is based on patent-pending intellectual property that has been used successfully in hundreds of IBM storage optimization engage- ments, worldwide. Store less, Store more with what you own, Move data to the right place. Try It Now! http://www.accelacomm.com/jaw/sfnl/114/51427378/ _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel