Commit Graph

52 Commits (5d36118eaa2b7573090f4e1f42b6715f432bc7bb)

Author SHA1 Message Date
skullydazed 7c9d5ace14 Generate API docs from source code comments (#2491)
* Generate api docs from source code

* Add a bunch of doxygen comments

* more doxygen comments

* Add the in-progress api docs

* script to generate docs from travis

* Add doc generation to the travis job

* make travis_docs.sh commit the work it does

* make sure the docs script exits cleanly
7 years ago
Joe Wasson 5d771039ad Fix swap-hands tapping.
This is an inelegant hack for #2522 but makes things work. Basically we give `action.c` a chance to handle the hold event early so that we can swap the keyboard for later keys. Later, to allow the hold to happen again quickly we nuke the key record so that tapping is reset. I tried to find a cleaner way, honestly.
7 years ago
Joe Wasson 7230923b05 Rename ONEHAND_ENABLE to SWAP_HANDS_ENABLE for consistency 7 years ago
Balz Guenat 4931510ad3 backlight breathing overhaul (#2187)
* add breathing to bananasplit

* backlight breathing overhaul

* fix the backlight_tick thing.

* fix for vision_division backlight

* fix a few keymaps and probably break breathing for some weirdly set-up boards.

* remove BL_x keycodes because they made unreasonable assumptions

* some fixes for BL keycodes

* integer cie lightness scaling

* use cie lightness for non-breathing backlight and make breathing able to reach true max brightness
7 years ago
tsankuanglee 04b9b62bdc RETRO_TAPPING (#1922)
* add RETRO_TAP: tap anyway, even after TAP_TERM, if no interruption

* consistent variable name

* add option doc

* change name for consistency

* make RETRO_TAPPING default to off
7 years ago
Joe Martin b91ffba4be #1792 added in waits from tmk for locking switches
fixes #1792
7 years ago
Carlos Quiroz 74d752b531 Remove noisy debug line 8 years ago
Carlos Quiroz 3ab0f4d9e5 Deactivate oneshot mods once timedout 8 years ago
Jack Humbert b6c60333e4 Re-enable mouse buttons 8 years ago
dbroqua 81e85a1a4e - Added integration of IBM Trackpoint 8 years ago
jerryen 9c284786e7 Workaround for the macOS caps lock delay (#1308)
* Add 80ms delay for KC_CAPS when used as a tap key

Workaround for the macOS caps lock delay

* Revert "Increase TAPPING_TERM for the Clueboard"

This reverts commit a74e69e9fa.
8 years ago
Nephiel bd2c0b9648 Call led_set for layer action events to update LEDs on layer changes 8 years ago
Fred Sundvik 07fc34e962 Fix warnings when ACTION_ONESHOT is disabled 8 years ago
Priyadi Iman Nurcahyo c68e596f32 Implement faux-clicky feature 8 years ago
SjB 45e0d09414 moved oneshot cancellation code outside of process_record.
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
8 years ago
SjB 6f44ca7a59 oneshot timeout would only timeout after an event.
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.
8 years ago
Didier Loiseau d430999047 Fix issue #772 Meh and Hyper not working 8 years ago
Joe Wasson 8090f6b499 Improve one-hand support by adding more actions and tap keys. 8 years ago
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.
8 years ago
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?
9 years ago
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
9 years ago
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.
9 years ago
Jack Humbert 2bbf3d5820 stops forcing debug_action 9 years ago
IBNobody d5b72e7bde Fixed many compiler warnings related to print being disabled 9 years ago
Erez Zukerman 153a6fb0d3 Merge pull request #182 from Vifon/modifier-release-fix
Fix the layer-dependent modifiers handling
9 years ago
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)
9 years ago
Wojciech Siewierski 567f256c5d Refactor the source layer cache encoding 9 years ago
Wojciech Siewierski 47dd29513e Merge branch 'master' of https://github.com/jackhumbert/qmk_firmware into modifier-release-fix 9 years ago
Wojciech Siewierski 4dce7258d1 Cleanup after merge
- remove a superfluous parenthesis
- wrap lines longer than 80 characters
- add const specifiers where appropriate
- remove unnecessary casts
9 years ago
eltang 5a9091689c Update action.c 9 years ago
eltang 6c8e374d57 Update action.c 9 years ago
eltang f4f592910c Update action.c 9 years ago
eltang da101b8866 Update action.c 9 years ago
eltang fddccc95fe Update action.c 9 years ago
eltang 680301e3e3 Update action.c 9 years ago
Eric-L-T f5365d1c1c Update action.c 9 years ago
Eric-L-T 307f1dee21 Update action.c 9 years ago
Eric-L-T 420fc8620b Update action.c 9 years ago
Eric-L-T 9a35f01c55 Update action.c 9 years ago
Eric-L-T 317455178d Update action.c 9 years ago
Damien Pollet acd64aa841 Rename function to be keyboard-specific 9 years ago
Damien Pollet ef21a855e6 Add per-event user hook function to QMK 9 years ago
Wojciech Siewierski b4f442dfea Cut the memory consumption of PREVENT_STUCK_MODIFIERS in half 9 years ago
Wojciech Siewierski a5cdc3aab1 Expose the pressed_actions_cache global variable 9 years ago
Wojciech Siewierski 73cb87740b Always provide an implementation of process_action_nocache 9 years ago
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.
9 years ago
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
9 years ago
Wojciech Siewierski 8d55a12a95 Document the issue of stuck modifiers 9 years ago
Wojciech Siewierski c2480884aa Fix the layer-dependent modifiers handling
Closes #181.
9 years ago
Erez Zukerman f024a462cd Fixes rolling combos for mod-tap keys 9 years ago