diff options
author | Chris Lewis <chris@chrislewisdev.com> | 2019-02-22 02:22:46 +1100 |
---|---|---|
committer | MechMerlin <30334081+mechmerlin@users.noreply.github.com> | 2019-02-21 07:22:46 -0800 |
commit | c1c5922aae7b60b7c7d13d3769350eed9dda17ab (patch) | |
tree | 7c3805d9b949ef2d802bd3df4e9238662a5cdc0b /quantum/quantum.c | |
parent | 9f1d781fcb7129a07e671a46461e501e3f1ae59d (diff) | |
download | qmk_firmware-c1c5922aae7b60b7c7d13d3769350eed9dda17ab.tar.gz qmk_firmware-c1c5922aae7b60b7c7d13d3769350eed9dda17ab.zip |
Velocikey: Match RGB animation speed to typing speed (#3754)
* Draft commit of typing speed RGB control
* More information in the readme
* Support all RGB animation modes (Fixes #1)
* Added support for all RGB light modes to use typing speed
Except christmas lights because that is seizure-inducing at high speeds!
* Introduced a value range specific to each RGB mode
Because some modes are a little too much when running at full speed!
* Update readme.md
* Update readme.md
* Re-arrange typing_speed definitions (Fixes #5) (#6)
* Re-arrange variable definitions to avoid including quantum.h from rgblight.c
* Fix a compilation error when trying to run make test:all
* Tweaks to the typing speed decay rate
* Renamed to momentum; moved implementation into dedicated files
* Groundwork for toggling momentum on/off (currently always on)
* Add EEPROM toggle for momentum-matching
* Moved momentum out of RGBLIGHT_ENABLE toggles so it's more generic
* Move momentum decay task out of rgblight_task()
* Fix missing momentum.h in lufa.c
* Experimental LED support (untested)
* Draft commit of typing speed RGB control
* More information in the readme
* Support all RGB animation modes (Fixes #1)
* Added support for all RGB light modes to use typing speed
Except christmas lights because that is seizure-inducing at high speeds!
* Introduced a value range specific to each RGB mode
Because some modes are a little too much when running at full speed!
* Update readme.md
* Update readme.md
* Re-arrange typing_speed definitions (Fixes #5) (#6)
* Re-arrange variable definitions to avoid including quantum.h from rgblight.c
* Fix a compilation error when trying to run make test:all
* Tweaks to the typing speed decay rate
* Renamed to momentum; moved implementation into dedicated files
* Groundwork for toggling momentum on/off (currently always on)
* Add EEPROM toggle for momentum-matching
* Moved momentum out of RGBLIGHT_ENABLE toggles so it's more generic
* Move momentum decay task out of rgblight_task()
* Fix missing momentum.h in lufa.c
* Added documentation
* Renamed feature to velocikey
* Reverted readme to original state
* Correct the readme title
* Updated feature name in the docs
* Update EECONFIG name
* Add compile-time toggles for velocikey
* Update feature documentation
* Revert "Merge branch 'led-support' into master"
This reverts commit e123ff5febf61639b9a9020748e1c2e2313460ff, reversing
changes made to df111a55b9d4929182e16108b1c0ead15b16df97.
* Move velocikey EECONFIG definition to depend on VELOCIKEY_ENABLE
* Rename decay_task function to decelerate
* Apply suggestions from code review
Co-Authored-By: chrislewisdev <chris@chrislewisdev.com>
* Re-order eeconfig definitions
* Apply coding conventions
* Apply #ifdef check in lufa.c
* Refactored interval time checks into one functionc
* Small rename
* Fix unused function error for layouts not using all rgb effects
* Only update EEPROM if Velocikey is enabled
* Incorporate code review feedback
* Small adjustment to top-end decay rate
* Add Velocikey documentation to table of contents
* Bring tetris:default keymap size down by disabling audio
Diffstat (limited to 'quantum/quantum.c')
-rw-r--r-- | quantum/quantum.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/quantum/quantum.c b/quantum/quantum.c index cb4d5ee80..46d404029 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c | |||
@@ -47,6 +47,10 @@ extern backlight_config_t backlight_config; | |||
47 | #include "process_midi.h" | 47 | #include "process_midi.h" |
48 | #endif | 48 | #endif |
49 | 49 | ||
50 | #ifdef VELOCIKEY_ENABLE | ||
51 | #include "velocikey.h" | ||
52 | #endif | ||
53 | |||
50 | #ifdef HAPTIC_ENABLE | 54 | #ifdef HAPTIC_ENABLE |
51 | #include "haptic.h" | 55 | #include "haptic.h" |
52 | #endif | 56 | #endif |
@@ -251,6 +255,10 @@ bool process_record_quantum(keyrecord_t *record) { | |||
251 | // return false; | 255 | // return false; |
252 | // } | 256 | // } |
253 | 257 | ||
258 | #ifdef VELOCIKEY_ENABLE | ||
259 | if (velocikey_enabled() && record->event.pressed) { velocikey_accelerate(); } | ||
260 | #endif | ||
261 | |||
254 | #ifdef TAP_DANCE_ENABLE | 262 | #ifdef TAP_DANCE_ENABLE |
255 | preprocess_tap_dance(keycode, record); | 263 | preprocess_tap_dance(keycode, record); |
256 | #endif | 264 | #endif |
@@ -568,7 +576,14 @@ bool process_record_quantum(keyrecord_t *record) { | |||
568 | #endif | 576 | #endif |
569 | return false; | 577 | return false; |
570 | #endif // defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) | 578 | #endif // defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) |
571 | #ifdef PROTOCOL_LUFA | 579 | #ifdef VELOCIKEY_ENABLE |
580 | case VLK_TOG: | ||
581 | if (record->event.pressed) { | ||
582 | velocikey_toggle(); | ||
583 | } | ||
584 | return false; | ||
585 | #endif | ||
586 | #ifdef PROTOCOL_LUFA | ||
572 | case OUT_AUTO: | 587 | case OUT_AUTO: |
573 | if (record->event.pressed) { | 588 | if (record->event.pressed) { |
574 | set_output(OUTPUT_AUTO); | 589 | set_output(OUTPUT_AUTO); |