1
0
Fork 0
mirror of synced 2025-03-07 03:53:26 +01:00

win32u: Cancel auto-repeat only if the repeat key is released.

This fixes the behavior to match other systems, where releasing
an unrelated key does not affect the repeating key.
This commit is contained in:
Alexandros Frantzis 2024-03-15 13:59:52 +02:00 committed by Alexandre Julliard
parent 819d8692c6
commit 7a25bd885e

View file

@ -2433,7 +2433,9 @@ static BOOL process_keyboard_message( MSG *msg, UINT hw_id, HWND hwnd_filter,
case WM_KEYUP:
case WM_SYSKEYUP:
kill_system_timer( thread_info->key_repeat_msg.hwnd, SYSTEM_TIMER_KEY_REPEAT );
/* Only stop repeat if the scan codes match. */
if ((thread_info->key_repeat_msg.lParam & 0x01ff0000) == (msg->lParam & 0x01ff0000))
kill_system_timer( thread_info->key_repeat_msg.hwnd, SYSTEM_TIMER_KEY_REPEAT );
break;
}
}