web-dev-qa-db-fra.com

Google Chrome ignore le mappage des clés XmodMap

La flèche vers le bas de mon ordinateur portable est bloquée. J'ai donc utilisé Xmodmap pour supprimer le mappage de cette clé à l'aide de la commande suivante:

xmodmap .Xmodmap

Le contenu de mon fichier .Xmodmap n’est qu’une ligne:

code de touche 116 =

Tous les programmes sous Ubuntu (tels que gnome-terminal, xterm, Firefox, gedit) respectent ce mappage.

Cependant, Google Chrome ignore ce mappage, ce qui entraîne un défilement continu de la page ou une diminution du volume lors de la lecture d'une vidéo en plein écran.

Regardé:

Les deux qui n'avaient pas de solution disponible.

La solution de https://github.com/dnschneid/crouton/wiki/Keyboard pour désactiver la gestion de la disposition du clavier avec:

gsettings set org.gnome.settings-daemon.plugins.keyboard active false

cela ne me convient pas, car je dois saisir des caractères japonais et j'ai donc besoin que l'IME soit disponible pour permuter entre l'anglais et le japonais.

4
crimsonspectre

Dans numéro 394552 , l'un des utilisateurs note que si vous définissez le clavier en tant que clé comprise par Chromium (telle qu'une lettre), il respecte ce dernier.

Par conséquent, partant de la recommandation ici , je mets la flèche vers le bas pour mapper sur la touche F18 (qui, pour autant que je puisse voir, ne serait jamais enfoncée: P). Donc, le contenu de mon fichier .Xmodmap est maintenant:

code de touche 116 = F18 F18 F18

J'ai testé avec cette nouvelle keymap et Chrome semble maintenant se comporter comme les autres programmes.

1
crimsonspectre

Cette réponse l'a résolu pour moi:

setxkbmap -option lv3:rwin_switch

Et puis exécutez à nouveau xmodmap et redémarrez l'application.

0
kontrollanten

Voici comment j'ai résolu le même problème, et je le mets ici pour quiconque ayant ce problème.

J'ai eu la réponse de ici .

A partir de la ligne de commande:

    Sudo su

Maintenant, vous devez déterminer le scancode de la clé bloquée.

    showkey -s

Appuyez ensuite sur la touche et vous obtiendrez deux scancodes: appuyez et relâchez. Ecrivez-les. Ou, puisque votre clé est bloquée, recherchez le code qui se répète. Pour moi, la touche down est disponible en deux paires de scancode: 0xe0 0x50 (appuyer) et 0xe0 0xd0 (relâcher). Vous devez abréger la paire de scancode et utiliser setkeycodes pour la remapper sur un nouveau code de touche:

    setkeycodes e050 255
    setkeycodes e0d0 255

Cela désactivera votre flèche vers le bas au niveau du noyau, ce qui devrait éviter des problèmes dans Chrome. Apparemment, Chrome gère les entrées au clavier de manière quelque peu indépendante de xmodmap et de xkb. Il s'agissait d'un changement délibéré pour tenir compte de la manière dont Chrome gère les entrées dans ChromeOS. Heureusement, la désactivation d'une clé bloquée au niveau du noyau arrête le problème bien avant qu'il n'atteigne Chrome. Cela a fonctionné pour moi pour empêcher une clé bloquée de pavé numérique 9 de causer des ravages.

0
jamesb