gitui-org / gitui-org/gitui

Shifted keys are not fully recognized when using AutoHotKey on Windows

Ouverte
#2,128 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
bug
Langage dominant
Rust
Étoiles
22.5k
Forks
773
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

**Describe the bug**
The `SHIFT` modifier is missing when an AHK script is running. Thus, shifted-keys commands do not work.

In the following logs, the first one was taken with AHK enabled (notice the uppercased char `H` and the blank modifier `0x0`), the second one without:
```log
14:20:30 [TRACE] (1) gitui::app: [src\app.rs:278] event: Input(Key(KeyEvent { code: Char('H'), modifiers: KeyModifiers(0x0), kind: Press, state: KeyEventState(0x0) }))
14:24:27 [TRACE] (1) gitui::app: [src\app.rs:278] event: Input(Key(KeyEvent { code: Char('H'), modifiers: KeyModifiers(SHIFT), kind: Press, state: KeyEventState(0x0) }))
```

**To Reproduce**
1. Launch an AHK script that emulates a full keyboard layout
2. Try to use any shifted-key command in GitUI
3. Observe that it does not work

**Expected behavior**
The `SHIFT` modifier is present when using AHK and the shifted-keys commands work. Or, GitUI could rely on the character case only, although I guess the modifier is picked up for a reason.

**Context**
- Windows 10
- GitUI 0.25.1
- AutoHotKey 1.1.37.01

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Reproduisez le problème sous Windows avec un script AutoHotKey qui émule une disposition de clavier complète, puis commencez par l’événement d’entrée journalisé autour de src/app.rs:278. Comparez les événements de touches AHK et non-AHK et suivez la façon dont les commandes utilisant la touche Maj les consomment. C’est terminé lorsque les commandes utilisant la touche Maj signalées fonctionnent avec AHK et que la reproduction n’affiche plus le comportement du modificateur manquant.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
rust
Domaine
cli, operating-systems
Type d'issue
Bug
Difficulté
3/5
Temps estimé
1-2 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
42/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.