diff options
author | dakkar <dakkar@thenautilus.net> | 2019-02-22 12:26:18 +0000 |
---|---|---|
committer | dakkar <dakkar@thenautilus.net> | 2019-02-22 12:26:18 +0000 |
commit | 2e0be3d1467680aeb8587b00d79406c32b6f04b4 (patch) | |
tree | 176699d113aa1d4c409898dc540769c9019d6cd9 /macros.h | |
parent | Merge branch 'color-picker' (diff) | |
parent | numlock as a macro (diff) | |
download | keyboardio-model01-22a7c4f3bc68d2777e80a2f178937697638a4145.tar.gz keyboardio-model01-22a7c4f3bc68d2777e80a2f178937697638a4145.tar.bz2 keyboardio-model01-22a7c4f3bc68d2777e80a2f178937697638a4145.zip |
Merge branch 'set-numlock'v10.0
Diffstat (limited to 'macros.h')
-rw-r--r-- | macros.h | 20 |
1 files changed, 19 insertions, 1 deletions
@@ -2,9 +2,11 @@ #pragma once #include "kaleidoscope/plugin/Macros.h" +#include "keymap-layers.h" enum { MACRO_VERSION_INFO, - MACRO_ANY + MACRO_ANY, + MACRO_NUMLOCK, }; #ifndef BUILD_INFORMATION @@ -30,6 +32,18 @@ static void anyKeyMacro(uint8_t keyState) { kaleidoscope::hid::pressKey(lastKey, toggledOn); } +static void numLockMacro(uint8_t keyState) { + if (keyToggledOn(keyState)) { + kaleidoscope::hid::pressKey(Key_KeypadNumLock); + if (Layer.isActive(NUMPAD)) { + Layer.deactivate(NUMPAD); + } + else { + Layer.activate(NUMPAD); + } + } +} + const macro_t *macroAction(uint8_t macroIndex, uint8_t keyState) { switch (macroIndex) { @@ -40,6 +54,10 @@ const macro_t *macroAction(uint8_t macroIndex, uint8_t keyState) { case MACRO_ANY: anyKeyMacro(keyState); break; + + case MACRO_NUMLOCK: + numLockMacro(keyState); + break; } return MACRO_NONE; } |