Age | Commit message (Collapse) | Author |
|
* Closes #679
|
|
tapping_term_ms -> tapping-term-ms
quick_tap_ms -> quick-tap-ms
The old style works, although it's deprecated.
|
|
* Public type for HSB led color.
* New API for calculating "next" HSB based on current
state.
* Update behavior to convert the increment/decrement
commands to absolute command as well.
|
|
* Allow each behavior to map a relative binding, e.g. "toggle",
to an absolute one, e.g. "on", before being invoked.
|
|
|
|
* Use lesser-known DT features to skip behaviors not referenced
in the user keymap
* Update the behaviors to skip code if no nodes found.
* Remove some empty config/data structs where unused in
behaviors.
|
|
feat(combos): add layer filtering
Co-authored-by: KemoNine <mcrosson@kemonine.info>
|
|
Tap-and-hold a hold-tap to hold the tap behavior so it can repeat.
After a tap, if the same key is pressed within `quick_tap_ms`, the
tap behavior is always picked.
This is useful for things like `&ht LSHFT BACKSPACE` where holding
the backspace is required.
Implements #288.
|
|
|
|
|
|
|
|
|
|
when quick-release is enabled, the sticky key is released immediately after another key is pressed
|
|
this makes LS(LEFT_CONTROL) work as if shift and control were both
pressed explicitly. Previously, the left shift would have been released
as soon as another key was pressed. The implicit behavior is useful in
case of LS(NUMBER_1) when rolling over to other keys.
Also see #361.
|
|
|
|
|
|
|
|
closes #85
|
|
* Use a single `as_foo` generated function to conditionally
return a certain event type from a generic `zmk_event_t*`
pointer.
|
|
* Make it easier to use *just* event payloads by defining the data,
and then having event manager macros generate "wrapper structs"
* Improve is_*/cast_* APIs to hide details of full event struct.
* Create `zmk_event_t` typedef to pass to event handlers.
* Bring event names inline w/ consistent `zmk_` prefix.
|
|
* Separate header and data struct for the event.
* Remove duplicate struct in split code.
|
|
* Avoid deadlocks by using a deadicated workqueue for sending
position state notifications from peripherals.
|
|
* If various events get dropped, we can end up with duplicate
codes in our report, so tweak to ensure we look for all matches
and clear them when we have a keycode released.
|
|
|
|
* Zephyr BT stack frees TX buffers from system workqueue,
and to avoid blocking waiting to allocate, perform notify
from a dedicated queue.
|
|
* Avoid corruption by using work to process
peripheral key position events on the main
work thread, like local kscan events are.
* Fixes #221
|
|
Aligns with the HID specification.
Usage page values were sometimes declared as uint8_t and sometimes uint16_t. This commit aligns all instances with the HID specification for consistency.
PR: #521
|
|
closes #45
|
|
like glowing will use the hsv color specified
|
|
|
|
|
|
|
|
|
|
Use these instead of the magic return values 0 and 1 for
behavior_driver_api return values.
|
|
|
|
|
|
feat(behaviors): Add `&to` behavior to switch to a layer.
|
|
|
|
* Add uppermost, current layer status widget to oled
* Run clang format
* Fixup display widget source includes in CMakeLists
* Update layer widget to only be enabled on primary half of a split keyboard and shuffle some of the options specific to the widget to be enabled via the widget
* Update to latest lvgl/zmk/zephyr ; remove version text from oled per PR
* Fixup file names
* Remove last remenants of the version display text from the oled
* Fixup clang-format
Co-authored-by: KemoNine <mcrosson@kemonine.info>
|
|
Aligns with typedef _t convention.
PR: #531
|
|
Aligns with typedef _t convention.
PR: #531
|
|
Aligns with typedef _t convention.
PR: #531
|
|
Aligns with typedef _t convention.
PR: #531
|
|
* Move central/peripheral setting to Kconfig.defconfig
files to allow left/right .conf files to override
central/peripheral role for splits.
|
|
Aligns *.h and *.c to underscore naming convention.
These were kept (with warnings) for backwards compatibility with external boards/shields:
- kscan-mock.h
- matrix-transform.h
They should be removed in the future.
PR: #523
|
|
PR: #533
|
|
PR: #534
|
|
PR: #535
|
|
Aligns unpacking of usage_page with its equivalent line in keycode-state-changed.h
PR: #520
|
|
of DT_NODE_EXISTS(DT_DRV_INST(0))
|