J'arrive a la fin du developpement de mon programme et apres l'avoir mis en test, un probleme non mis en evidence vient d'apparaitre.
Il m'arrive parfois d'avoir des événements bloqués ( <> perdus). Je mexplique :
Dans mon application, je recupere uniquement les evenements souris que je transmets a mon interface.
Pour cela j utilise la fonction XNextEvent() qui bloque tant qu il n y a pas d événement, et qui rend la main dès qu'un événement surgit.
Seulement, si je clique tres rapidement sur la souris (evenement clic gauche enfoncé, clic gauche relevé) il arrive parfois que le dernier événement ne soit pas transmis, et au prochain événement, les 2 derniers sont transmis.
Ex :
j appuie sue le bouton gauche de la souris -> evenement MOUSE_DOWN
je relache le bouton gauche de la souris ->RIEN
je réappuie sur le bouton gauche de la souris -> evenement precedent MOUSE_UP ET événement MOUSE_DOWN (le dernier quoi).
Le probleme est que ce phenomene arrive TRES rarement (quasi impossible de le simuler pour debugger) mais il arrive quand meme, et c'est tres génant car ca provoque non seulement des pbs de rafraichissement (bouton resté enfoncé alors qu il est relevé) mais aussi des pbs de synchro par rapport a l action que le bouton est censée faire.
Quelqu'un a-t-il deja rencontré le pb ? je n'ai pas trouvé de fonction flush ou equivalent pour flusher les messages.
merci 