~ruther/qmk_firmware

ref: c2a81d8fd4d1b90cb0f2af8d6b97b51ec1fb5806 qmk_firmware/keyboards/satt/comet46/lib/modifier_state_reader.c -rw-r--r-- 606 bytes
c2a81d8f — Joel Challis Revert "fix 60_hhkb ASCII diagram (#21813)" (#21869) 2 years ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include "quantum.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;
}