aboutsummaryrefslogtreecommitdiff
path: root/quantum/keymap_common.c
diff options
context:
space:
mode:
authorJoel Challis <git@zvecr.com>2019-11-28 21:59:59 +0000
committerGitHub <noreply@github.com>2019-11-28 21:59:59 +0000
commit2048df883200589c20dfc581e39e03703edf0b23 (patch)
treeeaef3f6d5d56fb0050b33a0fedc72063886e2aa2 /quantum/keymap_common.c
parent99f3321e2634547b57ec07f0d1d8b107670be824 (diff)
downloadqmk_firmware-2048df883200589c20dfc581e39e03703edf0b23.tar.gz
qmk_firmware-2048df883200589c20dfc581e39e03703edf0b23.zip
Compile out some keycode processing when features are disabled (#7506)
Diffstat (limited to 'quantum/keymap_common.c')
-rw-r--r--quantum/keymap_common.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/quantum/keymap_common.c b/quantum/keymap_common.c
index 4fa45ac37..587727393 100644
--- a/quantum/keymap_common.c
+++ b/quantum/keymap_common.c
@@ -52,9 +52,6 @@ action_t action_for_key(uint8_t layer, keypos_t key) {
52 uint8_t action_layer, when, mod; 52 uint8_t action_layer, when, mod;
53 53
54 switch (keycode) { 54 switch (keycode) {
55 case KC_FN0 ... KC_FN31:
56 action.code = keymap_function_id_to_action(FN_INDEX(keycode));
57 break;
58 case KC_A ... KC_EXSEL: 55 case KC_A ... KC_EXSEL:
59 case KC_LCTRL ... KC_RGUI: 56 case KC_LCTRL ... KC_RGUI:
60 action.code = ACTION_KEY(keycode); 57 action.code = ACTION_KEY(keycode);
@@ -65,9 +62,11 @@ action_t action_for_key(uint8_t layer, keypos_t key) {
65 case KC_AUDIO_MUTE ... KC_BRIGHTNESS_DOWN: 62 case KC_AUDIO_MUTE ... KC_BRIGHTNESS_DOWN:
66 action.code = ACTION_USAGE_CONSUMER(KEYCODE2CONSUMER(keycode)); 63 action.code = ACTION_USAGE_CONSUMER(KEYCODE2CONSUMER(keycode));
67 break; 64 break;
65#ifdef MOUSEKEY_ENABLE
68 case KC_MS_UP ... KC_MS_ACCEL2: 66 case KC_MS_UP ... KC_MS_ACCEL2:
69 action.code = ACTION_MOUSEKEY(keycode); 67 action.code = ACTION_MOUSEKEY(keycode);
70 break; 68 break;
69#endif
71 case KC_TRNS: 70 case KC_TRNS:
72 action.code = ACTION_TRANSPARENT; 71 action.code = ACTION_TRANSPARENT;
73 break; 72 break;
@@ -76,17 +75,24 @@ action_t action_for_key(uint8_t layer, keypos_t key) {
76 // Split it up 75 // Split it up
77 action.code = ACTION_MODS_KEY(keycode >> 8, keycode & 0xFF); // adds modifier to key 76 action.code = ACTION_MODS_KEY(keycode >> 8, keycode & 0xFF); // adds modifier to key
78 break; 77 break;
78#ifndef NO_ACTION_FUNCTION
79 case KC_FN0 ... KC_FN31:
80 action.code = keymap_function_id_to_action(FN_INDEX(keycode));
81 break;
79 case QK_FUNCTION ... QK_FUNCTION_MAX:; 82 case QK_FUNCTION ... QK_FUNCTION_MAX:;
80 // Is a shortcut for function action_layer, pull last 12bits 83 // Is a shortcut for function action_layer, pull last 12bits
81 // This means we have 4,096 FN macros at our disposal 84 // This means we have 4,096 FN macros at our disposal
82 action.code = keymap_function_id_to_action((int)keycode & 0xFFF); 85 action.code = keymap_function_id_to_action((int)keycode & 0xFFF);
83 break; 86 break;
87#endif
88#ifndef NO_ACTION_MACRO
84 case QK_MACRO ... QK_MACRO_MAX: 89 case QK_MACRO ... QK_MACRO_MAX:
85 if (keycode & 0x800) // tap macros have upper bit set 90 if (keycode & 0x800) // tap macros have upper bit set
86 action.code = ACTION_MACRO_TAP(keycode & 0xFF); 91 action.code = ACTION_MACRO_TAP(keycode & 0xFF);
87 else 92 else
88 action.code = ACTION_MACRO(keycode & 0xFF); 93 action.code = ACTION_MACRO(keycode & 0xFF);
89 break; 94 break;
95#endif
90 case QK_LAYER_TAP ... QK_LAYER_TAP_MAX: 96 case QK_LAYER_TAP ... QK_LAYER_TAP_MAX:
91 action.code = ACTION_LAYER_TAP_KEY((keycode >> 0x8) & 0xF, keycode & 0xFF); 97 action.code = ACTION_LAYER_TAP_KEY((keycode >> 0x8) & 0xF, keycode & 0xFF);
92 break; 98 break;