master
Raheman Vaiya 4 years ago
parent ccdca916a3
commit 2740304a6f
  1. 1
      src/config.c
  2. 1
      src/config.h
  3. 7
      src/keyboard.c

@ -49,6 +49,7 @@ static struct {
{ "oneshot", NULL, OP_ONESHOT, { ARG_LAYER } }, { "oneshot", NULL, OP_ONESHOT, { ARG_LAYER } },
{ "toggle", NULL, OP_TOGGLE, { ARG_LAYER } }, { "toggle", NULL, OP_TOGGLE, { ARG_LAYER } },
{ "clearm", NULL, OP_CLEARM, { ARG_MACRO } },
{ "swapm", NULL, OP_SWAPM, { ARG_LAYER, ARG_MACRO } }, { "swapm", NULL, OP_SWAPM, { ARG_LAYER, ARG_MACRO } },
{ "togglem", NULL, OP_TOGGLEM, { ARG_LAYER, ARG_MACRO } }, { "togglem", NULL, OP_TOGGLEM, { ARG_LAYER, ARG_MACRO } },
{ "layerm", NULL, OP_LAYERM, { ARG_LAYER, ARG_MACRO } }, { "layerm", NULL, OP_LAYERM, { ARG_LAYER, ARG_MACRO } },

@ -32,6 +32,7 @@ enum op {
OP_LAYER, OP_LAYER,
OP_LAYOUT, OP_LAYOUT,
OP_CLEAR, OP_CLEAR,
OP_CLEARM,
OP_OVERLOAD, OP_OVERLOAD,
OP_OVERLOAD_TIMEOUT, OP_OVERLOAD_TIMEOUT,
OP_OVERLOAD_TIMEOUT_TAP, OP_OVERLOAD_TIMEOUT_TAP,

@ -434,6 +434,13 @@ static long process_descriptor(struct keyboard *kbd, uint8_t code,
update_mods(kbd, -1, 0); update_mods(kbd, -1, 0);
} }
break;
case OP_CLEARM:
if(pressed) {
clear(kbd);
macro = &kbd->config.macros[d->args[0].idx];
execute_macro(kbd, dl, macro);
}
break; break;
case OP_CLEAR: case OP_CLEAR:
if(pressed) if(pressed)

Loading…
Cancel
Save