J'ai une application qui semble avoir saisi la souris (je peux la déplacer mais je ne peux cliquer nulle part), existe-t-il un moyen de trouver quelle application possède la capture de souris X.org?
Le raccourci donné ici pour libérer la souris ne semblait pas fonctionner, donc je suis intéressé par quelque chose qui pourrait me donner plus d'informations.
Réponses:
Vous pouvez le faire en appuyant sur la XF86LogGrabInfotouche, introduite dans ce commit .
Par défaut, ce symbole de clé n'est lié à aucune clé physique ou combinaison de touches. Mais vous pouvez toujours l'activer en utilisant
xdotool
:Après avoir exécuté cette commande, une liste des captures actives sera enregistrée dans le journal X. Sur Ubuntu au moins, c'est le cas
/var/log/Xorg.0.log
. Ce sera quelque part vers la fin du fichier journal, mais il peut y avoir plusieurs messages de journal non pertinents en dessous. S'il n'y a pas de prises, il écrit:S'il y a des captures (ici, j'ai ouvert un menu dans Firefox), il enregistre quelque chose comme:
la source
Je viens d'avoir un problème similaire et je l'ai réduit à un bug qui fait en quelque sorte penser à X11 que le bouton du milieu est enfoncé et non relâché. Déconnecter physiquement la souris n'aide pas jusqu'à ce qu'il y ait un événement de souris.
Le problème peut être reproduit à l'aide de
xdotool mousedown 2
- il est impossible de basculer le focus entre les fenêtres,xdotool key XF86LogGrabInfo
montre la fenêtre de processus focalisée actuelle, mais quand on la tue, une autre fenêtre reçoit le focus et le même scénario continue.Solution: problème
xdotool mouseup 2
.Mise à jour: le bouton central enfoncé et non relâché est tout simplement le moins visible, car la plupart des applications n'y répondent pas, et certaines souris n'ont pas ce bouton pour essayer de cliquer pour voir si le problème disparaît.
la source
Les entrées dans le journal Xorg peuvent être assez indéchiffrables. J'ai écrit un programme qui les analyse et les présente sous une forme humaine:
https://gist.github.com/CyberShadow/6412d11aea64144f8905cc0b8196f38e
Pour l'utiliser, lancez d'abord
xdotool key XF86LogGrabInfo
, comme décrit dans la réponse de Mechanical Snail. Ensuite, exécutez le programme lié ci-dessus. Si votre fichier journal Xorg ne se trouve pas à/var/log/Xorg.0.log
, vous pouvez spécifier son emplacement à l'aide de l'--xorg-log
option. Voir--help
pour plus de détails.la source