2010-09-17 32 views
0

Comment faire une application X11 pour écouter le signal DBus. Que pour écouter le signal Dbus gmainloop devrait être lancé, et pour X11 XEvent application boucle. Y a-t-il une manière élégante de faire ceci? Ou dois-je exécuter gmainloop dans un autre thread.Comment attacher l'application X11 au Dbus

Cordialement, Levon

Répondre

0

ne devriez-vous être en mesure d'obtenir un descripteur de fichier pour la boucle d'événement X? Ensuite, vous devriez être capable de l'ajouter au gobject mainloop.

D'après ce que je peux voir, ConnectionNumber(xdpy) donnera le fichier descripteur , que vous pouvez ensuite ajouter à une source, que vous pouvez utiliser avec g_source_add_poll().

+1

fait avec XEvent ressemble à ceci dans ma demande. While (True) { XEvent xev; si (get_xevent_timed (UI-> xdpy, & xev, et TVT)) { interrupteur (xev.type) { ...} } pouvez-vous donc s'il vous plaît fournir plus d'informations ... sur la façon de le faire? – deimus