diff options
author | Florian Didron <fdidron@users.noreply.github.com> | 2019-04-19 08:16:24 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-04-19 08:16:24 +0900 |
commit | 0612c9968bf34fc1acde2b44ac9fd590f97ffe34 (patch) | |
tree | f75e3e6470de923af1a7b538521aa75f2f316583 | |
parent | 021df9d02819de16b14b3bf4f4ccc14e6d9e86d5 (diff) | |
parent | c8cbf4733a085d5d3c1f5b321362b54b582d66f1 (diff) |
Merge pull request #17 from ErgoDox-EZ/fix/eager_pr_bug
Fix the Eager Per Row debouncing bug
-rw-r--r-- | changelog.md | 14 | ||||
-rw-r--r-- | quantum/debounce/eager_pr.c | 3 |
2 files changed, 9 insertions, 8 deletions
diff --git a/changelog.md b/changelog.md index e3f711eeb1..c2645bb2aa 100644 --- a/changelog.md +++ b/changelog.md @@ -1,7 +1,7 @@ -04-12-2019 - Add AltGr/RALT support to Send String (qmk#4046) -04-12-2019 - Port DIRECT_PINS from split_common/matrix.c to matrix.c (qmk#5091) -04-12-2019 - Enhancement for Eager debouncing (and Ergodox EZ host sleep fix) (qmk#5621) -04-16-2019 - Fix logic for Combo feature (qmk#5610) -04-16-2019 - Fix info.json for Ergodox EZ -04-16-2019 - Add support for WS2812 based RGB Matrix -04-18-2019 - Set ErgodoxEZ default debounce to 5ms +04-12-2019 - Add AltGr/RALT support to Send String (qmk#4046) +04-12-2019 - Port DIRECT_PINS from split_common/matrix.c to matrix.c (qmk#5091) +04-12-2019 - Enhancement for Eager debouncing (and Ergodox EZ host sleep fix) (qmk#5621) +04-16-2019 - Fix logic for Combo feature (qmk#5610) +04-16-2019 - Fix info.json for Ergodox EZ +04-16-2019 - Add support for WS2812 based RGB Matrix +04-18-2019 - Fix Eager Per Row Debouncing bug diff --git a/quantum/debounce/eager_pr.c b/quantum/debounce/eager_pr.c index 5b460f6630..26b17ed295 100644 --- a/quantum/debounce/eager_pr.c +++ b/quantum/debounce/eager_pr.c @@ -48,11 +48,12 @@ void debounce_init(uint8_t num_rows) { void debounce(matrix_row_t raw[], matrix_row_t cooked[], uint8_t num_rows, bool changed) { uint8_t current_time = timer_read() % MAX_DEBOUNCE; + bool needed_update = counters_need_update; if (counters_need_update) { update_debounce_counters(num_rows, current_time); } - if (changed) { + if (changed || (needed_update && !counters_need_update)) { transfer_matrix_values(raw, cooked, num_rows, current_time); } } |