qmk_firmware/tmk_core/common
Zsolt Parragi 805f5cb72b
One shot support for swap hands (#8590)
This commits add the SH_OS keycode, which works similarly to one shot
layers:
* while pressed, the keyboard is swapped
* if no keys were pressed while it was pressed, the next key press is
swapped

SH_OS also supports chaining with one shot layers:
OSL(x) + SH_OS + key interprets the key press on the oneshot layer.

The ONESHOT_TIMEOUT setting used by one shot keys and layers is also
used by oneshot swap hands. In the above chaining scenario the timeout
of the oneshot layer is reset when swap hands is activated.

Resolves #2682
2020-05-14 07:36:55 +10:00
..
arm_atsam format code according to conventions [skip ci] 2020-01-24 02:15:29 +00:00
avr format code according to conventions [skip ci] 2020-04-02 21:59:37 +00:00
chibios Revert "Fix conflicting types for 'tfp_printf' (#8269)" 2020-05-04 09:25:44 -07:00
test Add customisable EEPROM driver selection (#7274) 2020-01-24 12:45:58 +11:00
action.c One shot support for swap hands (#8590) 2020-05-14 07:36:55 +10:00
action.h Fix compile issues related to NO_ACTION_MACRO/FUNCTION and LTO_ENABLE (#8663) 2020-04-09 00:18:30 +01:00
action_code.h One shot support for swap hands (#8590) 2020-05-14 07:36:55 +10:00
action_layer.c Optimization for scanning less layers. (#8311) 2020-05-11 01:04:38 +01:00
action_layer.h Optimization for scanning less layers. (#8311) 2020-05-11 01:04:38 +01:00
action_macro.c
action_macro.h
action_tapping.c Fix bug with layer caching in get_event_keycode (#8693) 2020-04-12 17:27:17 +02:00
action_tapping.h Fix bug with layer caching in get_event_keycode (#8693) 2020-04-12 17:27:17 +02:00
action_util.c One shot support for swap hands (#8590) 2020-05-14 07:36:55 +10:00
action_util.h One shot support for swap hands (#8590) 2020-05-14 07:36:55 +10:00
bootloader.h
bootmagic.c
bootmagic.h
bootmagic_lite.c format code according to conventions [skip ci] 2020-03-21 23:44:27 +00:00
command.c 2020 February 29 Breaking Changes Update (#8064) 2020-02-29 11:59:30 -08:00
command.h
debug.c
debug.h
eeconfig.c Add customisable EEPROM driver selection (#7274) 2020-01-24 12:45:58 +11:00
eeconfig.h VIA Configurator Refactor (#7268) 2020-01-03 12:52:00 -08:00
eeprom.h Add customisable EEPROM driver selection (#7274) 2020-01-24 12:45:58 +11:00
host.c
host.h
host_driver.h
keyboard.c Provide a mechanism for split keyboards to process key press on both halves (#9001) 2020-05-03 00:39:37 +01:00
keyboard.h
keycode.h Add *OPT aliases for *ALT keycodes and macros (#8714) 2020-04-12 11:37:55 -07:00
led.h
magic.c
magic.h
matrix.h Allow 30us matrix delay to be keyboard/user overridable (#8216) 2020-02-21 14:49:33 +11:00
mousekey.c format code according to conventions [skip ci] 2020-03-13 17:24:38 +00:00
mousekey.h Decouple mouse cursor and mouse wheel in accelerated mode (#6685) 2020-03-13 12:49:44 -04:00
nodebug.h
print.c
print.h Revert "Fix conflicting types for 'tfp_printf' (#8269)" 2020-05-04 09:25:44 -07:00
progmem.h Fix `pgm_read_ptr()` define for ARM (#8658) 2020-04-02 16:52:16 +01:00
raw_hid.h
report.c format code according to conventions [skip ci] 2020-03-13 18:44:56 +00:00
report.h Add some usages needed for ChromeOS hosts (#8996) 2020-05-03 10:24:11 +10:00
sendchar.h
sendchar_null.c Initial vusb console support (#8559) 2020-05-03 01:25:39 +01:00
sendchar_uart.c
sleep_led.h
suspend.h
timer.h format code according to conventions [skip ci] 2020-04-11 00:48:16 +00:00
uart.c format code according to conventions [skip ci] 2020-03-06 13:28:11 +00:00
uart.h
util.c Strip out features to allow minimum firmware sizes (#8645) 2020-04-01 21:06:22 +01:00
util.h
virtser.h
wait.h