Skip to content

Commit

Permalink
Add dynamic macro keyboard callbacks (qmk#24142)
Browse files Browse the repository at this point in the history
  • Loading branch information
drashna authored Aug 18, 2024
1 parent faf51c7 commit ab4c13e
Show file tree
Hide file tree
Showing 7 changed files with 86 additions and 294 deletions.
12 changes: 10 additions & 2 deletions keyboards/ergodox_ez/ergodox_ez.c
Original file line number Diff line number Diff line change
Expand Up @@ -382,15 +382,23 @@ static bool is_on = false;
static bool is_dynamic_recording = false;
static uint16_t dynamic_loop_timer;

void dynamic_macro_record_start_user(int8_t direction) {
bool dynamic_macro_record_start_kb(int8_t direction) {
if (!dynamic_macro_record_start_user(direction)) {
return false;
}
is_dynamic_recording = true;
dynamic_loop_timer = timer_read();
ergodox_right_led_1_on();
return true;
}

void dynamic_macro_record_end_user(int8_t direction) {
bool dynamic_macro_record_end_kb(int8_t direction) {
if (!dynamic_macro_record_end_user(direction)) {
return false;
}
is_dynamic_recording = false;
layer_state_set_user(layer_state);
return true;
}
#endif

Expand Down
12 changes: 10 additions & 2 deletions keyboards/ibm/model_m/mschwingen/mschwingen.c
Original file line number Diff line number Diff line change
Expand Up @@ -206,11 +206,19 @@ void update_layer_leds(void) {

#endif

void dynamic_macro_record_start_user(int8_t direction) {
bool dynamic_macro_record_start_kb(int8_t direction) {
if (!dynamic_macro_record_start_user(direction)) {
return false;
}
isRecording++;
blink_cycle_timer = timer_read();
return true;
}

void dynamic_macro_record_end_user(int8_t direction) {
bool dynamic_macro_record_end_kb(int8_t direction) {
if (!dynamic_macro_record_end_user(direction)) {
return false;
}
if (isRecording) isRecording--;
return true;
}
14 changes: 12 additions & 2 deletions keyboards/zsa/moonlander/moonlander.c
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,21 @@ bool is_launching = false;
#ifdef DYNAMIC_MACRO_ENABLE
static bool is_dynamic_recording = false;

void dynamic_macro_record_start_user(int8_t direction) { is_dynamic_recording = true; }
bool dynamic_macro_record_start_kb(int8_t direction) {
if (!dynamic_macro_record_start_user(direction)) {
return false;
}
is_dynamic_recording = true;
return true;
}

void dynamic_macro_record_end_user(int8_t direction) {
bool dynamic_macro_record_end_kb(int8_t direction) {
if (!dynamic_macro_record_end_user(direction)) {
return false;
}
is_dynamic_recording = false;
ML_LED_3(false);
return false;
}
#endif

Expand Down
12 changes: 10 additions & 2 deletions keyboards/zsa/voyager/voyager.c
Original file line number Diff line number Diff line change
Expand Up @@ -21,18 +21,26 @@ static uint32_t dynamic_macro_led(uint32_t trigger_time, void *cb_arg) {
return 100;
}

void dynamic_macro_record_start_user(int8_t direction) {
bool dynamic_macro_record_start_kb(int8_t direction) {
if (!dynamic_macro_record_start_user(direction)) {
return false;
}
if (dynamic_macro_token == INVALID_DEFERRED_TOKEN) {
STATUS_LED_3(true);
dynamic_macro_token = defer_exec(100, dynamic_macro_led, NULL);
}
return true;
}

void dynamic_macro_record_end_user(int8_t direction) {
bool dynamic_macro_record_end_kb(int8_t direction) {
if (!dynamic_macro_record_end_user(direction)) {
return false;
}
if (cancel_deferred_exec(dynamic_macro_token)) {
dynamic_macro_token = INVALID_DEFERRED_TOKEN;
STATUS_LED_3(false);
}
return true;
}
# endif

Expand Down
264 changes: 0 additions & 264 deletions quantum/dynamic_macro.h

This file was deleted.

Loading

0 comments on commit ab4c13e

Please sign in to comment.