From 1078e01bdd13341aa5969940be631cb4032af8ec Mon Sep 17 00:00:00 2001 From: Jimmy Nielsen Date: Sat, 27 Feb 2021 12:52:19 +0100 Subject: [PATCH] Fix problem with numpad_return and return being treaded as the same key --- src/GregsStack.InputSimulatorStandard/InputBuilder.cs | 5 +++-- .../Native/VirtualKeyCode.cs | 4 +++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/GregsStack.InputSimulatorStandard/InputBuilder.cs b/src/GregsStack.InputSimulatorStandard/InputBuilder.cs index 147c0c9..7a9fe66 100644 --- a/src/GregsStack.InputSimulatorStandard/InputBuilder.cs +++ b/src/GregsStack.InputSimulatorStandard/InputBuilder.cs @@ -99,6 +99,7 @@ public InputBuilder() /// This instance. public InputBuilder AddKeyDown(VirtualKeyCode keyCode) { + var code = (ushort)((int)keyCode & 0xFFFF); var down = new Input { @@ -108,8 +109,8 @@ public InputBuilder AddKeyDown(VirtualKeyCode keyCode) Keyboard = new KeyboardInput { - KeyCode = (ushort) keyCode, - Scan = (ushort)(NativeMethods.MapVirtualKey((uint)keyCode, 0) & 0xFFU), + KeyCode = (ushort) code , + Scan = (ushort)(NativeMethods.MapVirtualKey((uint)code, 0) & 0xFFU), Flags = IsExtendedKey(keyCode) ? (uint) KeyboardFlag.ExtendedKey : 0, Time = 0, ExtraInfo = IntPtr.Zero diff --git a/src/GregsStack.InputSimulatorStandard/Native/VirtualKeyCode.cs b/src/GregsStack.InputSimulatorStandard/Native/VirtualKeyCode.cs index f2f78ec..e6b56d1 100644 --- a/src/GregsStack.InputSimulatorStandard/Native/VirtualKeyCode.cs +++ b/src/GregsStack.InputSimulatorStandard/Native/VirtualKeyCode.cs @@ -62,7 +62,7 @@ public enum VirtualKeyCode /// /// Numeric keypad ENTER key /// - NUMPAD_RETURN = 0x0D, + NUMPAD_RETURN = 0x4000000D, // 0x0E - 0x0F : Undefined @@ -940,5 +940,7 @@ public enum VirtualKeyCode /// Clear key /// OEM_CLEAR = 0xFE, + + } }