mirror of
https://github.com/zmkfirmware/zmk.git
synced 2026-03-22 14:05:17 -05:00
feat(keymap): Add binding get/set, layer movement
* Add keymap API for getting/setting a bindings in keymap layers. * Add layer move support via intemediary ordering array. * Add settings storage for keymap changes.
This commit is contained in:
committed by
Pete Johanson
parent
0f972f1cc3
commit
c8c19598a7
@@ -56,6 +56,12 @@ struct zmk_rpc_subsystem_handler {
|
||||
enum zmk_studio_rpc_handler_security security;
|
||||
};
|
||||
|
||||
typedef int (*zmk_rpc_subsystem_settings_reset_func)(void);
|
||||
|
||||
struct zmk_rpc_subsystem_settings_reset {
|
||||
zmk_rpc_subsystem_settings_reset_func callback;
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief Generate a "meta" subsystem response indicating an "empty" response to an RPC request.
|
||||
*/
|
||||
@@ -103,6 +109,14 @@ struct zmk_rpc_subsystem_handler {
|
||||
.security = _security, \
|
||||
};
|
||||
|
||||
#define ZMK_RPC_SUBSYSTEM_SETTINGS_RESET(prefix, _callback) \
|
||||
STRUCT_SECTION_ITERABLE(zmk_rpc_subsystem_settings_reset, _##prefix##_settings_reset) = { \
|
||||
.callback = _callback, \
|
||||
};
|
||||
|
||||
#define ZMK_RPC_SUBSYSTEM_SETTINGS_RESET_FOREACH(_var) \
|
||||
STRUCT_SECTION_FOREACH(zmk_rpc_subsystem_settings_reset, _var)
|
||||
|
||||
/**
|
||||
* @brief Create a zmk_studio_Notification struct for the given subsystem and type, including
|
||||
initialization of the inner fields.
|
||||
|
||||
Reference in New Issue
Block a user