Skip to content

[KBM] Remapping modifier key (Alt/Ctrl/Shift) to non-modifier key causes target key to be delivered as WM_SYSKEYDOWN #47191

@oMatheusmol

Description

@oMatheusmol

Microsoft PowerToys version

0.83.0

Installation method

GitHub

Area(s) with issue?

Keyboard Manager

Steps to reproduce

  1. Open PowerToys Settings → Keyboard Manager → Remap a key
  2. Set source: Left Alt | target: Backspace
  3. Open any text editor and type some text
  4. Press Left Alt (remapped to Backspace)

✔️ Expected Behavior

One character is deleted per keypress, identical to pressing the physical Backspace key.

❌ Actual Behavior

The entire previous word is deleted instead of a single character. This happens because the injected Backspace event is delivered to applications as WM_SYSKEYDOWN (Alt+Backspace) instead of WM_KEYDOWN (Backspace), since the Alt modifier state is still active at the time SendInput is called inside the low-level keyboard hook callback.

Upload Bug Report ZIP-file

No response

Additional Information

No response

Other Software

Windows 10 Pro 24H2 (Build 26100.8037)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Issue-BugSomething isn't workingNeeds-TriageFor issues raised to be triaged and prioritized by internal Microsoft teamsProduct-Keyboard Shortcut ManagerIssues regarding Keyboard Shortcut Manager

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions