diff options
author | tmk <nobody@nowhere> | 2014-09-29 10:12:58 +0900 |
---|---|---|
committer | tmk <nobody@nowhere> | 2014-09-29 10:29:33 +0900 |
commit | 821c719e98f310938e2bb3f2ad3e6a726bd8b03e (patch) | |
tree | 0af03831bbed9d6a4155e46923406b4a3bd6b67e /common/action.c | |
parent | 8cec0bc9d66cb7da4770e6502e97a426908eb532 (diff) |
Add action 'Momentary switching with Modifiers'
Diffstat (limited to 'common/action.c')
-rw-r--r-- | common/action.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/common/action.c b/common/action.c index fddb97c508..83bc8a6187 100644 --- a/common/action.c +++ b/common/action.c @@ -237,6 +237,16 @@ void process_action(keyrecord_t *record) case ACT_LAYER_TAP: case ACT_LAYER_TAP_EXT: switch (action.layer_tap.code) { + case 0xe0 ... 0xef: + /* layer On/Off with modifiers(left only) */ + if (event.pressed) { + layer_on(action.layer_tap.val); + register_mods(action.layer_tap.code & 0x0f); + } else { + layer_off(action.layer_tap.val); + unregister_mods(action.layer_tap.code & 0x0f); + } + break; case OP_TAP_TOGGLE: /* tap toggle */ if (event.pressed) { |