From: Tobias <ko...@gm...> - 2008-01-05 20:02:57
Attachments:
ecore_fb.diff
|
Hi all, I've played around with Ecore_Fb on my zaurus and I've run into some problems with events getting through to evas. First, there were some comments about libts support in ecore a couple of weeks ago, this libts implementation (ecore_fb_ts_c) seems to be very ipaq specific, and is not used anywhere and deprecated. I've altered it and attach patches here to enable it again and only support the libts mouse events and remove all the ipaq backlightning,led,brightnes...etc stuff, I've also removed the calibration. Now ecore_event_handler_add(ECORE_FB_EVENT_MOUSE_*...) events works, but I can't get any evas_object_event_callbacks to work (subsequently edje files don't receive any mouse events either). I've tried evas_event_feed_mouse in an app but I can't get any more events than mouse_in and mouse_out fed to the evas_object. I'm not sure I grok evas_event_feed*. Any hints to solve this would be very appreciated, I've looked at ecore_evas_fb.c but can't find anything wrong with it. /Cheers Tobias |
From: Jorge L. Z. M. <jor...@gm...> - 2008-01-17 22:57:08
|
On Jan 5, 2008 9:02 PM, Tobias <ko...@gm...> wrote: > Hi all, > > I've played around with Ecore_Fb on my zaurus and I've run into some > problems with events getting through to evas. > > First, there were some comments about libts support in ecore a couple of > weeks ago, this libts implementation (ecore_fb_ts_c) seems to be very > ipaq specific, and is not used anywhere and deprecated. Hi Tobias, As you said the tslib code is not building because the linux_input subsystem can handle more input devices, but touchscreen devices aren't full supported, to be able to receive ecore_fb events on evas - edje you need to also modify ecore_evas. > > I've altered it and attach patches here to enable it again and only > support the libts mouse events and remove all the ipaq > backlightning,led,brightnes...etc stuff, I've also removed the > calibration. > > Now ecore_event_handler_add(ECORE_FB_EVENT_MOUSE_*...) events works, but > I can't get any evas_object_event_callbacks to work (subsequently edje > files don't receive any mouse events either). But where do you enable the tslib specific functions? when ecore_fb_init is called you should also initialize the tslib subsystem. > > I've tried evas_event_feed_mouse in an app but I can't get any more > events than mouse_in and mouse_out fed to the evas_object. I'm not sure > I grok evas_event_feed*. If you can receive ECORE_FB events on ecore_evas then there should not be any problems, as the ecore_evas just wraps those events and feeds them to evas, so you should see them. If you look on the ecore_evas_fb_init code, the input devices (/dev/input/*) are sent to the linux_input subsystem on ecore_fb and then the ecore_fb events are received, you should do the same. > > Any hints to solve this would be very appreciated, I've looked at > ecore_evas_fb.c but can't find anything wrong with it. > > > /Cheers > Tobias > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2005. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > enlightenment-devel mailing list > enl...@li... > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > > |
From: Michael 'M. L. <ml...@va...> - 2008-01-17 23:42:25
|
Tobias, can you summarize what exactly your problem is? I have been working with evas framebuffer apps some years ago without problems -- perhaps I can help or try to reproduce what you're doing. :M: -- Dr. Michael 'Mickey' Lauer | IT-Freelancer | http://www.vanille-media.de |
From: Carsten H. (T. R. <ra...@ra...> - 2008-01-19 02:06:37
|
On Sat, 05 Jan 2008 21:02:52 +0100 Tobias <ko...@gm...> babbled: > Hi all, > > I've played around with Ecore_Fb on my zaurus and I've run into some > problems with events getting through to evas. > > First, there were some comments about libts support in ecore a couple of > weeks ago, this libts implementation (ecore_fb_ts_c) seems to be very > ipaq specific, and is not used anywhere and deprecated. that's the code compiled if u don't have tslib support. #ifdef HAVE_TSLIB builds the tslib specific code, and otherwise its the old code i wrote originally for my ipaq 3660 touchscreen etc. frankly at the time i didn't abstract it much at all - i was just happy to make it work :) > I've altered it and attach patches here to enable it again and only > support the libts mouse events and remove all the ipaq > backlightning,led,brightnes...etc stuff, I've also removed the > calibration. seems mostly the patches just remove the old ipaq code (most of whihc is dormant) and only leave the tslib specific code - thats really just a "old feature cleanup" - not sure how it makes things work as opposed to not work (if u built with tslib support). removing the led blink etc. calls are probably good - it's an ipaq specific thing. but what was wrong? if u had tslib - then it should be using it, not ipaq specific touchscreen stuff? > Now ecore_event_handler_add(ECORE_FB_EVENT_MOUSE_*...) events works, but > I can't get any evas_object_event_callbacks to work (subsequently edje > files don't receive any mouse events either). > > I've tried evas_event_feed_mouse in an app but I can't get any more > events than mouse_in and mouse_out fed to the evas_object. I'm not sure > I grok evas_event_feed*. these feed in raw events - ecore_evas_fb should have all that hooked up for you - *IF* it is getting events from ecore_fb at all. i'd printf in ecore_fb when it adds events and see if events are being produced at all. > Any hints to solve this would be very appreciated, I've looked at > ecore_evas_fb.c but can't find anything wrong with it. > > > /Cheers > Tobias > -- ------------- Codito, ergo sum - "I code, therefore I am" -------------- The Rasterman (Carsten Haitzler) ra...@ra... |
From: Tobias <ko...@gm...> - 2008-01-20 02:43:27
Attachments:
ecore_fb_3.diff
|
On Sat, 2008-01-19 at 11:41 +1100, Carsten Haitzler wrote: > On Sat, 05 Jan 2008 21:02:52 +0100 Tobias <ko...@gm...> babbled: > > > Hi all, > > > > I've played around with Ecore_Fb on my zaurus and I've run into some > > problems with events getting through to evas. > > > > First, there were some comments about libts support in ecore a couple of > > weeks ago, this libts implementation (ecore_fb_ts_c) seems to be very > > ipaq specific, and is not used anywhere and deprecated. > > that's the code compiled if u don't have tslib support. #ifdef HAVE_TSLIB > builds the tslib specific code, and otherwise its the old code i wrote > originally for my ipaq 3660 touchscreen etc. frankly at the time i didn't > abstract it much at all - i was just happy to make it work :) If I'm not mistaken, it does not build the ipaq nor the tslib code, ecore_fb_ts.c is not included in the build at all. > > I've altered it and attach patches here to enable it again and only > > support the libts mouse events and remove all the ipaq > > backlightning,led,brightnes...etc stuff, I've also removed the > > calibration. > > seems mostly the patches just remove the old ipaq code (most of whihc is > dormant) and only leave the tslib specific code - thats really just a "old > feature cleanup" - not sure how it makes things work as opposed to not work (if > u built with tslib support). removing the led blink etc. calls are probably > good - it's an ipaq specific thing. but what was wrong? if u had tslib - then > it should be using it, not ipaq specific touchscreen stuff? What was wrong was that it was never built at all; currently ecore_fb_ts.c is outcommented in Makefile.am. I wanted to enable it, and I found lots of ipaq specific calls. So I reasoned like this: It is outcommented in Makefile.am, so noone is using it. Tslib is linked in if found, but no code is using it. There are ecore_fb_ functions that only works on ipaq and noone is using them. Why not enable it again and remove the ipaq calls? What the patch does is make ecore_fb_ts_init.c compile again and removes ipaq specific calls. Maybe you want the ipaq code to be outcommented instead? > > Now ecore_event_handler_add(ECORE_FB_EVENT_MOUSE_*...) events works, but > > I can't get any evas_object_event_callbacks to work (subsequently edje > > files don't receive any mouse events either). > > > > I've tried evas_event_feed_mouse in an app but I can't get any more > > events than mouse_in and mouse_out fed to the evas_object. I'm not sure > > I grok evas_event_feed*. > > these feed in raw events - ecore_evas_fb should have all that hooked up for you > - *IF* it is getting events from ecore_fb at all. i'd printf in ecore_fb when > it adds events and see if events are being produced at all. > I init the touchscreen at the end of _ecore_evas_fb_init if no mouse is found, if successful event handlers are setup for mouse up/down/move. It works here. New patch attached. /Cheers Tobias |
From: Michael 'M. L. <ml...@va...> - 2008-01-20 14:20:40
|
Looks good to me except: #ifdef HAVE_TSLIB - if ( _ecore_fb_ts_apply_cal ) - num = ts_read_raw( _ecore_fb_tslib_tsdev, &_ecore_fb_tslib_event, 1 ); - else - num = ts_read( _ecore_fb_tslib_tsdev, &_ecore_fb_tslib_event, 1 ); + num = ts_read( _ecore_fb_tslib_tsdev, &_ecore_fb_tslib_event, 1 ); If you apply this change, you can no longer write calibration utilities with ecore_fb. Regards, :M: -- Dr. Michael 'Mickey' Lauer | IT-Freelancer | http://www.vanille-media.de |
From: Carsten H. (T. R. <ra...@ra...> - 2008-01-24 02:25:49
|
On Sun, 20 Jan 2008 03:43:03 +0100 Tobias <ko...@gm...> babbled: okies! :) included - but i put back the calibration stuff as u need that as mickey said - to write calibration utils. > On Sat, 2008-01-19 at 11:41 +1100, Carsten Haitzler wrote: > > On Sat, 05 Jan 2008 21:02:52 +0100 Tobias <ko...@gm...> babbled: > > > > > Hi all, > > > > > > I've played around with Ecore_Fb on my zaurus and I've run into some > > > problems with events getting through to evas. > > > > > > First, there were some comments about libts support in ecore a couple of > > > weeks ago, this libts implementation (ecore_fb_ts_c) seems to be very > > > ipaq specific, and is not used anywhere and deprecated. > > > > that's the code compiled if u don't have tslib support. #ifdef HAVE_TSLIB > > builds the tslib specific code, and otherwise its the old code i wrote > > originally for my ipaq 3660 touchscreen etc. frankly at the time i didn't > > abstract it much at all - i was just happy to make it work :) > > If I'm not mistaken, it does not build the ipaq nor the tslib code, > ecore_fb_ts.c is not included in the build at all. > > > > I've altered it and attach patches here to enable it again and only > > > support the libts mouse events and remove all the ipaq > > > backlightning,led,brightnes...etc stuff, I've also removed the > > > calibration. > > > > seems mostly the patches just remove the old ipaq code (most of whihc is > > dormant) and only leave the tslib specific code - thats really just a "old > > feature cleanup" - not sure how it makes things work as opposed to not work > > (if u built with tslib support). removing the led blink etc. calls are > > probably good - it's an ipaq specific thing. but what was wrong? if u had > > tslib - then it should be using it, not ipaq specific touchscreen stuff? > > What was wrong was that it was never built at all; currently > ecore_fb_ts.c is outcommented in Makefile.am. I wanted to enable it, and > I found lots of ipaq specific calls. So I reasoned like this: > It is outcommented in Makefile.am, so noone is using it. Tslib is linked > in if found, but no code is using it. There are ecore_fb_ functions that > only works on ipaq and noone is using them. Why not enable it again and > remove the ipaq calls? > > What the patch does is make ecore_fb_ts_init.c compile again and removes > ipaq specific calls. Maybe you want the ipaq code to be outcommented > instead? > > > > Now ecore_event_handler_add(ECORE_FB_EVENT_MOUSE_*...) events works, but > > > I can't get any evas_object_event_callbacks to work (subsequently edje > > > files don't receive any mouse events either). > > > > > > I've tried evas_event_feed_mouse in an app but I can't get any more > > > events than mouse_in and mouse_out fed to the evas_object. I'm not sure > > > I grok evas_event_feed*. > > > > these feed in raw events - ecore_evas_fb should have all that hooked up for > > you > > - *IF* it is getting events from ecore_fb at all. i'd printf in ecore_fb > > when it adds events and see if events are being produced at all. > > > > I init the touchscreen at the end of _ecore_evas_fb_init if no mouse is > found, if successful event handlers are setup for mouse up/down/move. It > works here. New patch attached. > > /Cheers > Tobias > -- ------------- Codito, ergo sum - "I code, therefore I am" -------------- The Rasterman (Carsten Haitzler) ra...@ra... |