protected override void OnKeyPress(KeyPressEventArgs e) { e.Handled = true; if (lastKeyDown != null) { if ((lastKeyDown.KeyData & (Keys.Alt | Keys.Control)) == 0) { // Combine ascii codes with key codes. lastKeyDown.KeyChar = e.KeyChar; } else { // Discard ASCII when the key combination is 'special'. } lastKeyDown = null; } else { keyBuffer.Enqueue(new KeyInfo(e.KeyChar)); } base.OnKeyPress(e); }
protected override void OnKeyDown(KeyEventArgs e) { if (e.KeyCode != Keys.ControlKey) { var mod = ModifierKeys; lastKeyDown = new KeyInfo(e.KeyData); keyBuffer.Enqueue(lastKeyDown); e.Handled = true; } base.OnKeyDown(e); }
internal void SendKey(KeyInfo key) { ParentControl.SendKey(key); }
public void SendKey(KeyInfo key) { keyBuffer.Add(key); }