On Fri, 4 Nov 2011 20:11:12 +0530 HariHara Sudhan <h...@emo2.com> said:

timestamp doesn't matter. it calls the callbacks on the objects the events are
going to go to. if the mouse is grabbed (first press grabs mouse to the objects
pressed) then callbacks are reported relative to grabbed objects until last
finger is released. if (obj->callbacks) checks to see if object has any cb's at
all. if it doesn't - don't other doing anything. the target object(s) don't have
callbacks set at all. if inside your callbacks you are deleting objects or
changing their callbacks.. you may get this. if objects are hidden, clipped out
or otherwise not visible - they wont be called either. evas is checking for
geometry and visibility here for the events.

> As you Said ecore process all the events, and passes on to evas.
> In evas at two points events are filtered.
> 
> 1. evas_event_feed_multi_move()
> 2.evas_object_event_callback_call()
> 
> in evas_object_event_calback_call the if(obj->callbacks) fail for
> events two consecutive events at same time.
> only one of them returns value the other one returns NULL.
> 
> in evas_event_feed_multi_move(), the if condition to check for
> checking objects in position,visibility and etc fails for several
> events.
> 
> i'm not able to find why the condition fails in both these points.
> Is the reason due to pouring events for the same timestamp?
> any possible solutions?
> 
> 
> thanks in advance
> 
> Regards
> HariHaraSudhan
> 
> On Fri, Nov 4, 2011 at 4:58 AM, Carsten Haitzler <ras...@rasterman.com> wrote:
> > On Thu, 3 Nov 2011 19:36:11 +0530 HariHara Sudhan <h...@emo2.com> said:
> >
> >> Mouse gives events on a minimum of 8ms gap, but i get 2-3 touch events
> >> within a ms.
> >> So that is a lot of events.
> >> But some events generated on ecore side, which are pushed into event
> >> queue using _ecore_mouse_move are not reflected as evas_callbacks.
> >> Some times it generates 3-4 events on ecore side but i get only one
> >> callback on evas side.
> >> here is the sample
> >>
> >>
> >> evas id=2 x=578 y=66
> >> eCore id=2 x=577 y=66
> >>
> >> evas id=2 x=577 y=66
> >> eCore id=2 x=577 y=65
> >> eCore id=2 x=578 y=65
> >>
> >> evas id=2 x=577 y=65
> >>
> >> evas id=2 x=578 y=65
> >> eCore id=1 x=153 y=50
> >> eCore id=1 x=153 y=51
> >>
> >> evas id=1 x=153 y=51
> >> eCore id=2 x=578 y=64
> >> eCore id=1 x=153 y=52
> >> eCore id=2 x=578 y=65
> >> eCore id=1 x=153 y=53
> >> eCore id=2 x=579 y=65
> >> eCore id=1 x=153 y=54
> >> eCore id=2 x=579 y=66
> >> eCore id=2 x=579 y=67
> >>
> >> evas id=2 x=579 y=67
> >> eCore id=1 x=153 y=55
> >> eCore id=2 x=580 y=67
> >> eCore id=1 x=153 y=56
> >> eCore id=1 x=153 y=57
> >> eCore id=1 x=152 y=57
> >> eCore id=2 x=580 y=68
> >> eCore id=2 x=581 y=68
> >>
> >>
> >> this is where my problem is,a lot of ecore events are generated but on
> >> eas side i get only few.
> >>
> >> I couldn't find why some events are not reflected in evas_callbacks.
> >>
> >> is there a way to process the touch events as a seperate thread in
> >> ecore_event_procesing? or any other solution for this problem?
> >
> > threads have nothing to do with this other than complicating things. they
> > don't solve anything, and won't. (unless u are spending large amounts of
> > cpu just handling the input event stream and making ecore events out of
> > it).  so you get ecore events - fine, but evas isnt calling back for all
> > events... that shouldn't happen (unless position hasn't changed etc.)
> >
> >> Regards
> >> HariHaraSudhan
> >>
> >> On Thu, Nov 3, 2011 at 6:34 PM, HariHara Sudhan <h...@emo2.com> wrote:
> >> > Sent from my Windows Phone
> >> > From: Carsten Haitzler
> >> > Sent: 11/3/2011 4:20 PM
> >> > To: Enlightenment developer list
> >> > Cc: HariHara Sudhan
> >> > Subject: Re: [E-devel] Ecore_processing mtdev events
> >> > On Wed, 2 Nov 2011 19:38:09 +0530 HariHara Sudhan <h...@emo2.com> said:
> >> >
> >> >> Hi all,
> >> >> I've lately added mtdev to receive touch events and process them as
> >> >> ecore mouse events( as mpx).
> >> >> i get the window id by the original mouse movements and use that id
> >> >> for passing touch events for that window.
> >> >>
> >> >> i get the slot id from mtdev. Passing the slot id(starting from 1)
> >> >> makes ecore think it as mpx style events and the callbacks for single
> >> >> finger touch are also working fine. But when using two or more fingers
> >> >> lots of events are generated. When getting data from callback of
> >> >> EVAS_CALLBACK_MULTI_MOVE, lot of touch move events aren't properly
> >> >> received for both the touch points.
> >> >>
> >> >> I'm not sure why some events are discarded when using two or more
> >> >> fingers,but i think it might be discarded due to ecore queue overflow.
> >> >>
> >> >> now i'm thinking of having a separate queue in ecore just to process
> >> >> the touch events and thread them so that both touch and other events
> >> >> gets processed in time.
> >> >> Does anyone know what the reason for discarding of events might be??
> >> >> if possible can anyone get me a solution for this problem too.
> >> >>
> >> >> Thanks in advance!
> >> >
> >> > hmm - the intent is u get an event whenever either one of the points
> >> > touched reports a movement - thats the intention. yes- you may get a lot
> >> > of events. that depends on the hardware and xorg itself. as such ecore
> >> > doesnt discard events as it has no fixed size buffer - it won't
> >> > overflow. it will pass on all events. it only avoids generating events
> >> > for the same touch point.
> >> >
> >> >
> >> > --
> >> > ------------- Codito, ergo sum - "I code, therefore I am" --------------
> >> > The Rasterman (Carsten Haitzler)    ras...@rasterman.com
> >> >
> >>
> >>
> >>
> >> --
> >> Regards
> >> HariHaraSudhan
> >>
> >
> >
> > --
> > ------------- Codito, ergo sum - "I code, therefore I am" --------------
> > The Rasterman (Carsten Haitzler)    ras...@rasterman.com
> >
> >
> 
> 
> 
> -- 
> Regards
> HariHaraSudhan
> 


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    ras...@rasterman.com


------------------------------------------------------------------------------
RSA(R) Conference 2012
Save $700 by Nov 18
Register now
http://p.sf.net/sfu/rsa-sfdev2dev1
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to