Considérons une application dans laquelle il est souhaitable de saisir le clavier lorsqu'il est focalisé afin de capturer toutes les commandes du gestionnaire de fenêtres (Alt + F4 et autres commandes) pour le traitement. Maintenant, cela a l'inconvénient que l'utilisateur n'a aucun moyen de passer à une autre application ou un bureau virtuel via le clavier lorsque le clavier est saisi. Je voudrais avoir une liste blanche définie par l'utilisateur de la combinaison de touches (par exemple, les combinaisons de touches pour le changement de bureaux virtuels) qui sont exclus de la saisie.Exclusion de certaines clés de XGrabKeyboard
Je peux penser à deux approches possibles. Lorsqu'un événement de clé en liste blanche arrive, soit
- D'une manière ou d'une autre, dites à X de continuer à le traiter comme d'habitude. Cela ressemble à une façon plus naturelle de le faire, mais je ne peux pas trouver un moyen de le faire, ou
- Décrochez le clavier et renvoyez l'événement à la main au gestionnaire de fenêtre pour le traitement, mais je ne sais pas où l'envoyer (la fenêtre racine?) ou si cela fonctionnerait même.
Est-ce que quelqu'un peut remplir les espaces vides sur ceux-ci? D'autres suggestions?
S'il n'y a aucun moyen d'exclure les clés d'un grappin, je suppose que je vais devoir me contenter d'avoir une "touche d'échappement" qui déverrouille le clavier quand on appuie dessus. L'utilisateur devra appuyer à la fois sur cette commande et sur la commande du gestionnaire de fenêtres, ce qui n'est pas aussi agréable.
J'avais peur d'avoir une réponse comme celle-ci. Je suis sûr que j'aurais vu un logiciel qui le fait si c'est possible.Cependant, merci de me pointer vers XInput 2, je le regarde en ce moment et il semble avoir de nouvelles façons de saisir les périphériques d'entrée. Aller faire des tests pour voir si cela rend cela possible –
Il s'est avéré que quelque chose comme ceci est "possiblement prévu pour XI2.1", ce qui ne semble même pas encore exister selon Google. Les nouvelles astuces de WM ne semblent pas être une mauvaise idée, j'ai donc commencé à discuter de la liste de wm-spec de freedesktop.org. http://mail.gnome.org/archives/wm-spec-list/2010-September/thread.html –