* refactor(core)!: Allow layer behaviors to "lock" layers on
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
* docs: Added documentation note on locking layers
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
---------
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
* Proporly handle multiple conditonal layers w/ the same target
`then-layer` values.
* Move handling to work callback, to avoid re-entrance for cascading
layers enabling other layers.
This is a generalization of the existing concept of tri-layer support
that's already well known. Essentially, a conditional-layer
configuration activates a particular layer (the then-layer) when one or
more other layers (the if-layers) are activated.
This is commonly used on ortho keyboards to activate a third "adjust"
layer while the primary two layers ("lower" and "raise") are active.