aboutsummaryrefslogtreecommitdiffstats
path: root/tmk_core/common/action.c
AgeCommit message (Collapse)Author
2017-02-13Implement faux-clicky featureGravatar Priyadi Iman Nurcahyo
2017-01-29moved oneshot cancellation code outside of process_record.Gravatar SjB
The oneshot cancellation code do not depend on the action_tapping_process and since process_record get called via the action_tapping_process logic moved the oneshot cancellation code into the action_exec function just before the action_tapping_process call
2017-01-15oneshot timeout would only timeout after an event.Gravatar SjB
After setting a ONESHOT_TIMEOUT value, the oneshot layer state would not expire without an event being triggered (key pressed). The reason was that in the process_record function we would return priort to execute the process_action function if it detected a NOEVENT cycle. The process_action contained the codes to timeout the oneshot layer state. The codes to clear the oneshot layer state have been move just in front of where we check for the NOEVENT cycle in the process_record function.
2016-09-23Fix issue #772 Meh and Hyper not workingGravatar Didier Loiseau
2016-08-20Improve one-hand support by adding more actions and tap keys.Gravatar Joe Wasson
2016-08-20Add one-hand support.Gravatar Joe Wasson
This adds an action, `ACTION_SWAP_HANDS`, that swaps the the keys on the keyboard across a keymap-defined hemisphere in order to support one-hand typing without requiring a separate one-handed layer. See updated `doc/keymap.md` for more information.
2016-05-15splits process_action up to handle records separately (#329)Gravatar Jack Humbert
* implements leader key for planck experimental * allows override of leader timeout * adds ability to use the leader key in seq * fixes leader keycode * adds chording prototype * fixes keycode detection * moves music mode to quantum.c * disables chording by default * adds music sequencer functionality * implements audio/music functions in quantum.c * splits up process_action to allow independent processing of actions * merging?
2016-05-15Leader key implementation (#326)Gravatar Erez Zukerman
* implements leader key for planck experimental * allows override of leader timeout * adds ability to use the leader key in seq * fixes leader keycode * adds chording prototype * fixes keycode detection * moves music mode to quantum.c * disables chording by default * updates process_action functions to return bool
2016-05-05Adds oneshot layer and oneshot tap toggling (#308)Gravatar 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-04-28stops forcing debug_actionGravatar Jack Humbert
2016-04-17Fixed many compiler warnings related to print being disabledGravatar IBNobody
2016-04-06Merge pull request #182 from Vifon/modifier-release-fixGravatar Erez Zukerman
Fix the layer-dependent modifiers handling
2016-04-06Fix issue #221: LGUI(KC_LSFT) does not workGravatar Didier Loiseau
on mod keys, register LGUI, LSFT etc. as normal mods instead of weak mods: - they won't be cleared when pressing another key (#188) - they won't be cleared by layer switching - LSFT(KC_LGUI) will now have the same behavior as LGUI(KC_LSFT)
2016-04-05Refactor the source layer cache encodingGravatar Wojciech Siewierski
2016-04-03Merge branch 'master' of https://github.com/jackhumbert/qmk_firmware into ↵Gravatar Wojciech Siewierski
modifier-release-fix
2016-04-02Cleanup after mergeGravatar Wojciech Siewierski
- remove a superfluous parenthesis - wrap lines longer than 80 characters - add const specifiers where appropriate - remove unnecessary casts
2016-04-02Update action.cGravatar eltang
2016-04-02Update action.cGravatar eltang
2016-04-02Update action.cGravatar eltang
2016-04-02Update action.cGravatar eltang
2016-04-02Update action.cGravatar eltang
2016-04-02Update action.cGravatar eltang
2016-04-01Update action.cGravatar Eric-L-T
2016-04-01Update action.cGravatar Eric-L-T
2016-04-01Update action.cGravatar Eric-L-T
2016-04-01Update action.cGravatar Eric-L-T
2016-04-01Update action.cGravatar Eric-L-T
2016-03-28Rename function to be keyboard-specificGravatar Damien Pollet
2016-03-28Add per-event user hook function to QMKGravatar Damien Pollet
2016-03-27Cut the memory consumption of PREVENT_STUCK_MODIFIERS in halfGravatar Wojciech Siewierski
2016-03-15Expose the pressed_actions_cache global variableGravatar Wojciech Siewierski
2016-03-15Always provide an implementation of process_action_nocacheGravatar Wojciech Siewierski
2016-03-13process_action may be called either with key cache or without itGravatar Wojciech Siewierski
If one wants to temporarily disable the key cache (for example because it interferes with a macro), `disable_action_cache` must be set to `true`. `process_action_nocache` is a simple wrapper doing just that for a single call.
2016-03-08Fix #156: clear weak mods on every key pressGravatar Didier 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
2016-03-08Document the issue of stuck modifiersGravatar Wojciech Siewierski
2016-03-05Fix the layer-dependent modifiers handlingGravatar Wojciech Siewierski
Closes #181.
2015-10-28Fixes rolling combos for mod-tap keysGravatar Erez Zukerman
2015-04-23Remove unneeded tap delays #201Gravatar Jun Wako
2015-04-10Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core'Gravatar tmk