diff options
author | Stefan Kerkmann <karlk90@pm.me> | 2022-07-07 10:00:40 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-07 10:00:40 +0200 |
commit | 8224f62806b66f0825b68fd8c00436ee57a28e9a (patch) | |
tree | 33e16a84a05073fd439e6a86f09631132a546794 /quantum/debounce/sym_eager_pk.c | |
parent | cca5d3532128a9d1aa2ab39405d935fc132c752d (diff) |
Make debounce() signal changes in the cooked matrix as return value (#17554)
Diffstat (limited to 'quantum/debounce/sym_eager_pk.c')
-rw-r--r-- | quantum/debounce/sym_eager_pk.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/quantum/debounce/sym_eager_pk.c b/quantum/debounce/sym_eager_pk.c index fe3e88bb06..f736d1645c 100644 --- a/quantum/debounce/sym_eager_pk.c +++ b/quantum/debounce/sym_eager_pk.c @@ -49,6 +49,7 @@ static debounce_counter_t *debounce_counters; static fast_timer_t last_time; static bool counters_need_update; static bool matrix_need_update; +static bool cooked_changed; # define DEBOUNCE_ELAPSED 0 @@ -71,8 +72,9 @@ void debounce_free(void) { debounce_counters = NULL; } -void debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed) { +bool debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed) { bool updated_last = false; + cooked_changed = false; if (counters_need_update) { fast_timer_t now = timer_read_fast(); @@ -96,6 +98,8 @@ void debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool transfer_matrix_values(raw, cooked, num_rows); } + + return cooked_changed; } // If the current time is > debounce counter, set the counter to enable input. @@ -132,6 +136,7 @@ static void transfer_matrix_values(matrix_row_t raw[], matrix_row_t cooked[], ui *debounce_pointer = DEBOUNCE; counters_need_update = true; existing_row ^= col_mask; // flip the bit. + cooked_changed = true; } } debounce_pointer++; |