• Zebediah Figura's avatar
    winex11: Update the state of all keys on KeymapNotify. · 1bc9c4fd
    Zebediah Figura authored
    The Binding of Isaac transitions in and out of fullscreen when the "F" key is
    pressed. Specifically, it will swap states when receiving WM_KEYDOWN,
    provided that the previous key state was not pressed (i.e. bit 30 is 0).
    However, as part of the process of transitioning, it hides and shows its
    window, causing it to temporarily lose focus. If the F key is released while
    the window does not have focus, Wine misses this fact, and thinks that the
    key was already pressed the next time it is pressed, causing the game to
    refuse to change focus. Windows will not deliver WM_KEYUP messages to a
    window that does not have focus, but it will always report the true previous
    state of any key on the keyboard when requested.
    Signed-off-by: 's avatarZebediah Figura <zfigura@codeweavers.com>
    Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org>
    1bc9c4fd
keyboard.c 106 KB