Commit graph

34 commits

Author SHA1 Message Date
Joe Wasson dd37860160 Add one-hand support.
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-08-20 17:46:53 -07:00
Jack Humbert bf5c2ccee5 splits process_action up to handle records separately (#329)
* 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-15 00:47:25 -04:00
Erez Zukerman 1a8c0dd22d Leader key implementation (#326)
* 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-15 00:27:32 -04:00
Thiago Alves 74e97eefd7 Adds oneshot layer and oneshot tap toggling (#308)
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-05-05 21:41:37 -04:00
Jack Humbert 2bbf3d5820 stops forcing debug_action 2016-04-28 23:23:33 -04:00
IBNobody d5b72e7bde Fixed many compiler warnings related to print being disabled 2016-04-17 12:54:32 -05:00
Erez Zukerman 153a6fb0d3 Merge pull request #182 from Vifon/modifier-release-fix
Fix the layer-dependent modifiers handling
2016-04-06 22:47:31 +03:00
Didier Loiseau 08871e56f7 Fix issue #221: LGUI(KC_LSFT) does not work
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-06 00:30:50 +02:00
Wojciech Siewierski 567f256c5d Refactor the source layer cache encoding 2016-04-05 11:08:04 +02:00
Wojciech Siewierski 47dd29513e Merge branch 'master' of https://github.com/jackhumbert/qmk_firmware into modifier-release-fix 2016-04-03 11:23:00 +02:00
Wojciech Siewierski 4dce7258d1 Cleanup after merge
- remove a superfluous parenthesis
- wrap lines longer than 80 characters
- add const specifiers where appropriate
- remove unnecessary casts
2016-04-02 19:29:01 +02:00
eltang 5a9091689c Update action.c 2016-04-02 10:00:31 -07:00
eltang 6c8e374d57 Update action.c 2016-04-02 09:59:53 -07:00
eltang f4f592910c Update action.c 2016-04-02 09:34:01 -07:00
eltang da101b8866 Update action.c 2016-04-02 09:29:32 -07:00
eltang fddccc95fe Update action.c 2016-04-02 09:13:13 -07:00
eltang 680301e3e3 Update action.c 2016-04-02 06:48:44 -07:00
Eric-L-T f5365d1c1c Update action.c 2016-04-01 20:04:13 -07:00
Eric-L-T 307f1dee21 Update action.c 2016-04-01 19:54:02 -07:00
Eric-L-T 420fc8620b Update action.c 2016-04-01 18:26:43 -07:00
Eric-L-T 9a35f01c55 Update action.c 2016-04-01 13:49:03 -07:00
Eric-L-T 317455178d Update action.c 2016-04-01 13:43:49 -07:00
Damien Pollet acd64aa841 Rename function to be keyboard-specific 2016-03-28 16:30:00 +02:00
Damien Pollet ef21a855e6 Add per-event user hook function to QMK 2016-03-28 16:30:00 +02:00
Wojciech Siewierski b4f442dfea Cut the memory consumption of PREVENT_STUCK_MODIFIERS in half 2016-03-27 23:51:46 +02:00
Wojciech Siewierski a5cdc3aab1 Expose the pressed_actions_cache global variable 2016-03-15 16:51:50 +01:00
Wojciech Siewierski 73cb87740b Always provide an implementation of process_action_nocache 2016-03-15 16:03:30 +01:00
Wojciech Siewierski 20dd9c0326 process_action may be called either with key cache or without it
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-13 00:18:20 +01:00
Didier Loiseau b7a81f0419 Fix #156: clear weak mods on every key press
- 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-08 23:14:15 +01:00
Wojciech Siewierski 8d55a12a95 Document the issue of stuck modifiers 2016-03-08 08:48:43 +01:00
Wojciech Siewierski c2480884aa Fix the layer-dependent modifiers handling
Closes #181.
2016-03-05 14:42:17 +01:00
Erez Zukerman f024a462cd Fixes rolling combos for mod-tap keys 2015-10-28 04:19:13 +02:00
Jun Wako 1f4a22ee81 Remove unneeded tap delays #201 2015-04-23 20:18:01 +09:00
tmk 1a02ebcc61 Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00