Implemented KeyDown and KeyUp messages
authorStefanos A. <stapostol@gmail.com>
Fri, 20 Dec 2013 23:50:25 +0000 (00:50 +0100)
committerStefanos A. <stapostol@gmail.com>
Fri, 20 Dec 2013 23:50:25 +0000 (00:50 +0100)
Source/OpenTK/Platform/Windows/WinGLNative.cs

index 6125ffd345e25fed272fd046d5ec381f3b99ec8f..48f7c4b13fd8c67f669f92dd011b5dcff2c2b09c 100644 (file)
@@ -98,6 +98,8 @@ namespace OpenTK.Platform.Windows
         public static readonly uint AltLeftScanCode = Functions.MapVirtualKey(VirtualKeys.LMENU, 0);
         public static readonly uint AltRightScanCode = Functions.MapVirtualKey(VirtualKeys.RMENU, 0);
 
+        KeyboardKeyEventArgs key_down = new KeyboardKeyEventArgs();
+        KeyboardKeyEventArgs key_up = new KeyboardKeyEventArgs();
         KeyPressEventArgs key_press = new KeyPressEventArgs((char)0);
 
         int cursor_visible_count = 0;
@@ -485,6 +487,18 @@ namespace OpenTK.Platform.Windows
                     if (is_valid)
                     {
                         keyboard.SetKey(key, (byte)scancode, pressed);
+
+                        if (pressed)
+                        {
+                            key_down.Key = key;
+                            KeyDown(this, key_down);
+                        }
+                        else
+                        {
+                            key_up.Key = key;
+                            KeyUp(this, key_up);
+                        }
+
                     }
 
                     return IntPtr.Zero;