diff options
Diffstat (limited to 'keyboards/satt/comet46/lib/modifier_state_reader.c')
| -rw-r--r-- | keyboards/satt/comet46/lib/modifier_state_reader.c | 18 | 
1 files changed, 18 insertions, 0 deletions
| diff --git a/keyboards/satt/comet46/lib/modifier_state_reader.c b/keyboards/satt/comet46/lib/modifier_state_reader.c new file mode 100644 index 0000000000..518eef92a6 --- /dev/null +++ b/keyboards/satt/comet46/lib/modifier_state_reader.c @@ -0,0 +1,18 @@ +#include <stdio.h> +#include "comet46.h" + +char modifier_state_str[22]; + +const char *read_modifier_state(void) { +  uint8_t modifiers = get_mods(); +  uint8_t one_shot = get_oneshot_mods(); +   +  snprintf(modifier_state_str, sizeof(modifier_state_str), "Mod: %s%s%s%s", +    (modifiers & MODS_CTRL_MASK || one_shot & MODS_CTRL_MASK) ? "CTL " : "", +    (modifiers & MODS_GUI_MASK || one_shot & MODS_GUI_MASK) ? "GUI " : "", +    (modifiers & MODS_ALT_MASK || one_shot & MODS_ALT_MASK) ? "ALT " : "", +    (modifiers & MODS_SHIFT_MASK || one_shot & MODS_SHIFT_MASK) ? "SFT" : "" +  ); + +  return modifier_state_str; +} | 
