PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Xlib: XSendEvent(...)


ethrandil
2005-01-28, 03:33:04
Hiho,
ich versuche grade ein bisschen was umzuprogrammieren, aber ich muss dafür Events senden... nun habe ich das schon eine (sehr lange!) Weile versucht, aber es geht nicht.

Mein letzter versuch war dann einfach ein aktuelles Event zu reproduzieren, aber selbst das ging nicht. Wieso?!?
Wenn ihr das nicht wissen würd ich mich auch über ne gute Mailinglistenempfehlung freuen ;-)


XEvent ev;
int status;

for(;;)
{
waitpid(-1, &status, WNOHANG);
XNextEvent(display, &ev);
event = ev;
cerr << "Event occured: " << ev.type;
if(ev.type == ButtonPress){
ev.xbutton.time += 2000;
if(XSendEvent(ev.xbutton.display, ev.xbutton.root, true, ButtonPress, &ev ))
cerr << "great!"<<ev.xbutton.time<<"\n";
else
cerr << "fuck!\n";
XFlush(display);
}
parseEvent();
}


(alle Events werden angezeigt, aber Mausklicks werden nicht verdoppelt. Es erscheint trotzdem "greeat!" als bestätigung für XSendEvent().)

- Eth