diff options
author | Stefan Kerkmann <karlk90@pm.me> | 2022-08-15 16:40:51 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-15 16:40:51 +0200 |
commit | 8ce946b5c8e7026b5d7337becf4719e2795af9bb (patch) | |
tree | c21425d58da94308273a1b146b4090ddbe3c055d | |
parent | 5e6175a553dd840a1a43b420097c126ecf770f14 (diff) | |
download | qmk_firmware-8ce946b5c8e7026b5d7337becf4719e2795af9bb.tar.gz qmk_firmware-8ce946b5c8e7026b5d7337becf4719e2795af9bb.zip |
[Bug] Add key event check to `is_tap_record` and remove `is_tap_key` (#18063)
-rw-r--r-- | quantum/action.c | 13 | ||||
-rw-r--r-- | quantum/action.h | 1 | ||||
-rw-r--r-- | tests/tap_hold_configurations/default_mod_tap/test_tap_hold.cpp | 4 |
3 files changed, 4 insertions, 14 deletions
diff --git a/quantum/action.c b/quantum/action.c index 83f6e2a970..6b2e9104e0 100644 --- a/quantum/action.c +++ b/quantum/action.c @@ -1089,16 +1089,11 @@ void clear_keyboard_but_mods_and_keys() { * * FIXME: Needs documentation. */ -bool is_tap_key(keypos_t key) { - action_t action = layer_switch_get_action(key); - return is_tap_action(action); -} - -/** \brief Utilities for actions. (FIXME: Needs better description) - * - * FIXME: Needs documentation. - */ bool is_tap_record(keyrecord_t *record) { + if (IS_NOEVENT(record->event)) { + return false; + } + #ifdef COMBO_ENABLE action_t action; if (record->keycode) { diff --git a/quantum/action.h b/quantum/action.h index 08e1f6ac29..2bc46429b2 100644 --- a/quantum/action.h +++ b/quantum/action.h @@ -105,7 +105,6 @@ void clear_keyboard(void); void clear_keyboard_but_mods(void); void clear_keyboard_but_mods_and_keys(void); void layer_switch(uint8_t new_layer); -bool is_tap_key(keypos_t key); bool is_tap_record(keyrecord_t *record); bool is_tap_action(action_t action); diff --git a/tests/tap_hold_configurations/default_mod_tap/test_tap_hold.cpp b/tests/tap_hold_configurations/default_mod_tap/test_tap_hold.cpp index 687a4e0318..e798265623 100644 --- a/tests/tap_hold_configurations/default_mod_tap/test_tap_hold.cpp +++ b/tests/tap_hold_configurations/default_mod_tap/test_tap_hold.cpp @@ -140,8 +140,6 @@ TEST_F(DefaultTapHold, tap_regular_key_while_layer_tap_key_is_held) { } TEST_F(DefaultTapHold, tap_mod_tap_hold_key_two_times) { - GTEST_SKIP() << "TODO:Holding a modtap key results in out of bounds access to the keymap, this is a bug in QMK."; - TestDriver driver; InSequence s; auto mod_tap_hold_key = KeymapKey(0, 1, 0, SFT_T(KC_P)); @@ -175,8 +173,6 @@ TEST_F(DefaultTapHold, tap_mod_tap_hold_key_two_times) { } TEST_F(DefaultTapHold, tap_mod_tap_hold_key_twice_and_hold_on_second_time) { - GTEST_SKIP() << "TODO:Holding a modtap key results in out of bounds access to the keymap, this is a bug in QMK."; - TestDriver driver; InSequence s; auto mod_tap_hold_key = KeymapKey(0, 1, 0, SFT_T(KC_P)); |