2010-08-20 6 views
0

J'écris un simple gestionnaire de fenêtres en utilisant xlib. Le code reparents fenêtres du client dans une fenêtre légèrement plus grande que la fenêtre du client appelée fenêtre frame. J'essaye de mettre en application un clic pour se concentrer la politique. J'obtiens des événements de bouton pression quand le bouton de la souris est pressé dans la fenêtre de cadre et suis capable de soulever la fenêtre de cadre sur buttonpress. Cependant, je ne reçois aucun événement lorsque le bouton de la souris est enfoncé dans la fenêtre du client. L'idée est de piéger cet événement et d'augmenter la fenêtre frame même lorsque le bouton de la souris est pressé dans la fenêtre du client.Xlib obtenir des événements d'une fenêtre enfant

Répondre

0

Vous devez XGrabButton() sur la fenêtre enfant. Votre prochain problème sera que lorsque le bouton est pressé, la fenêtre enfant perd le focus; vous voulez probablement garder votre propre idée de la "fenêtre de mise au point" et ne pas la changer sur detail = Evénements NotifyGrab. Voir le code source de metacity par exemple.

Questions connexes