From 815f75d153c8b4cfacb6a8f65ff1827a42fbafa7 Mon Sep 17 00:00:00 2001 From: Boris Fritscher <boris@fritscher.ch> Date: Fri, 14 Jul 2017 23:57:30 +0200 Subject: [PATCH] Register alt key without another key --- src/Carnac.Logic/KeyMonitor/InterceptKeys.cs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/Carnac.Logic/KeyMonitor/InterceptKeys.cs b/src/Carnac.Logic/KeyMonitor/InterceptKeys.cs index 6a621938..322c067b 100644 --- a/src/Carnac.Logic/KeyMonitor/InterceptKeys.cs +++ b/src/Carnac.Logic/KeyMonitor/InterceptKeys.cs @@ -62,6 +62,7 @@ static InterceptKeyEventArgs CreateEventArgs(IntPtr wParam, IntPtr lParam) bool keyUp = wParam == (IntPtr)Win32Methods.WM_KEYUP; int vkCode = Marshal.ReadInt32(lParam); var key = (Keys)vkCode; + //http://msdn.microsoft.com/en-us/library/windows/desktop/ms646286(v=vs.85).aspx if (key != Keys.RMenu && key != Keys.LMenu && wParam == (IntPtr)Win32Methods.WM_SYSKEYDOWN) { @@ -73,6 +74,10 @@ static InterceptKeyEventArgs CreateEventArgs(IntPtr wParam, IntPtr lParam) alt = true; keyUp = true; } + if (wParam == (IntPtr)Win32Methods.WM_SYSKEYDOWN && key == Keys.LMenu) + { + keyDown = true; + } return new InterceptKeyEventArgs( key,