summaryrefslogtreecommitdiff
path: root/tmk_core/common/action_util.h
AgeCommit message (Collapse)Author
2020-05-14One shot support for swap hands (#8590)Zsolt Parragi
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
2019-08-30clang-format changesskullY
2019-02-05Add One Shot Key callbacks (#4697)Thomas Baart
* Added callbacks to one shot modifier changes * Altered signature of callback functions * Reordered the callback methods, shortened brief documentation * Added One Shot Modifier callback documentation * First attempt at unit tests * Revert "First attempt at unit tests" This reverts commit 5ec21a782202c0d74cf21cb852bd319f0c8b4842. * Simplified oneshot function implementations * Made clear_oneshot_locked_mods to be conform action_util.h, adhering to the (void) signature * Made used datatypes for oneshot mods consistently unsigned integers * Corrected callback to call clear callback when clear_oneshot_locked_mods is invoked * Simplified oneshot equals statements * Corrected return type and signature of get and set oneshot locked mods * Consolidated one shot callbacks, added initial layer callback version * Fixed non-updating one shot layer variable after timeout or other clear, added code comments * Added better one shot key docs
2017-06-18Move functions for adding keys from to reports to report.hFred Sundvik
2017-06-18Move functionality from action_util to reportFred Sundvik
The functions also takes report_kebyoard_t parameters, so that they can be used elsewhere.
2016-05-05Adds oneshot layer and oneshot tap toggling (#308)Thiago Alves
This commit is mostly a cherry-pick from `ahtn` at https://github.com/tmk/tmk_keyboard/pull/255. These are the changes: * Adds ACTION_LAYER_ONESHOT * Adds ONESHOT_TAP_TOGGLE * Mentions sticky keys in the docs on oneshot.
2016-03-08Fix #156: clear weak mods on every key pressDidier Loiseau
- new macro_mods bit field for mods applied by macros - weak_mods now only used for ACT_{L,R}MODS (i.e. LSFT, RSFT, LCTL etc.) - clear the _weak_ mods on every key *pressed* such that LSFT etc. can no more interfere with the next key
2015-04-10Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core'tmk