66 lines
1.5 KiB
C
66 lines
1.5 KiB
C
|
#include "keymap.h"
|
||
|
#include "tapdance.h"
|
||
|
|
||
|
// Called on every tap
|
||
|
void td_screenshot_dance(qk_tap_dance_state_t *state, void *user_data) {}
|
||
|
|
||
|
// Called when action finishes
|
||
|
void td_screenshot_finished(qk_tap_dance_state_t *state, void *user_data) {
|
||
|
dance_state[1].step = dance_step(state);
|
||
|
switch (dance_state[1].step) {
|
||
|
case SINGLE_TAP:
|
||
|
register_code16(KC_PRINT_SCREEN);
|
||
|
break;
|
||
|
case DOUBLE_TAP:
|
||
|
register_code16(LSFT(KC_PRINT_SCREEN));
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Called when action resets
|
||
|
void td_screenshot_reset(qk_tap_dance_state_t *state, void *user_data) {
|
||
|
wait_ms(10);
|
||
|
switch (dance_state[1].step) {
|
||
|
case SINGLE_TAP:
|
||
|
unregister_code16(KC_PSCREEN);
|
||
|
break;
|
||
|
case DOUBLE_TAP:
|
||
|
unregister_code16(LSFT(KC_PSCREEN));
|
||
|
break;
|
||
|
}
|
||
|
dance_state[1].step = 0;
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
// Called on every tap
|
||
|
void td_ocr_dance(qk_tap_dance_state_t *state, void *user_data) {}
|
||
|
|
||
|
// Called when action finishes
|
||
|
void td_ocr_finished(qk_tap_dance_state_t *state, void *user_data) {
|
||
|
dance_state[1].step = dance_step(state);
|
||
|
switch (dance_state[1].step) {
|
||
|
case SINGLE_TAP:
|
||
|
register_code16(LCTL(KC_PSCREEN));
|
||
|
break;
|
||
|
case DOUBLE_TAP:
|
||
|
register_code16(LCTL(LSFT(KC_PSCREEN)));
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Called when action resets
|
||
|
void td_ocr_reset(qk_tap_dance_state_t *state, void *user_data) {
|
||
|
wait_ms(10);
|
||
|
switch (dance_state[1].step) {
|
||
|
case SINGLE_TAP:
|
||
|
unregister_code16(LCTL(KC_PRINT_SCREEN));
|
||
|
break;
|
||
|
case DOUBLE_TAP:
|
||
|
unregister_code16(LCTL(LSFT(KC_PSCREEN)));
|
||
|
break;
|
||
|
}
|
||
|
dance_state[1].step = 0;
|
||
|
}
|
||
|
|