aboutsummaryrefslogtreecommitdiff
path: root/users/callum/swapper.h
diff options
context:
space:
mode:
Diffstat (limited to 'users/callum/swapper.h')
-rw-r--r--users/callum/swapper.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/users/callum/swapper.h b/users/callum/swapper.h
new file mode 100644
index 000000000..ad47fd96c
--- /dev/null
+++ b/users/callum/swapper.h
@@ -0,0 +1,20 @@
1#pragma once
2
3#include QMK_KEYBOARD_H
4
5// Implements cmd-tab like behaviour on a single key. On first tap of trigger
6// cmdish is held and tabish is tapped -- cmdish then remains held until some
7// other key is hit or released. For example:
8//
9// trigger, trigger, a -> cmd down, tab, tab, cmd up, a
10// nav down, trigger, nav up -> nav down, cmd down, tab, cmd up, nav up
11//
12// This behaviour is useful for more than just cmd-tab, hence: cmdish, tabish.
13void update_swapper(
14 bool *active,
15 uint16_t cmdish,
16 uint16_t tabish,
17 uint16_t trigger,
18 uint16_t keycode,
19 keyrecord_t *record
20);