Dans Ubuntu 12.04, ma souris clique lorsque je relâche le bouton.
Que se passe-t-il (mauvais): Je clique avec le bouton droit de la souris (souris), le menu contextuel apparaît. Lorsque je relâche le bouton de la souris (souris), l'élément sous le curseur est cliqué.
Qu'est-ce qui devrait arriver (bon): Je fais un clic droit (mousedown), le menu contextuel apparaît, rien ne se passe lorsque je relâche le bouton. Pour cliquer sur un élément du menu contextuel, je clique dessus normalement avec le bouton droit de la souris.
J'ai rencontré ce problème dans Chrome, le navigateur de fichiers et dans le terminal gnome. La souris est un Razer DeathAdder (mais je n’utilise que les pilotes choisis automatiquement par Ubuntu), et si c’est important, j’utilise les pilotes graphiques AMD/ATI.
Voici ma solution:
Tout d’abord, vous devez compiler et installer sxhkd à partir d’ici:
https://github.com/baskerville/sxhkd
ce qui est un programme vraiment cool.
Ensuite, dans votre ~/.config/sxhkd/sxhkdrc, ajoutez cette recette:
~button3
for id in `xinput list | grep 'slave pointer' | grep -v XTEST | sed -e 's/.*id=\([0-9]\+\).*/\1/'`; do xinput set-prop $id "Device Enabled" 0; done; \
xte 'mouseup 3' 'mousermove 0 -1'; \
sleep 0.3; \
for id in `xinput list | grep 'slave pointer' | grep -v XTEST | sed -e 's/.*id=\([0-9]\+\).*/\1/'`; do xinput set-prop $id "Device Enabled" 1; done
Comment cela fonctionne, sxhkd capture l’événement de clic droit avec son écouteur xcb et le rejoue, c’est la raison d’être du tilde. Après cela, nous désactivons le pavé tactile, déplaçons le curseur de la souris d’un pixel vers le haut afin que la première entrée ne soit pas mise en surbrillance, dormons pendant 300 ms pour ignorer tout effet de glisser du doigt après le clic qui a déclenché la position et réactiver les dispositifs de pointeur.
Cela fonctionne parfaitement sur le chromebook que je suis en train de configurer.
UPDATE: J'ai modifié la recette sxhkd pour qu'elle fonctionne avec tous les périphériques d'entrée du pointeur , pas seulement les touchpads.
Si vous ne déplacez pas votre souris entre-temps, il ne devrait y avoir aucun "élément de menu sous le curseur". Le menu contextuel s'ouvre de telle sorte que son coin supérieur gauche se trouve au niveau du curseur et qu'il existe une marge au-dessous de l'élément de menu suivant.
Toutefois, si un élément de menu se trouve sous le curseur lors du relâchement du bouton de la souris, le comportement souhaité consiste à lancer cet élément de menu. C’est ainsi que vous (ou du moins beaucoup de personnes) procédez normalement: clic de souris vers le bas, déplacez le curseur sur l’élément de menu souhaité, relâchez le bouton de la souris pour activer cet élément.
S'il n'y a pas d'élément de menu sous le curseur après un bouton de la souris enfoncé, le comportement est celui décrit précédemment: le relâchement du bouton de la souris ne détruit pas le menu contextuel.
Alors, peut-être que votre souris est très sensible et qu'un événement de bouton enfoncé est accompagné d'un déplacement du curseur?
Ceci est le comportement par défaut. Vous ferez l'expérience de la même chose, même dans Nautilus, le gestionnaire par défaut. En fait, vous en ferez l'expérience partout. Si vous faites un clic droit quelque part et que vous voyez un menu contextuel, et sans relâcher votre clic droit, vous survolez une action du menu contextuel, puis vous le relâchez, l'action correspondante est lancée.
Je peux le confirmer dans tous les programmes que j'ai essayés, c'est donc le comportement par défaut sous Ubuntu (et je le trouve pratique, plutôt que d'avoir à cliquer manuellement sur une action du menu contextuel)