2015-11-21 1 views
0

Comment puis-je suivre un événement de déplacement pour toutes les fenêtres? Comme si l'utilisateur bougeait la fenêtre "Pluma", mon démon recevrait le nom de la fenêtre et les nouvelles coordonnées.Comment regarder les mouvements de fenêtre avec xlib?

if(XCheckMaskEvent(display, -1, &event)) 
    { 
     if(event.type == ConfigureNotify) 
     { 
      moved += event.xmotion.x + event.xmotion.y; 
      //qDebug << moved; 
     } 
    } 

J'ai essayé de suivre comme ça, mais ça ne fonctionne pas ...

Répondre

1

Vous devez sélectionner t SubstructureNotify masque sur la fenêtre racine première:

XSelectInput(display, XDefaultRootWindow(display), SubstructureNotifyMask); 

De cette façon, vous dites Serveur X "Je suis intéressé par les enfants de la fenêtre racine déplacer/redimensionner/supprimer/créer des événements"