summaryrefslogtreecommitdiffstats
path: root/quantum/keymap_common.c
diff options
context:
space:
mode:
authormilestogo <milestogo@users.noreply.github.com>2017-02-10 08:28:39 +0100
committermilestogo <milestogo@users.noreply.github.com>2017-02-10 08:28:39 +0100
commitb0537f75df73ca5a55355c7546d45577cb2c6a38 (patch)
tree0da100dc4fcbe21629a10879b53e13d02c25c170 /quantum/keymap_common.c
parent5ac0e6e6aee64c9b8fade79aaf22bc839e2c6b47 (diff)
parent41c93575a838e9b201ca113165085f47198e109d (diff)
downloadqmk_firmware-b0537f75df73ca5a55355c7546d45577cb2c6a38.tar.gz
qmk_firmware-b0537f75df73ca5a55355c7546d45577cb2c6a38.tar.xz
Merge branch 'master' into sculpt2
Diffstat (limited to 'quantum/keymap_common.c')
-rw-r--r--quantum/keymap_common.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/quantum/keymap_common.c b/quantum/keymap_common.c
index eced3d2bb..5190f24e8 100644
--- a/quantum/keymap_common.c
+++ b/quantum/keymap_common.c
@@ -80,7 +80,10 @@ action_t action_for_key(uint8_t layer, keypos_t key)
action.code = keymap_function_id_to_action( (int)keycode & 0xFFF );
break;
case QK_MACRO ... QK_MACRO_MAX:
- action.code = ACTION_MACRO(keycode & 0xFF);
+ if (keycode & 0x800) // tap macros have upper bit set
+ action.code = ACTION_MACRO_TAP(keycode & 0xFF);
+ else
+ action.code = ACTION_MACRO(keycode & 0xFF);
break;
case QK_LAYER_TAP ... QK_LAYER_TAP_MAX:
action.code = ACTION_LAYER_TAP_KEY((keycode >> 0x8) & 0xF, keycode & 0xFF);