Hi! I'm running directFB 1.4.13 on an embedded linux board that is attached to a touchpad. I'm having trouble getting mouse click events to work properly. This is the code I'm using now (buffer = IDirectFBEventBuffer * and evt = DFBWindowEvent);
while(1) { buffer->Reset(buffer); buffer->WaitForEvent(buffer); if (buffer->GetEvent( buffer, DFB_EVENT(&evt) ) == DFB_OK) { quit = checkEvent(evt); } } I have 13 different windows with windowID's connected with them (and buffer attached) In the checkEvent function I'm just checking if I get a left click (someone pressed the screen) and then I check what window_id that got the event -> /* check for left mouse button down event already done */ for (i = 0; i < 11; i++) { if (evt.window_id == wID[i]){ printf("Buttondown on %d\n", i); buttonDownNumpad(numpadWindows[i]); if(i < 9) updateDisplayNumpad(i + 1); else if (i == 9)//0 pressed updateDisplayNumpad(0); else//backspace pressed updateDisplayNumpad(-1); return 0; } } The problem I have is that the event triggers but for the previous position (if we have two windows A and B, if I click window A nothing happens and if I proceed to click window B the event triggers but for window A (or to be more precise, the first event that happens will always have the first windowID (which in this case is the background, that I use to catch button up events), and then the rest of the events lags like this The thing is that it worked without a hitch when I ran directFB 1.3.x (we have upgraded the board to EABI and decided to try out the 1.4 branch of directfb). So I'm wondering what can be wrong? is there some difference between how events are handle between 1.3 and 1.4? (I've looked around without finding anything to suggest that) Or is it something else that is doing crazy things with my board? The board in question is a TS-7395 from embeddedarm.com running embedded debian
_______________________________________________ directfb-users mailing list directfb-users@directfb.org http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-users