qmk_firmware/quantum/process_keycode
Gergely Nagy acda2b793f tap-dance: Do not start a sequence on keyup
There was an odd case, which confused the hell out of tap-dance: suppose
you had a number of tap-dance keys, on a layer, and as part of the
tap-dance, you turned that layer off - or had it on one-shot to begin
with. In this case, the keydown event would trigger the tap-dance key,
but the keyup would not. This had two funky consequences:

- tap-dance did not correctly register that the dance has ended.
- pressing any other tap-dance key would interrupt the previous
  tap-dance, and potentially input unwanted characters.

To fix this, we simply do not start a tap-dance sequence on keyup, only
when it is pressed. This way the previous sequence has enough time to
time-out and finish properly, and we don't get confused.

This fixes algernon/ergodox-layout#107.

Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
2016-09-01 08:32:47 +02:00
..
process_chording.c
process_chording.h
process_leader.c
process_leader.h
process_midi.c
process_midi.h
process_music.c
process_music.h
process_tap_dance.c tap-dance: Do not start a sequence on keyup 2016-09-01 08:32:47 +02:00
process_tap_dance.h tap-dance: Major rework, to make it more reliable 2016-08-17 15:05:58 +02:00
process_unicode.c process_unicode: Add get_unicode_input_mode() 2016-08-31 08:21:52 +02:00
process_unicode.h process_unicode: Add get_unicode_input_mode() 2016-08-31 08:21:52 +02:00