Ejemplo n.º 1
0
        private static void LowLevelKeyboard_KeyUp(LowLevelKeyboard.KeyEventArgs e)
        {
            if (Config.BaseKeys.TrueForAll(key => LowLevelKeyboard.DownKeys.Contains(key)))
            {
                var shortcut = Config.Shortcuts.FirstOrDefault(s => s.InputKey == e.Key);

                if (shortcut != null)
                {
                    LowLevelKeyboard.SendKeyUp(shortcut.OutputKey);
                    e.Cancel = true;
                }
            }

            // disable CapsLock toggle functionality
            if (Config.DisableCapsLockToggle && e.Key == Keys.CapsLock && Control.IsKeyLocked(Keys.CapsLock))
            {
                var timer = new System.Timers.Timer(1);
                timer.Elapsed += (sender, e) =>
                {
                    if (Control.IsKeyLocked(Keys.CapsLock))
                    {
                        LowLevelKeyboard.SendKeyPress(Keys.CapsLock);
                    }

                    timer.Dispose();
                };

                timer.Start();
            }
        }
Ejemplo n.º 2
0
        private static void LowLevelKeyboard_KeyDown(LowLevelKeyboard.KeyEventArgs e)
        {
            if (Config.BaseKeys.TrueForAll(key => LowLevelKeyboard.DownKeys.Contains(key)))
            {
                var shortcut = Config.Shortcuts.FirstOrDefault(s => s.InputKey == e.Key);

                if (shortcut != null)
                {
                    LowLevelKeyboard.SendKeyDown(shortcut.OutputKey);
                    e.Cancel = true;
                }
            }
        }