Shifted keys are not fully recognized when using AutoHotKey on Windows
- Lenguaje dominante
- Rust
- Estrellas
- 22.5k
- Forks
- 773
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
**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
Guía de contribución
Línea de trabajo
Reproduce el problema en Windows con un script de AutoHotKey que emule una distribución de teclado completa y, a continuación, comienza por el evento de entrada registrado alrededor de src/app.rs:278. Compara los eventos de teclas de AHK y los que no son de AHK, y rastrea cómo los comandos con teclas modificadoras los consumen. Se considera terminado cuando los comandos con teclas modificadoras indicados funcionan con AHK y la reproducción ya no muestra el comportamiento del modificador ausente.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- rust
- Área
- cli, operating-systems
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 42/100