* f
* Allow overriding of all functions in wonderland.c
- needed for custom LED functions in keymap.c
* Example of layer indication via LEDs
optimize
* Use newer led_update_kb and led_update_user hooks
- these allow overriding without use of __attribute((weak))__
* Update led documentation a bit
- clarify some of the wording around how to use led_update_user
* Update led_update_user example
* Update audio example to be complete
* trailing spaces smh
* spaces
* spaces
* smh
* Less code is good
* Update docs/custom_quantum_functions.md
Co-Authored-By: fauxpark <fauxpark@gmail.com>
* Update docs/custom_quantum_functions.md
Co-Authored-By: fauxpark <fauxpark@gmail.com>
* Update docs/custom_quantum_functions.md
Co-Authored-By: fauxpark <fauxpark@gmail.com>
* Update docs/custom_quantum_functions.md
Co-Authored-By: fauxpark <fauxpark@gmail.com>
* Update docs/custom_quantum_functions.md
Co-Authored-By: fauxpark <fauxpark@gmail.com>
* Update docs/custom_quantum_functions.md
Co-Authored-By: fauxpark <fauxpark@gmail.com>
@ -114,7 +114,15 @@ Two more deprecated functions exist that provide the LED state as a `uint8_t`:
This function will be called when the state of one of those 5 LEDs changes. It receives the LED state as a struct parameter.
This function will be called when the state of one of those 5 LEDs changes. It receives the LED state as a struct parameter.
You must return either `true` or `false` from this function, depending on whether you want to override the keyboard-level implementation.
By convention, return `true` from `led_update_user()` to get the `led_update_kb()` hook to run its code, and
return `false` when you would prefer not to run the code in `led_update_kb()`.
Some examples include:
- overriding the LEDs to use them for something else like layer indication
- return `false` because you do not want the `_kb()` function to run, as it would override your layer behavior.
- play a sound when an LED turns on or off.
- return `true` because you want the `_kb` function to run, and this is in addition to the default LED behavior.
?> Because the `led_set_*` functions return `void` instead of `bool`, they do not allow for overriding the keyboard LED control, and thus it's recommended to use `led_update_*` instead.
?> Because the `led_set_*` functions return `void` instead of `bool`, they do not allow for overriding the keyboard LED control, and thus it's recommended to use `led_update_*` instead.
@ -122,7 +130,8 @@ You must return either `true` or `false` from this function, depending on whethe
This incomplete example would play a sound if Caps Lock is turned on or off. It returns `true`, because you also want the LEDs to maintain their state.