public void KeyDown(USBC_Key key) { // This was taken from USBC_Keyboard.KeyDown() from reflector, with minor reformatting. int num = 0; if ((key >= USBC_Key.LeftCtrl) && (key <= USBC_Key.RightGUI)) { byte num3 = (byte)(((int)key) - 0xe0); this._KbReport[0] = (byte)(this._KbReport[0] | ((byte)(((int)1) << num3))); } else { for (int i = 0; i < this._KbReport.Length - 1; i++) { if (this._KbReport[i + 1] == (byte)key) { break; } if (this._KbReport[i + 1] == 0x0) { num = i; } } if (num < this._KbReport.Length - 1) { this._KbReport[num + 1] = (byte)key; } } this._KbStream.Write(this._KbReport, 0, this._KbReport.Length); }
public void KeyUp(USBC_Key key) { if (USBClientController.GetState() != USBClientController.State.Running || _KeyboardMouseClient == null) { return; } _KeyboardMouseClient.KeyUp(key); }
public void KeyUp(USBC_Key key) { // This was taken from USBC_Keyboard.KeyUp() from reflector, with minor reformatting. if ((key >= USBC_Key.LeftCtrl) && (key <= USBC_Key.RightGUI)) { byte num2 = (byte)(((int)key) - 0xe0); this._KbReport[0] = (byte)(this._KbReport[0] & ((byte)~(((int)0x1) << num2))); } else { for (int i = 0; i < this._KbReport.Length - 1; i++) { if (this._KbReport[i + 1] == (byte)key) { this._KbReport[i + 1] = 0; break; } } } this._KbStream.Write(this._KbReport, 0, this._KbReport.Length); }
public void KeyTap(USBC_Key key) { KeyDown(key); KeyUp(key); }