diff options
author | Guillaume Gérard <1322081+GreatWizard@users.noreply.github.com> | 2020-10-28 18:20:06 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-28 10:20:06 -0700 |
commit | c745cbb77a66a44549ee1ab3b1998c495c1a1ca5 (patch) | |
tree | a947f2215dcda13fac95b2620b70bc095b8d2d14 /users/greatwizard/tap_dances.h | |
parent | 6b1ae7e6aa7180b00759b5692d2ea5bd0303c566 (diff) | |
download | qmk_firmware-c745cbb77a66a44549ee1ab3b1998c495c1a1ca5.tar.gz qmk_firmware-c745cbb77a66a44549ee1ab3b1998c495c1a1ca5.zip |
[Keymap] greatwizard userspace and ortho 4x12 and 5x12 keymaps (#9584)
Diffstat (limited to 'users/greatwizard/tap_dances.h')
-rw-r--r-- | users/greatwizard/tap_dances.h | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/users/greatwizard/tap_dances.h b/users/greatwizard/tap_dances.h new file mode 100644 index 0000000000..944ae45553 --- /dev/null +++ b/users/greatwizard/tap_dances.h @@ -0,0 +1,65 @@ +/* Copyright 2020 Guillaume Gérard + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ +#pragma once + +#include QMK_KEYBOARD_H +#include "greatwizard.h" + +typedef struct { + bool is_press_action; + uint8_t state; +} tap; + +enum { + SINGLE_TAP = 1, + SINGLE_HOLD, + DOUBLE_TAP, + DOUBLE_HOLD, + DOUBLE_SINGLE_TAP, + TRIPLE_TAP, + TRIPLE_HOLD +}; + +enum { +#ifdef TAP_DANCE_LALT_GIT + TD_LALT_GIT, +#endif +#ifdef TAP_DANCE_LSFT_CAPS + TD_LSFT_CAPS, +# ifdef LAYERS_PROGRAMMER + TD_PG_LSFT_CAPS, +# endif +#endif +}; + +uint8_t cur_dance(qk_tap_dance_state_t *state); + +#ifdef TAP_DANCE_LALT_GIT +void lalt_finished(qk_tap_dance_state_t *state, void *user_data); +void lalt_reset(qk_tap_dance_state_t *state, void *user_data); +# define TD_LALT TD(TD_LALT_GIT) +#endif + +#ifdef TAP_DANCE_LSFT_CAPS +# ifdef LAYERS_PROGRAMMER +void pg_lsft_finished(qk_tap_dance_state_t *state, void *user_data); +void pg_lsft_reset(qk_tap_dance_state_t *state, void *user_data); +# endif +#endif + +#ifdef TAP_DANCE_LSFT_CAPS +# define TD_LSCP TD(TD_LSFT_CAPS) +#endif |