Skip to content

Add location awarness to ModifiersChanged event on Windows #3611

@junglie85

Description

@junglie85

Description

Cannot detect when left or right version of a modifier is pressed, it just shows as a single modifier without the left/right info. e.g. if left shift is down, it does not detect that right shift is down. I can also press left shift followed by right shift, then release left shift and it only reports a release when I finally release right shift.

[age\src\os.rs:270] _modifiers = Modifiers {
    state: ModifiersState(
        SHIFT,
    ),
    pressed_mods: ModifiersKeys(
        0x0,
    ),
}
[age\src\os.rs:271] _modifiers.lshift_state() == winit::keyboard::ModifiersKeyState::Pressed = false
[age\src\os.rs:272] _modifiers.rshift_state() == winit::keyboard::ModifiersKeyState::Pressed = false
[age\src\os.rs:270] _modifiers = Modifiers {
    state: ModifiersState(
        0x0,
    ),
    pressed_mods: ModifiersKeys(
        0x0,
    ),
}
[age\src\os.rs:271] _modifiers.lshift_state() == winit::keyboard::ModifiersKeyState::Pressed = false
[age\src\os.rs:272] _modifiers.rshift_state() == winit::keyboard::ModifiersKeyState::Pressed = false

This seems pretty buggy to me.

Windows version

Microsoft Windows [Version 10.0.19045.4170]

Winit version

0.29.15

Metadata

Metadata

Assignees

No one assigned

    Labels

    DS - win32Affects the Win32/Windows backendS - enhancementWouldn't this be the coolest?

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions