I'm a developer building an application using C# and WPF in Visual Studio. In this environment I noticed a bug where phantom key messages are sent that seems to be only reproducible when the Colemak layout is active.
Steps to reproduce:
1. Create a new WPF application in Visual Studio
2. Replace the MainWindow.xaml file contents with the xaml here.
3. Replace the MainWindow.xaml.cs file contents with the C# code here.
4. Run.
5. Press and hold the right Ctrl key.
6. Press and hold the right Alt key.
7. Release the right Alt key.
8. Look at the text in the TextBox. I see this output (minus the comments) for each step above:
// Hold down the Right Ctrl key:
Down: RightCtrl + [Control]
// Now also hold down the Right Alt key:
Down: RightAlt + [Alt, Control]
// Now release the right Alt key:
Up: LeftCtrl + [Alt, Control] // << Why this? Left Ctrl key was never pressed or released.
Up: RightAlt + [Control]
// Now release the right Ctrl key:
Up: RightCtrl + [None]
If I run this sequence under a normal keyboard layout I see only the expected keys that were pressed and released:
Down: RightCtrl + [Control]
Down: RightAlt + [Alt, Control]
Up: RightAlt + [Control]
Up: RightCtrl + [None]