Example #1
0
 private void KeysPress(InputBuilder builder, IEnumerable <VirtualKeyCode> keyCodes)
 {
     if (keyCodes == null)
     {
         return;
     }
     foreach (var key in keyCodes)
     {
         builder.AddKeyPress(key);
     }
 }
Example #2
0
 private static void ModifiersDown(InputBuilder builder, IEnumerable <VirtualKeyCode> modifierKeyCodes)
 {
     if (modifierKeyCodes == null)
     {
         return;
     }
     foreach (var key in modifierKeyCodes)
     {
         builder.AddKeyDown(key);
     }
 }
Example #3
0
        public IKeyboardSimulator ModifiedKeyStroke(IEnumerable <VirtualKeyCode> modifierKeyCodes, IEnumerable <VirtualKeyCode> keyCodes)
        {
            var builder = new InputBuilder();

            var virtualKeyCodes = modifierKeyCodes as IList <VirtualKeyCode> ?? modifierKeyCodes.ToList();

            ModifiersDown(builder, virtualKeyCodes);
            KeysPress(builder, keyCodes);
            ModifiersUp(builder, virtualKeyCodes);

            SendSimulatedInput(builder.ToArray());
            return(this);
        }
Example #4
0
        private static void ModifiersUp(InputBuilder builder, IEnumerable <Keys> modifierKeyCodes)
        {
            if (modifierKeyCodes == null)
            {
                return;
            }
            var stack = new Stack <Keys>(modifierKeyCodes);

            while (stack.Count > 0)
            {
                builder.AddKeyUp(stack.Pop());
            }
        }
Example #5
0
 private void SendSimulatedInput(User32.Input[] inputList)
 {
     InputBuilder.DispatchInput(inputList);
 }