From 6b318bd420076885c2f370aff64cb2342da7b002 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Konstantin=20=C4=90or=C4=91evi=C4=87?= Date: Thu, 16 Jul 2020 14:27:55 +0200 Subject: [PATCH] Redefine IS_LAYER_ON/OFF() as aliases for existing layer functions (#6352) * Add IS_LAYER_ON_STATE()/IS_LAYER_OFF_STATE() macros * Add docs for IS_LAYER_ON/OFF(_STATE) macros * Remove IS_LAYER_ON/OFF_STATE redefinition in userspace * Run clang-format on quantum/quantum.h * Redefine IS_LAYER_ON/OFF(_STATE) as aliases of existing layer functions Also update relevant doc entries. Needs testing to check if this breaks existing IS_LAYER_ON/OFF usage in certain edge cases (namely calling the macros with 0). * Reformat layer check function docs --- quantum/quantum.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/quantum/quantum.h b/quantum/quantum.h index 05eee39ef9..a64336e6f1 100644 --- a/quantum/quantum.h +++ b/quantum/quantum.h @@ -258,8 +258,11 @@ void set_single_persistent_default_layer(uint8_t default_layer); void tap_random_base64(void); -#define IS_LAYER_ON(layer) (layer_state & (1UL << (layer))) -#define IS_LAYER_OFF(layer) (~layer_state & (1UL << (layer))) +#define IS_LAYER_ON(layer) layer_state_is(layer) +#define IS_LAYER_OFF(layer) !layer_state_is(layer) + +#define IS_LAYER_ON_STATE(state, layer) layer_state_cmp(state, layer) +#define IS_LAYER_OFF_STATE(state, layer) !layer_state_cmp(state, layer) void matrix_init_kb(void); void matrix_scan_kb(void);