summaryrefslogtreecommitdiff
path: root/quantum
diff options
context:
space:
mode:
authorJoel Challis <git@zvecr.com>2023-02-10 21:10:14 +0000
committerGitHub <noreply@github.com>2023-02-10 21:10:14 +0000
commit1d0b4c8d38794dc019ecb224f2992b4ddfa70839 (patch)
tree48e0423bcafbb2fa680c7bc5199aba8794665339 /quantum
parent2ffdec5dc2a5cb350998168e76d7916e2d9728fc (diff)
Tidy up use of keycode range helpers (#19756)
Diffstat (limited to 'quantum')
-rw-r--r--quantum/action.c18
-rw-r--r--quantum/action_tapping.c4
-rw-r--r--quantum/keycode.h2
-rw-r--r--quantum/keycodes.h2
-rw-r--r--quantum/process_keycode/process_combo.h2
-rw-r--r--quantum/process_keycode/process_key_override.c2
-rw-r--r--quantum/process_keycode/process_space_cadet.c10
-rw-r--r--quantum/quantum.c4
8 files changed, 21 insertions, 23 deletions
diff --git a/quantum/action.c b/quantum/action.c
index 6b5660af8b..72f132eaa8 100644
--- a/quantum/action.c
+++ b/quantum/action.c
@@ -351,7 +351,7 @@ void process_action(keyrecord_t *record, action_t action) {
351 bool do_release_oneshot = false; 351 bool do_release_oneshot = false;
352 // notice we only clear the one shot layer if the pressed key is not a modifier. 352 // notice we only clear the one shot layer if the pressed key is not a modifier.
353 if (is_oneshot_layer_active() && event.pressed && 353 if (is_oneshot_layer_active() && event.pressed &&
354 (action.kind.id == ACT_USAGE || !(IS_MOD(action.key.code) 354 (action.kind.id == ACT_USAGE || !(IS_MODIFIER_KEYCODE(action.key.code)
355# ifndef NO_ACTION_TAPPING 355# ifndef NO_ACTION_TAPPING
356 || (tap_count == 0 && (action.kind.id == ACT_LMODS_TAP || action.kind.id == ACT_RMODS_TAP)) 356 || (tap_count == 0 && (action.kind.id == ACT_LMODS_TAP || action.kind.id == ACT_RMODS_TAP))
357# endif 357# endif
@@ -372,7 +372,7 @@ void process_action(keyrecord_t *record, action_t action) {
372 uint8_t mods = (action.kind.id == ACT_LMODS) ? action.key.mods : action.key.mods << 4; 372 uint8_t mods = (action.kind.id == ACT_LMODS) ? action.key.mods : action.key.mods << 4;
373 if (event.pressed) { 373 if (event.pressed) {
374 if (mods) { 374 if (mods) {
375 if (IS_MOD(action.key.code) || action.key.code == KC_NO) { 375 if (IS_MODIFIER_KEYCODE(action.key.code) || action.key.code == KC_NO) {
376 // e.g. LSFT(KC_LEFT_GUI): we don't want the LSFT to be weak as it would make it useless. 376 // e.g. LSFT(KC_LEFT_GUI): we don't want the LSFT to be weak as it would make it useless.
377 // This also makes LSFT(KC_LEFT_GUI) behave exactly the same as LGUI(KC_LEFT_SHIFT). 377 // This also makes LSFT(KC_LEFT_GUI) behave exactly the same as LGUI(KC_LEFT_SHIFT).
378 // Same applies for some keys like KC_MEH which are declared as MEH(KC_NO). 378 // Same applies for some keys like KC_MEH which are declared as MEH(KC_NO).
@@ -386,7 +386,7 @@ void process_action(keyrecord_t *record, action_t action) {
386 } else { 386 } else {
387 unregister_code(action.key.code); 387 unregister_code(action.key.code);
388 if (mods) { 388 if (mods) {
389 if (IS_MOD(action.key.code) || action.key.code == KC_NO) { 389 if (IS_MODIFIER_KEYCODE(action.key.code) || action.key.code == KC_NO) {
390 del_mods(mods); 390 del_mods(mods);
391 } else { 391 } else {
392 del_weak_mods(mods); 392 del_weak_mods(mods);
@@ -406,7 +406,7 @@ void process_action(keyrecord_t *record, action_t action) {
406 if (!keymap_config.oneshot_enable) { 406 if (!keymap_config.oneshot_enable) {
407 if (event.pressed) { 407 if (event.pressed) {
408 if (mods) { 408 if (mods) {
409 if (IS_MOD(action.key.code) || action.key.code == KC_NO) { 409 if (IS_MODIFIER_KEYCODE(action.key.code) || action.key.code == KC_NO) {
410 // e.g. LSFT(KC_LGUI): we don't want the LSFT to be weak as it would make it useless. 410 // e.g. LSFT(KC_LGUI): we don't want the LSFT to be weak as it would make it useless.
411 // This also makes LSFT(KC_LGUI) behave exactly the same as LGUI(KC_LSFT). 411 // This also makes LSFT(KC_LGUI) behave exactly the same as LGUI(KC_LSFT).
412 // Same applies for some keys like KC_MEH which are declared as MEH(KC_NO). 412 // Same applies for some keys like KC_MEH which are declared as MEH(KC_NO).
@@ -420,7 +420,7 @@ void process_action(keyrecord_t *record, action_t action) {
420 } else { 420 } else {
421 unregister_code(action.key.code); 421 unregister_code(action.key.code);
422 if (mods) { 422 if (mods) {
423 if (IS_MOD(action.key.code) || action.key.code == KC_NO) { 423 if (IS_MODIFIER_KEYCODE(action.key.code) || action.key.code == KC_NO) {
424 del_mods(mods); 424 del_mods(mods);
425 } else { 425 } else {
426 del_weak_mods(mods); 426 del_weak_mods(mods);
@@ -877,7 +877,7 @@ __attribute__((weak)) void register_code(uint8_t code) {
877 send_keyboard_report(); 877 send_keyboard_report();
878#endif 878#endif
879 879
880 } else if IS_KEY (code) { 880 } else if IS_BASIC_KEYCODE (code) {
881 // TODO: should push command_proc out of this block? 881 // TODO: should push command_proc out of this block?
882 if (command_proc(code)) return; 882 if (command_proc(code)) return;
883 883
@@ -890,7 +890,7 @@ __attribute__((weak)) void register_code(uint8_t code) {
890 } 890 }
891 add_key(code); 891 add_key(code);
892 send_keyboard_report(); 892 send_keyboard_report();
893 } else if IS_MOD (code) { 893 } else if IS_MODIFIER_KEYCODE (code) {
894 add_mods(MOD_BIT(code)); 894 add_mods(MOD_BIT(code));
895 send_keyboard_report(); 895 send_keyboard_report();
896 896
@@ -944,10 +944,10 @@ __attribute__((weak)) void unregister_code(uint8_t code) {
944 send_keyboard_report(); 944 send_keyboard_report();
945#endif 945#endif
946 946
947 } else if IS_KEY (code) { 947 } else if IS_BASIC_KEYCODE (code) {
948 del_key(code); 948 del_key(code);
949 send_keyboard_report(); 949 send_keyboard_report();
950 } else if IS_MOD (code) { 950 } else if IS_MODIFIER_KEYCODE (code) {
951 del_mods(MOD_BIT(code)); 951 del_mods(MOD_BIT(code));
952 send_keyboard_report(); 952 send_keyboard_report();
953 953
diff --git a/quantum/action_tapping.c b/quantum/action_tapping.c
index 821265d399..60c7ed4973 100644
--- a/quantum/action_tapping.c
+++ b/quantum/action_tapping.c
@@ -247,12 +247,12 @@ bool process_tapping(keyrecord_t *keyp) {
247 case ACT_LMODS: 247 case ACT_LMODS:
248 case ACT_RMODS: 248 case ACT_RMODS:
249 if (action.key.mods && !action.key.code) return false; 249 if (action.key.mods && !action.key.code) return false;
250 if (IS_MOD(action.key.code)) return false; 250 if (IS_MODIFIER_KEYCODE(action.key.code)) return false;
251 break; 251 break;
252 case ACT_LMODS_TAP: 252 case ACT_LMODS_TAP:
253 case ACT_RMODS_TAP: 253 case ACT_RMODS_TAP:
254 if (action.key.mods && keyp->tap.count == 0) return false; 254 if (action.key.mods && keyp->tap.count == 0) return false;
255 if (IS_MOD(action.key.code)) return false; 255 if (IS_MODIFIER_KEYCODE(action.key.code)) return false;
256 break; 256 break;
257 case ACT_LAYER_TAP: 257 case ACT_LAYER_TAP:
258 case ACT_LAYER_TAP_EXT: 258 case ACT_LAYER_TAP_EXT:
diff --git a/quantum/keycode.h b/quantum/keycode.h
index 45736e92f1..03989ed8f6 100644
--- a/quantum/keycode.h
+++ b/quantum/keycode.h
@@ -27,8 +27,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
27/* FIXME: Add doxygen comments here */ 27/* FIXME: Add doxygen comments here */
28 28
29#define IS_ANY(code) (KC_A <= (code) && (code) <= 0xFF) 29#define IS_ANY(code) (KC_A <= (code) && (code) <= 0xFF)
30#define IS_KEY(code) IS_BASIC_KEYCODE(code)
31#define IS_MOD(code) IS_MODIFIERS_KEYCODE(code)
32 30
33#define IS_SYSTEM(code) IS_SYSTEM_KEYCODE(code) 31#define IS_SYSTEM(code) IS_SYSTEM_KEYCODE(code)
34#define IS_CONSUMER(code) IS_MEDIA_KEYCODE(code) 32#define IS_CONSUMER(code) IS_MEDIA_KEYCODE(code)
diff --git a/quantum/keycodes.h b/quantum/keycodes.h
index 96f352a2c1..f24ccf01b8 100644
--- a/quantum/keycodes.h
+++ b/quantum/keycodes.h
@@ -1321,7 +1321,7 @@ enum qk_keycode_defines {
1321#define IS_SYSTEM_KEYCODE(code) ((code) >= KC_SYSTEM_POWER && (code) <= KC_SYSTEM_WAKE) 1321#define IS_SYSTEM_KEYCODE(code) ((code) >= KC_SYSTEM_POWER && (code) <= KC_SYSTEM_WAKE)
1322#define IS_MEDIA_KEYCODE(code) ((code) >= KC_AUDIO_MUTE && (code) <= KC_ASSISTANT) 1322#define IS_MEDIA_KEYCODE(code) ((code) >= KC_AUDIO_MUTE && (code) <= KC_ASSISTANT)
1323#define IS_MOUSE_KEYCODE(code) ((code) >= KC_MS_UP && (code) <= KC_MS_ACCEL2) 1323#define IS_MOUSE_KEYCODE(code) ((code) >= KC_MS_UP && (code) <= KC_MS_ACCEL2)
1324#define IS_MODIFIERS_KEYCODE(code) ((code) >= KC_LEFT_CTRL && (code) <= KC_RIGHT_GUI) 1324#define IS_MODIFIER_KEYCODE(code) ((code) >= KC_LEFT_CTRL && (code) <= KC_RIGHT_GUI)
1325#define IS_SWAP_HANDS_KEYCODE(code) ((code) >= QK_SWAP_HANDS_TOGGLE && (code) <= QK_SWAP_HANDS_ONE_SHOT) 1325#define IS_SWAP_HANDS_KEYCODE(code) ((code) >= QK_SWAP_HANDS_TOGGLE && (code) <= QK_SWAP_HANDS_ONE_SHOT)
1326#define IS_MAGIC_KEYCODE(code) ((code) >= MAGIC_SWAP_CONTROL_CAPSLOCK && (code) <= MAGIC_TOGGLE_ESCAPE_CAPSLOCK) 1326#define IS_MAGIC_KEYCODE(code) ((code) >= MAGIC_SWAP_CONTROL_CAPSLOCK && (code) <= MAGIC_TOGGLE_ESCAPE_CAPSLOCK)
1327#define IS_MIDI_KEYCODE(code) ((code) >= QK_MIDI_ON && (code) <= QK_MIDI_PITCH_BEND_UP) 1327#define IS_MIDI_KEYCODE(code) ((code) >= QK_MIDI_ON && (code) <= QK_MIDI_PITCH_BEND_UP)
diff --git a/quantum/process_keycode/process_combo.h b/quantum/process_keycode/process_combo.h
index 4c4e574e34..e430c4a5f7 100644
--- a/quantum/process_keycode/process_combo.h
+++ b/quantum/process_keycode/process_combo.h
@@ -69,7 +69,7 @@ typedef struct {
69#endif 69#endif
70 70
71/* check if keycode is only modifiers */ 71/* check if keycode is only modifiers */
72#define KEYCODE_IS_MOD(code) (IS_MOD(code) || (code >= QK_MODS && code <= QK_MODS_MAX && !(code & QK_BASIC_MAX))) 72#define KEYCODE_IS_MOD(code) (IS_MODIFIER_KEYCODE(code) || (IS_QK_MODS(code) && !QK_MODS_GET_BASIC_KEYCODE(code)))
73 73
74bool process_combo(uint16_t keycode, keyrecord_t *record); 74bool process_combo(uint16_t keycode, keyrecord_t *record);
75void combo_task(void); 75void combo_task(void);
diff --git a/quantum/process_keycode/process_key_override.c b/quantum/process_keycode/process_key_override.c
index 9c5abccd4f..9b91ae2223 100644
--- a/quantum/process_keycode/process_key_override.c
+++ b/quantum/process_keycode/process_key_override.c
@@ -402,7 +402,7 @@ bool process_key_override(const uint16_t keycode, const keyrecord_t *const recor
402#endif 402#endif
403 403
404 const bool key_down = record->event.pressed; 404 const bool key_down = record->event.pressed;
405 const bool is_mod = IS_MOD(keycode); 405 const bool is_mod = IS_MODIFIER_KEYCODE(keycode);
406 406
407 if (key_down) { 407 if (key_down) {
408 switch (keycode) { 408 switch (keycode) {
diff --git a/quantum/process_keycode/process_space_cadet.c b/quantum/process_keycode/process_space_cadet.c
index a62cd60a70..3109ea1711 100644
--- a/quantum/process_keycode/process_space_cadet.c
+++ b/quantum/process_keycode/process_space_cadet.c
@@ -89,16 +89,16 @@ void perform_space_cadet(keyrecord_t *record, uint16_t sc_keycode, uint8_t holdM
89#ifdef SPACE_CADET_MODIFIER_CARRYOVER 89#ifdef SPACE_CADET_MODIFIER_CARRYOVER
90 sc_mods = get_mods(); 90 sc_mods = get_mods();
91#endif 91#endif
92 if (IS_MOD(holdMod)) { 92 if (IS_MODIFIER_KEYCODE(holdMod)) {
93 register_mods(MOD_BIT(holdMod)); 93 register_mods(MOD_BIT(holdMod));
94 } 94 }
95 } else { 95 } else {
96 if (sc_last == holdMod && timer_elapsed(sc_timer) < GET_TAPPING_TERM(sc_keycode, record)) { 96 if (sc_last == holdMod && timer_elapsed(sc_timer) < GET_TAPPING_TERM(sc_keycode, record)) {
97 if (holdMod != tapMod) { 97 if (holdMod != tapMod) {
98 if (IS_MOD(holdMod)) { 98 if (IS_MODIFIER_KEYCODE(holdMod)) {
99 unregister_mods(MOD_BIT(holdMod)); 99 unregister_mods(MOD_BIT(holdMod));
100 } 100 }
101 if (IS_MOD(tapMod)) { 101 if (IS_MODIFIER_KEYCODE(tapMod)) {
102 register_mods(MOD_BIT(tapMod)); 102 register_mods(MOD_BIT(tapMod));
103 } 103 }
104 } 104 }
@@ -109,11 +109,11 @@ void perform_space_cadet(keyrecord_t *record, uint16_t sc_keycode, uint8_t holdM
109#ifdef SPACE_CADET_MODIFIER_CARRYOVER 109#ifdef SPACE_CADET_MODIFIER_CARRYOVER
110 clear_weak_mods(); 110 clear_weak_mods();
111#endif 111#endif
112 if (IS_MOD(tapMod)) { 112 if (IS_MODIFIER_KEYCODE(tapMod)) {
113 unregister_mods(MOD_BIT(tapMod)); 113 unregister_mods(MOD_BIT(tapMod));
114 } 114 }
115 } else { 115 } else {
116 if (IS_MOD(holdMod)) { 116 if (IS_MODIFIER_KEYCODE(holdMod)) {
117 unregister_mods(MOD_BIT(holdMod)); 117 unregister_mods(MOD_BIT(holdMod));
118 } 118 }
119 } 119 }
diff --git a/quantum/quantum.c b/quantum/quantum.c
index 0e69246f41..653f553f60 100644
--- a/quantum/quantum.c
+++ b/quantum/quantum.c
@@ -76,7 +76,7 @@ void do_code16(uint16_t code, void (*f)(uint8_t)) {
76} 76}
77 77
78__attribute__((weak)) void register_code16(uint16_t code) { 78__attribute__((weak)) void register_code16(uint16_t code) {
79 if (IS_MOD(code) || code == KC_NO) { 79 if (IS_MODIFIER_KEYCODE(code) || code == KC_NO) {
80 do_code16(code, register_mods); 80 do_code16(code, register_mods);
81 } else { 81 } else {
82 do_code16(code, register_weak_mods); 82 do_code16(code, register_weak_mods);
@@ -86,7 +86,7 @@ __attribute__((weak)) void register_code16(uint16_t code) {
86 86
87__attribute__((weak)) void unregister_code16(uint16_t code) { 87__attribute__((weak)) void unregister_code16(uint16_t code) {
88 unregister_code(code); 88 unregister_code(code);
89 if (IS_MOD(code) || code == KC_NO) { 89 if (IS_MODIFIER_KEYCODE(code) || code == KC_NO) {
90 do_code16(code, unregister_mods); 90 do_code16(code, unregister_mods);
91 } else { 91 } else {
92 do_code16(code, unregister_weak_mods); 92 do_code16(code, unregister_weak_mods);