dj2 andrunko, i gather with your last commit you aren't going to be removing evas references from ecore_imf
andrunko dj2: yeah, that was the idea, the problem is, we want the framework to support effects like transparency, slide, ... and that is only possible if we have a pointer to evas, on input methods like hildon-input-method we can get the x_window using the evas
andrunko but if you have a better idea, we can change it for sure
andrunko check http://andrunko.blogspot.com/2007/11/iphone-like-keyboard-on-canola.html to see what i mean
andrunko I was thinking you can move the support to ewl engine
andrunko so the engine who knows evas will work
dj2 and why not leaving the pointer as a void * then a module that expects evas can cast to that
dj2 and, our input doesn't come in through evas, it's through the x11 enginge
* ravenlock has quit ("He's dead, Jim.")
dj2 which doens't know about evas
andrunko all modules expect evas, that is the problem, who is using the module knows nothing about the module internals
andrunko all modules work the same
andrunko i could let the void *, but you still would have to pass an evas pointer
dj2 and you're limiting yourself that all modules _require_ evas
andrunko with evas, you can get the ecore_evas, thus getting the x_window, win32_window, ...
andrunko so all modules requires the evas
dj2 we dont' use ecore-evas
dj2 so, no, you can't get the ecore_evas when using ewl
andrunko if you have evas you can
andrunko ecore_evas_ecore_evas_get(evas)
dj2 we don't use it
dj2 we use evas directly and ecore_x directly
andrunko that's a problem
dj2 ewl _doesn't use_ ecore_evas
dj2 it's a problem with the design of ecore_imf
dj2 especially when we split ecore
dj2 as the plan is to make evas depend on ecore
dj2 which can't happen if ecore_imf has references to evas
andrunko on ecore, not ecore_imf
andrunko evas -> ecore
andrunko ecore_imf -> evas, ecore
dj2 the ecore_imf won't stay in ecore
dj2 it will be split out
dj2 the original plan was to leave teh framework in
andrunko hmmm
dj2 and you've now limited yourself to just ecore_evas
andrunko i can't think of another idea to make it work without passing the evas pointer
dj2 so it shoudl have been named ecore_evas_imf
dj2 instead of ecore
dj2 as it isn't generic ecore
andrunko in gtk, it passes a gtkwidget, qt an qwidget, xim, a x_window
dj2 then pass a void * and let the module cast to what it needs
andrunko i would really appreciate if you came up with a better idea
andrunko but we discussed here yesterday
dj2 um, i dno't have time to design your api for you
andrunko and couldn't find a better one
dj2 this is why api design is hard
andrunko but the problem here is just with ewl
andrunko e and etk works fine
andrunko canola widgets also
dj2 the problem will be with any app that doesn't use ecore_evsa
dj2 not everything uses ecore_evas
dj2 so it isn't ecore_imf it's ecore_evas_imf
dj2 which is what it should have been named
andrunko i can change it, if that's the problem
andrunko i would really like to make it in such a way that ewl could use it
dj2 it's one problem, but in general it should be ecore_imf and not need evas
andrunko but to make keyboards like the iphone keyboard, the hildon-input method
dj2 then remove the evas requirements
andrunko we need evas
dj2 at the module level
dj2 not the api level
dj2 if i use the hildon moudle sure, pass in an evas
andrunko but the application using it knows nothing about the modu
andrunko module
dj2 if i use the foobar module maybe it takes an x window
andrunko that's the problem
andrunko all modules should work the same way
dj2 so, maybe it should
dj2 then it isn't going to work
andrunko i will take a look at the ewl code, and see what i can do
andrunko but all modules will need to pass the same data (either evas, x_window, whatever)
dj2 if it require ecore_evas it won't work
dj2 then it shoudl be ecore_x_window
dj2 but evne that isn't right
dj2 as what about on windows?
andrunko but it wouldn't work for windows
andrunko exactly
andrunko that's why i am using ecore_evas, the only thing that abstracts windows, x11, ...
dj2 and not everyone uses ecore_evas